トップページ |
EXCEL VBA |
ACCESS VBA |
VBA 開発相談 |
VBA開発室 鹿児島ワイズ は、
・VBAの操作入門
・VBAの開発代行
をご提供しています。
|
|
トップページ >> EXCEL VBA >> 018.1つ下のフォルダ内にある指定ブックを開く
|
1つ下のフォルダ内にある指定ブックを開く
|
項目014、015にて、同じフォルダ内にある指定ブックを開く方法を検討しました。
今回は その応用です。 同じフォルダ内ではなく、1つ下のフォルダ内にある指定ブックを開くことを考えます。
ここで パソコンの保存ルールを意識してみましょう。パソコンの保存ルールは、原則そのファイルを開いた場所(新規作成の場合は、ドキュメント内)が基準となります。そして、そのファイルがある場所が Excel VBA では、ThisWorkbook.Path として認識されます。具体的に考えるために次の例を考えましょう。
Win 7 のパソコンがあり、そのパソコンにユーザー "renshu" 名でログインし、デスクトップにある "18.xls" ファイルを開いている。そして、そのデスクトップに "opn" フォルダがあり、その中に "18tuika.xls" ファイルが存在していると仮定します。
すると、 ThisWorkbook.Path = C\://user/renshu/desktop
となります。(そういうルールなので、深く考えないでいいです。)この時に大切なことが "/" は何を意味しているのかを把握すること と、desktop の後ろには "/" が無い ということです。
お分かりかと思いますが、 "/" はフォルダを意味します。user というフォルダがあり、その中に renshu というフォルダがあり、その中に desktop というフォルダがある という意味です。しかし、きちんと覚えていないといけないことは、最後のフォルダである desktop には 後ろに "/" が付かないのです。そういうルールなのです。
今回の目的は、1つ下のフォルダ内にある指定ブックを開く こと、言い換えると、同じフォルダにある opn フォルダ内にある 18tuika.xls ブックを開くこと です。
ですので、実際に開きたいファイルは C\://user/renshu/desktop/opn/18tuika.xls となります。
従って、今現在分かっていない赤箇所は C\://user/renshu/desktop/opn/18tuika.xls 別途提示しなければなりません。文字列をつなぐ方法は 以前紹介したように & でつなぐことができます。よって 1つ下のフォルダ内にある指定ファイルを開くするには、
Workbooks.Open Filename:=ThisWorkbook.Path & "/opn/18tuika.xls"
と書けばOKです。 /opn の 頭の "/" を書き忘れることが多いので、気をつけて下さい。
|
|
トップページ >> EXCEL VBA >> 次のページへ
|
|