プロが教えるわが家の防犯対策術!

以下のようなExcelデータがあります。

AAA 3
BBB 1
CCC 0
※AAAは本来は日本語の文字データで、連続性はありません。


B列の値が1以上のときにWordの任意のテキストボックスへその値を入力したいです。
AAAはテキストボックス1へ、BBBはテキストボックス2へというように入力していきたいです。
また、上記ではCCCまでですが下に100件ほどデータがあります。

どのようにマクロをかいてよいのかわからず、教えてください。
よろしくお願いいたします。

A 回答 (1件)

ワードはエクセルと同じパスに保存されている


ワードを開いたときターゲットのテキストボックスがアクティブドキュメントにある時 B列対象のセルが1以上の時
1行目がテキストボックス 1 へ A列 Textを入れる
数値などエラー処理、ドキュメントページ、ファイル名、
各条件は適時の変更、追加してください
 
Sub test()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim wWD As Object
Dim wDoc As Object
Set wWD = CreateObject("word.application")
wWD.Visible = True
Set wDoc = wWD.documents.Open(ThisWorkbook.Path & "\文書1.docx")
Dim i As Long
For i = 1 To ws.Cells(Rows.Count, 2).End(xlUp).Row
If ws.Cells(i, 2).Value >= 1 Then
wDoc.Shapes("テキスト ボックス " & i).TextFrame.TextRange.Text = ws.Cells(i, 1).Text
End If
Next
End Sub
    • good
    • 0
この回答へのお礼

助かりました

Qchan1962さん
教えていただきありがとうございます!
具体的なコードや説明までありがとうございます!

できました。
調べながらやっていましたが、上手く動かず困っていたので本当に助かりました!

お礼日時:2024/03/22 17:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A