• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:excelからwordのファイル名を検索してリンクを貼りたいのです。)

ExcelからWordのファイル名を検索してリンクを貼りたい方法!

このQ&Aのポイント
  • ExcelからWordのファイル名を検索してリンクを貼りたい場合、関数を使うかマクロを組む必要があります。Excelファイルには数千行のデータがありますが、共通の文字列が3つだけ存在します。詳しい手順を解説します。
  • ExcelからWordのファイル名を検索してリンクを貼る方法を解説します。Excelファイルには数千行のデータがありますが、共通の文字列が3つだけ存在します。関数を使うかマクロを組む必要がありますが、初心者でも簡単にできる手順を紹介します。
  • ExcelからWordのファイル名を検索してリンクを貼る方法を詳しく解説します。Excelファイルには数千行のデータがありますが、共通の文字列が3つだけ存在します。関数を使うかマクロを組む必要がありますが、初心者でも理解しやすい手順を紹介します。

質問者が選んだベストアンサー

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.3

こんなものでいかがでしょうか。 Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean) Dim myPath As String, fileName As String '名前,住所,電話番号がB,C,D列にあり、B & C & D & ?がファイル名とする 'B列の名前の上でWクリックすると該当するファイルを開く If target.Column <> 2 Then Exit Sub If target.Value = "" Then Exit Sub myPath = "C:\Documents and Settings\??????\" fileName = target.Value & target.Offset(0, 1).Value & target.Offset(0, 2).Value MsgBox fileName fileName = Dir(myPath & fileName & "*.doc") If fileName = "" Then Exit Sub myPath = myPath & fileName With CreateObject("Shell.Application") .ShellExecute myPath End With End Sub

itakana2002
質問者

お礼

お礼が遅くなり、大変申し訳ありません。 本当にありがとうございました! 試してみます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

#1です。 そのままズバリの値で無くて結構ですので、具体的な例をお示し下さい。 >同じ行にA,B,C,D,Eがそれぞれ違う列に入っているということです。 >そして、wordのファイル名はその5つのセルの内、3つのセルが連なったファイル名なのです。 5つのセルから、任意の3つの組み合わせで形成されると言うことですか? COMBIN(5,3)=10通りの組み合わせのいずれか? それとも、A,B列は今回の課題には関係ないのでしょうか。 また、エクセルの列では無い謎のF,Gとは何なのでしょうか。

itakana2002
質問者

補足

本当に毎度毎度ありがとうございます! そして、わかりづらい説明ですみません。。。 具体的な例を出して説明しますと、 excelは表になっているのですが、 日付  名前  住所  電話番号  生年月日  血液型 100524 田中 北海道  0112356987 19800407 B 100525 佐藤 愛知県  0522136947 19820530 O ・ ・ ・ とデータが続いています。 そして、excelの各行に1つwordのファイルが対応してて、そこにリンクしたいのですが、 wordのファイル名は、上の例で示した値を用いますと、 田中北海道0112356987赤色.doc 佐藤愛知県0522136947黄色.doc のように (名前)(住所)(電話番号)(色).doc で固定です。 その他の(日付)(生年月日)(血液型)はwordファイル名には全く関係ありませんし、 wordファイル名にはexcelの表にはない(色)というものもくっついています。 これで、条件はわかりますでしょうか? 説明がわかりづらければ、何度でも説明しますので、宜しくお願いします。

全文を見る
すると、全ての回答が全文表示されます。
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.1

具体的なファイル名のイメージが湧きませんが、ご質問の額面通りなら下記で可能と思います。 値ABCDEのセルでダブルクリックすると、指定フォルダのCDE*.DOCを検索し、最初にみつかったものを開きます。該当ワードファイルは一個しか無い事が前提です。他に命名のルールがあるなら明示していただかないと、分かりません。 説明は出来かねますので、ワークシートのイベントマクロの解説はこちらをご覧下さい。 'http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_event.html Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean) Dim myPath As String, fileName As String 'A列のみを対象とすると仮定 If target.Column <> 1 Then Exit Sub If target.Value = "" Then Exit Sub myPath = "C:\Documents and Settings\??????\" fileName = Dir(myPath & Right(target.Value, 3) & "*.doc") If fileName = "" Then Exit Sub myPath = myPath & fileName With CreateObject("Shell.Application") .ShellExecute myPath End With End Sub

itakana2002
質問者

補足

