質問: excel vbaで同じフォルダ内のファイルを開くには? windows2000、excel2000を使用しています。 「経理」というフォルダに「見積」「請求」の2つのexcelファイルがあります。 「見積」から「請求」を開くマクロを作りたいのですが、どうすればいいでしょうか? 「経理」フォルダは場所が変わることがあるので、パスをどうすれば良いかがわからず苦しんでいます。 vbaはまったくの素人で、本を見ながら挑戦しているのですがうまくできないのです。 どうかよろしくお願いします。
回答: 見積.xls が保存されている。 請求.xls は見積.xls と同じフォルダ内にある。 見積.xls にマクロを作成しそこから 請求.xls を開く。 以上の条件なら、パスは thisworkbook.path で取れます。 例は 請求.xls を操作しやすいように、open時にworkbook型変数に代入しています。 sub test() dim wb as workbook, fname as string fname = thisworkbook.path & "\請求.xls" on error goto er: set wb = workbooks.open(fname) msgbox wb.fullname & "を開きました。" & vbcrlf _ & "アクティブシート名は、" & wb.activesheet.name & " です。" & vbcrlf _ & "a1の値は「" & wb.activesheet.range("a1").value & "」です。" & vbcrlf _ & "では" & wb.name & "を閉じます。" wb.close exit sub er: msgbox "何らかのエラーが起こりました。", vbcritical, "エラー" end sub