質問: ファイル名に特定の文字列を含むファイルを開きたい セルに「abc」という文字列があります。 このセルをダブルクリックすると、特定のフォルダ内にある abcを含むファイル(たとえば090507 abc)を開く というようなことをしたいのですが、どのようにしたらよいでしょうか。 対象セルはa列です。 たとえばa2に「abc」とあれば、a2をダブルクリックすると 特定フォルダ内のabcをファイル名に含むファイルを開く a3に「xyz」とあれば、a3をダブルクリックすると 特定フォルダ内のxyzをファイル名に含むファイルを開く といった具合です。 文字列の指定はダブルクリック以外の方法でも構いません。 知識がないものでどのようにしたらよいかわかりません。 どなたかお詳しい方、どうぞよろしくお願い致します。 (ごく簡単なマクロの知識はあります)
回答: 「簡単なマクロの知識」と、マクロと言っているレベルの人には本課題はすぐは、無理です。回答者にコードを書いて呉れ、になり、丸投げになり、質問コーナー規約違反。 本件が自然に出来るようになるには、数年のvbaの経験・勉強が必要でしょう。 -- フォルダやファイルを扱うには vbscript または dir関数 をgoogleででも照会して、勉強のこと。 http://homepage2.nifty.com/kasayan/vba/dir.htmなどから始まって多数 ーー vbscriptでの一例 sub test03() set objfs = createobject("scripting.filesystemobject") set objfolder = objfs.getfolder("c:\documents and settings\xxxx\my documents\") for each objfile in objfolder.files if objfile.name like "○*" then msgbox objfile.name end if next end sub ーー "○*"とは、 私の場合mydocumentsフォルダにファイル名が「○何々」が数個あって それらが次々表示されました。 ーー 上記のように次々より分けていかないと、ヅバリ該当数個は出せないでしょう。 objfile.name like "○*" then のlikeの使い方など経験ありますか。like演算子。 ーー http://officetanaka.net/excel/vba/file/file02.htm のようなファイル名指定の対話型ダイアロウグで課題が解決しないかも考えてください。 === >ダブルクリックしたら・・ これもイベントというvbaの中上級の考えで、経験ありますか。 日ごろ使う、ウインドウズのソフトが、いとも簡単にクリックなどの指定を許しているから、そう思うのだと思うが、自分で作るのは難しいことなのを良く理解すること。