早速回答ありがとうございます! 説明がわかりにくくて、すみません。 excelに入っているデータは、ABCDEと申しましたが、 A,B,C,D,Eはそれぞれ別のセルに入っています。 同じ行にA,B,C,D,Eがそれぞれ違う列に入っているということです。 そして、wordのファイル名はその5つのセルの内、3つのセルが連なったファイル名なのです。 これだと、先に回答して頂いたのと、少し変わりますよね? すみませんが、回答をお待ちしております。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのリンクのやり方。。

    エクセルで 簡単な数式を入力したり 簡単なリンクは出来るのですが 下記のやり方がわからないので 教えてください。 宜しくお願いします 1. 名前、会社名などの文字のリンクのやり方がわかりません。 2. たとえば =SUM($E$3*A3)をたてにドラッグしていけば   その列は必ずE3を参照して計算しますよね?   行を固定したい場合は どのようにすれば いいのでしょうか??   A3 B3 C3と 3という行は 変わらず列だけ変わるように   参照して 立て列にドラッグしたいのです。(リンクさせたい) わかりにくい説明かもしれませんが 宜しくお願いします      

  • エクセルでフォルダとファイルを作りたい

    お世話になります。 エクセル2007で質問です。 下記のような表をエクセルで作り、A列の名称でフォルダを作り、 そのフォルダの中にすべて同じファイル名のテキストファイルを作り、 その内容をB列の文字としたいのですが、マクロなどでの作成方法を教えてくだい。 A列 B列 a1  ああああああ a2  いいいい a5  かかかかか いままで使っていたマクロはテキストのファイル名がすべてバラバラだった ので同じフォルダ内に書き出していましたが、変更があり同じファイル名で内容が 違うデータが必要となってしまいましたので、違う名称のフォルダの中に、 同じ名称のテキストデータを格納したいと思っています。 テキストデータの名称は何でもいいです。 作成するデータの数は決まっていなく、最大で1000くらいあります。 ぜひ、ご教授お願いします。

  • エクセルリンク元文字列

    エクセルのA列にURLリンクが貼られている文字列が3000行ほどあります。そのURL(例:http://www.***.**.cc/など)の文字列をB列に入力したいのですが、リンクゲット関数か何かあるのでしょうか?またはマクロ(VBA?)とかで処理する方法はあるのでしょうか。 よろしくお願いします。

  • Wordファイルから別Wordファイルのマクロを起動したい

    Word2003でマクロを作成しました。 WordファイルAにはマクロを保存したくないので、 WordファイルBに保存しています。 このマクロをWordファイルAから起動したいのですができません。 WordファイルAを開き「マクロの実行」ダイアログボックスから WordファイルB内のマクロを選択して 「実行」ボタンを押して実行したいのですが、 一覧にマクロ名が表示されないのです。 Excelの場合は、ExcelファイルAからExcelファイルBのマクロを 呼び出すことができるのですが、 (例えばブック名!モジュール名.マクロ名) Wordではできないのでしょうか? 何か設定が必要でしょうか? ご存知の方がいらっしゃいましたら、 よろしくお願いいたします。

  • エクセルVBAでワードの文字を検索して置換えたい

    エクセル置換表を基に、開いてあるワードの文書内を検索して、該当の旧番号があれば、新番号に置換えるVBAのプログラムを 教えていただけませんか。 また、参考になる書籍等があれば教えていただけませんか。  【実施内容詳細】 エクセル置換表を基に、開いてあるワードの文書内(ヘッダー、フッター含)を検索して、該当の旧番号があれば、新番号に置換える。 使用ソフト ワード エクセル 2003 使用ファイル名  A.doc B.xls ステップ1 ワードの文書内に旧番号A1がないか検索して、A1があれば、新番号B1に置き換える。 ステップ2 ワードの文書内に旧番号A2がないか検索して、A2があれば、新番号B2に置き換える。 ステップ3 エクセルA列の最後(空欄)まで実施して終了する。 エクセル置換表      A列  B列     旧番号 新番号  行2  A1    B1  行3  A2    B2  以下同様   追記: マクロを使用したことはありませんので事前設定方法も教えていただけませんか。 

  • ワード+エクセルのマクロ

    めぐみと申します。 ワード+エクセルのマクロのことで質問させて頂きます。 少し複雑ですみません。 ワードに書いてある単語をエクセルの中に記載されてある辞書(A列の単語→B列の単語)を置換したいです。 対象ファイル: 1.ディレクトリ内にあるワードファイルすべてのワードファイル 2.エクセルファイル  A列 検索対象の単語  B列 置換対象の単語 動作: エクセルのマクロを実行すると同じ階層にあるワードを探して、A列の単語の一覧を検索してB列に置換 エクセルのマクロを実行してワードのファイルの中の単語を変換するといった複雑なマクロは可能なのでしょうか? 恐れ入りますがご存じの方がいらっしゃいましたら教えて下さい。

  • Wordで他のファイルから文字列を参照するには?

    Excelのセルの参照の様に、wordでも他のファイルから文字列を参照して表示することはできるのでしょうか? 例えば、ファイルAとファイルB(共にOffice 2003のWord)があったとして、ファイルAの2列目の「ああああ」という文字列をファイルBの3行目に表示したいのです。表示だけではなく、ファイルAの「ああああ」が「いいいい」に変更されたときはファイルBの文字列「いいいい」に変更されてほしいのです。 ハイパーリンクは別のファイルにたどれるだけで文字列は自分で入力しなければなりませんし、相互参照は同じファイル同士でなければいけので、今回やりたいことは満たされないようです。 ネットで検索したのですが、検索方法が悪いのか「できる」とも「できない」ともわからない状態です。 感触からするとWordの一般的な機能ではできないようなのですが、wordのマクロを勉強すればできるのか?はたまた技術的に無理なのか、教えてください。 使用しているwordのバージョンは2003です。よろしくお願いいたします。

  • 検索&置換関数についてご教授ください!!

    Excel2010使用です。エクセルマスターの方々下記値を返す関数をご教授ください!! (※マクロではなく関数にて処理したいです) 【データ(1)】 A列 1行目:アップル_オレンジ_バナナ_レモン 2行目:オレンジ_レモン_アップル_バナナ ・ ・ ・ というようなアンダーバー区切りの文字列セル(最大30ほど)が10,000件あります。 別データの【データ(2)】 A列(項目名)   B列(ID値) アップル        1 オレンジ        2 バナナ         15 レモン        123 ・ ・ ・ こちらは300件ほどのデータでID値は1~3ケタです。 行いたい処理は、「データ(1)の文字列内に含まれるワードがデータ(2)のA列と同じ場合 データ(2)のB列(ID値)を返して 「1_2_15_123」 「2_123_1_15」 と置換したいです。 締切り間近で困っております。どうかお助けください。   

  • VBAでエクセルからのファイル名とテキスト化を自動で実行する方法

    マクロを実行して、エクセルのセルからファイル名とテキストファイルを自動で出力したいのですが、VBA初心者なのでプログラムの書き方がわかりません。 どうかVBAのプログラムの書き方を教えて下さい。 【マクロ実行前のエクセル状態】 1.エクセルのA列にファイル名1を入力 2.エクセルのB列にファイル名2を入力 3.エクセルのC列にテキスト出力させたい文字列を入力 【期待のマクロ動作】 ファイル名1+ファイル名2のファイル名でC列の文字列をテキストファイルで出力。 《例》 A B C 1 2 あ ⇒マクロ実行⇒ファイル名『12』テキスト内容『あ』 3 4 い ⇒マクロ実行⇒ファイル名『34』テキスト内容『い』 5 6 う ⇒マクロ実行⇒ファイル名『56』テキスト内容『う』 7 8 え ⇒マクロ実行⇒ファイル名『78』テキスト内容『え』 ・ ・ ・ ・ 上記の様に、一回のマクロ実行で入力されている列のセル全て がファイル名付きのテキストファイルとして出力をさせたいです。 申し訳ありませんが、よろしくお願いいたします。

  • ワード2000のVBAについて

    ワード2000を使っています。 予め、A列に日本語、B列に英語を入力したエクセルファイルを作っておき、ワードファイルから、そのエクセルファイルを開いて、A列の1行目の文字をワード文章で検索し、もし、あれば、B列の1行目の文字に置き換えるという操作を、開いたエクセルの全ての行に対して行うというVBAを作ろうと思っています。 そこで、エクセルファイルを Dialogs(wdDialogFileOpen)で開き、 Selection.Findを使って、 Text に、エクセルファイルのA(n)の文字を代入し、 Replacement.Text に、エクセルファイルのB(n)列を代入し、 nを初期値1から最大行数迄、一つづつ上げていく というコードを組もうと思っているのですが、 エクセルファイルのA1やB1を指定して代入するということはできるのでしょうか? もし、ご存知の方がいらっしゃれば教えてください。 また、ワードのVBAの参考になるHPも、できれば教えてください。お願いします。

このQ&Aのポイント
  • LIFEBOOK U937/Rのメモリ増設とSSD換装について質問します。
  • 適合するメモリ品番や増設可能な容量、M.2 SSDの対応について教えてください。
  • 富士通FMVのLIFEBOOK U937/Rに関する質問です。
回答を見る

専門家に質問してみよう