「パスが見つかりません」とエラー表示されるが?

Question 045k 拙著「組み方講座」 Previous Next
100ページ [1-1-20図] ◆ 環境・・ Excel 2002 & Windows XP
詳細は こちら
突然の質問失礼します。
100ページまで学習をすすめ、「ムツゴロウ漁獲高の推移」をクリックしたところ、「実行時エラー 76: パスが見つかりません」とのメッセージが出てしまい、何度か見直してみたり最初からやり直しをしてみたりしたのですが解決しません。
何が原因か教えていただきたいので、おねがいします。
ちなみに下記はエラーになってしまうVBE画面のコピーです。
Option Explicit
Dim 行, ドライブ, 親フォルダー, 子フォルダー, ファイル名, 拡張子, パス

Sub 環境リストボックスでクリックされた()
    行 = Worksheets("呼出").Cells(2, 1) + 1
    管理表シートから値を取り出す
    選択されたファイルを開く
End Sub

Private Sub 管理表シートから値を取り出す()
    ドライブ = Worksheets("管理表").Cells(行, 2)
    親フォルダー = Worksheets("管理表").Cells(行, 3)
    子フォルダー = Worksheets("管理表").Cells(行, 4)
    ファイル名 = Worksheets("管理表").Cells(行, 5)
    拡張子 = Worksheets("管理表").Cells(行, 6)
End Sub

Private Sub 選択されたファイルを開く()
    ChDrive ドライブ
    パス = ドライブ & ":\" & 親フォルダー & "\" & 子フォルダー
    ChDir パス
    Workbooks.Open Filename:=ファイル名 & ".xls", ReadOnly:=True
End Sub
Answer   Copyright (C) 2004.11.25 永井善王
拙著「ExcelVBAマクロ組み方講座」をご購入いただき、まだ、それほど日にちが経っていないようですが、100ページまでは順調に来られたようで、頑張ってみえますね。
実行時エラー
VBE画面のコピーをお送りいただいたので、さっそく実行してみました。
表示されたエラーは左図のとおりで、[デバッグ]ボタンをクリックすると、下から 3行目の
ChDir パス が黄色く網掛けされました。

ChDirステートメントは、指定したドライブの現在フォルダーを変更するためのもの (詳細は28ページ参照)で、この場合は変数「パス」の指定により変更されます。

変数「パス」に値を設定するコードは、すぐ上の行にありますが、それを下記に写してみますと、

 パス = ドライブ & ":\" & 親フォルダー & ":\" & 子フォルダー となっていて、余計なコロン( : )があります。

このコードにはパスセパレータ( \ )が 2度出てきます。左の方は \ の前に : が必要ですが、右の方にはあってはいけません。 (詳細はP.096「パスとPathプロパティ」参照)
誰しも、こうした入力ミスをしてしまうと、何度か見直しても気が付きにくいですから、もし、この先の学習で同様に行き詰った場合、身近に見てもらえる人がいないようでしたら、ご遠慮なくご質問ください。 では、再開しましょう。

関連ページ 
ChDirステートメントでエラー表示されるが?
ありがとうございました
突然の質問にもかかわらず早速のご回答ありがとうございました。
さて結果ですが、確かにご指摘どうりに余計な:があり、それを削除しました所、正常に作動いたしました。今後はこのようなことが無いよう落ち着いて学習に励みたいと思います。 本当にありがとうございました。

 

Excel VBA Macro