wordのvbaに関する質問です。極めて初歩的な質問とは思いますが、仕事の都合上じっくり勉強をしている時間がないのでご容赦ください。
「C:\test」ディレクトリに作ったwordファイルに、下のような表Aを入れます。表Aで「|」マークはwordの縦罫線です。また「aaaa,bbb,ccccc」というのは、完全に出鱈目な名前で、ただの例です。
番号 | ファイル名
1 | aaaa
2 | bbb
3 | ccccc
ここで、「C:\test\sub」フォルダに「sub_aaaa.pdf,sub_bbb.pdf,sub_ccccc.pdf」という、表A中のファイル名に「sub_」をつけた名前のPDFがあります。表A中の文字列「aaaa」を「ctrl+クリック」すれば「sub_aaaa.pdf」が開けるように、文字列にハイパーリンクを貼ります。同様に、「bbb」「ccccc」の文字列にも、文字列+subの名前のPDFが開けるようにハイパーリンクを貼っていきます。この手順が一発で出来るように、マクロ化するということはできるでしょうか。ちなみに、表A中の文字列「aaaa」が「abc」に変更されるなどはありえます。そのときはPDFファイル名も、それにしたがって一致するよう変更します。
No.1ベストアンサー
- 回答日時:
>wordのvbaに関する質問です。
極めて初歩的な質問とは思いますが・・ワードのVBAは、あまり出ない質問の分野で、回答も余り出ない恐れはある。
私も勉強が十分ではないので、自信がないが、
マクロの記録をとって勉強してはどうでしょう。
質問の説明が抽象的でよく読めないが、
ワードの表は1つのようだ。列も1つのようだ。下記では2列X3行。
・各セルを捉える、
・そのセルの値を採る
のは、下記で出来るでしょう。
2列・3行の例。
エクセルのCellsと違いCellに注意。Cellに続けてRangeが要るなど。
Sub test14()
For i = 1 To 3
For j = 1 To 2
ActiveDocument.Tables(1).Cell(i, j).Range.Select
MsgBox ActiveDocument.Tables(1).Cell(i, j).Range.Text
Next j
Next i
End Sub
ーーー
ハイパーリンク設定だが、ワードの文書のメニューで
挿入ーハイパーリンクの操作をしてマクロの記録を採る。
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _
"C:\Documents and Settings\XXXX\My Documents\01化c.xls", SubAddress:="", _
ScreenTip:="", TextToDisplay:="A"
上記はエクセルブックにハイパーリンクを張った例だが、PDFファイルに対して張るようファイル名を変える。TextToDisplay:="A"の”A"は前記の表のセルのテキストを使う。
MsgBox ActiveDocument.Tables(1).Cell(i, j).Range.Text
をA=ActiveDocument.Tables(1).Cell(i, j).Range.Text にして
TextToDisplay:=A にする。
A=ActiveDocument.Tables(1).Cell(i, j).Range.Text の次の行に上記の・・Hyperlinks.Add・・ のコードを入れて見ては。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルVBA、ファイル名をセルの値で保存の方法を教えてください。 おそれいります。こちらで数々のエ 6 2023/06/30 22:17
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/07/01 12:54
- Excel(エクセル) 【VBA】PDF出力に任意のファイル名前を付ける方法 3 2023/07/21 10:55
- Excel(エクセル) PDFファイルに日付を名前にして保存したい。 エクセル2019でワークシートに請求書のフォームを作り 2 2023/05/27 11:13
- Excel(エクセル) エクセルVBA、間違っているコード内容を正して頂けませんか? エクセルワークシートに納品書を作ったの 2 2023/08/02 21:13
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/26 17:13
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- Visual Basic(VBA) ファイル名の右側を変更したい ファイル名:「1001日別売上」の左側へ「2022」を追加し、「202 6 2022/10/14 10:03
- Excel(エクセル) エクセル2019でPDFファイル名に枝番号をつけたい。 アクティブワークシートを印刷した後の処理とし 4 2023/06/06 21:00
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel2007で、太字にした行のみ...
-
Excelで連続印刷をするマクロ
-
条件に応じて特定の行を非表示...
-
「マクロ」の足し算の式を教え...
-
Excel(VBA)データ入力に応じて...
-
エクセルで全ての数字間にカン...
-
区切り文字以降を16進数を10進...
-
Excelでセル内の数式は残し値だ...
-
エクセル マクロ オートシェ...
-
エクセル 列データは買えずに...
-
Excel にて非表示行を探すワー...
-
エクセル VBA 小数点を含む数字...
-
エクセルで連番をマクロで
-
エクセル2003でマクロをおこな...
-
エクセルで一行おきに空白行を...
-
任意の1行を選択していないと...
-
エクセルで色のついたセルを数...
-
yyyy/mm/ddの日付に一括変換す...
-
オートフィルマクロで作り、パ...
-
エクセルで指定セル範囲内の画...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
条件に応じて特定の行を非表示...
-
Excelでセル内の数式は残し値だ...
-
Excel2007で、太字にした行のみ...
-
Excelで連続印刷をするマクロ
-
「マクロ」の足し算の式を教え...
-
エクセル VBA 小数点を含む数字...
-
エクセルで全ての数字間にカン...
-
Excel(VBA)データ入力に応じて...
-
Excel にて非表示行を探すワー...
-
値貼り付けをしても書式も貼り...
-
エクセルで、行ごとの並び替え...
-
Excel2007 セルを右方向に削除...
-
wordのvbaでハイパーリンク設定...
-
VBA コピーを有効行までループ...
-
並べ替えのマクロで対象行の範...
-
Excelで周期的に列を削除する方法
-
100行のセルの高さを一括で調整...
-
yyyy/mm/ddの日付に一括変換す...
-
エクセルで連番をマクロで
-
エクセル2003でマクロをおこな...
おすすめ情報