アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBAからファイルをセル入力から開く方法

だれかご教授頂けませんでしょうか?VBAからエクセルファイルを開こうとしています。
そこでシート1のA1セルにファイル名を記述してあり、そのファイル名からファイルを開く事は出来ますでしょうか?
何か良い方法がありましたら教えて頂きたいのですが。

A 回答 (2件)

下記で試してください。


パス名の最後には\を付けるようにしてください。

Workbooks.Open "D:\ABC\" & Sheets("シート1").Range("A1").Value


ワークシートのイベントを使う方法も考えられると思います。
BeforeDoubleClickイベント辺りを使って
ファイル名セルをダブルクリックすれば

Excel(エクセル) VBA入門:ワークシートのイベント
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/v …

この回答への補足

xls88様
有難うございます。教えて頂いたやり方で試行錯誤したのですが、うまくいきません。
メッセージボックスにファイル名入力してから開くようにしようと今度は、考えております。

補足日時:2010/09/12 11:08
    • good
    • 0
この回答へのお礼

xls88様

せっかく教えて頂いたのですが、私の力量で解決までいきませんでした。一度、質問を閉じさせて頂きます。

お礼日時:2010/09/12 12:44

もしA1セルをクリックして 指定のファイルを開くだけなら


Hyperlink関数があります。詳しくはHelpで
例えば B1セルに =Hyperlink("ファイルへのパス"&A1,A1)
と入れておきますと、次からはB1セルをクリックするとA1で指定したファイルが起動します。
VBAでなければならない、つまり ファイルを開いた後に別に実行するコードがあるのであれば
No1の方の回答の通り
Workbooks.Open "ファイルへのパス" & Sheets("シート1").Range("A1").Value
で開くことが出来ます。
もし、開きたいファイルとVBA記述しているファイルが同じフォルダであるのならば
Workbooks.Open Thisworkbook.Path & Sheets("シート1").Range("A1").Value
と ファイルへのパスを Thisworkbook.Path を記述することも出来ます。

この回答への補足

hallo-2007様
有難うございます。ファイルを開いた後に別に実行するコードがあるのでどうしてもVBAで実行したいと思っています。しかし、教えて頂いた方法でうまくファイルを開く事ができません。バックスラッシュの表示もうまくいかず¥になってしまいます。調べても表示方法が分からないので、メッセージボックスで表示しようかいろいろ悩んでおります。

補足日時:2010/09/12 11:59
    • good
    • 1
この回答へのお礼

hallo-2007様
有難うございます。メッセージボックスじゃなくインプットボックスでした。
また、改めて質問させて頂きます。

お礼日時:2010/09/12 12:36

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

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


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