ChDriveの引数を変数で指定するとエラーが出るが?

Question 013k 拙著「組み方講座」 Previous Next
100ページ [動作確認] ◆ 環境・・ Excel 2002 & Windows XP
詳細は こちら
「ムツゴロウ漁獲高の推移」をクリックすると、マクロコードの ChDrive ドライブの箇所が黄色くなり、「プロシージャの呼び出しまたは引数が不正です」と表示されます。
ファイルを添付致します。 ご指導お願い致します。
Answer   Copyright (C) 2003.11.13 永井善王
エラーメッセージ 「Excel VBA マクロ組み方講座」での学習、着実に進んでいるようですね。
100ページでの学習 「リストボックスを動作確認する」 は、リストボックスに作成したメニューをクリックしてみて、指定されたファイルが開くかどうか動作確認します。
マクロコード

そこで上図のエラーが出て、左図のように表示されたのですね。

黄色でマークされているコード
ChDrive ドライブ は変数「ドライブ」に格納されている値で現在ドライブを変更します。(本書95ページの「用語!」参照)
値の格納は [1-1-14図] 6行目の
ドライブ = Worksheets("管理表").Cells(行, 2) で先行して行っています。
それにより、「ムツゴロウ漁獲高の推移」をクリックすると変数「行」 に '2' が格納されますから、 このコードの意味は、変数 「ドライブ」 に 「管理表」シートの B2セルの値を代入するとなります。
「管理表」シート
左図があなたが作成した 「管理表」シートです。
B2セルの値が 'c' になっていますが、よく調べてみると全角英数が入力されています。
よって解決するためには、これら B2~B8セルの値を半角英数の 'c' または 'C' に変える必要があります。 さっそく修正してお試しください。

復習
・ 変数「行」には「ムツゴロウ漁獲高の推移」をクリックすると '2' が格納される…92~94ページ
・ この '2' は「呼出」シートのリンクセル(A2)の値 '1' に 1を加えて求めたもの…94ページ[1-1-12図]
・ 英数字は半角文字で入力する … 23ページ[注意!]
  ※ 本の文字が全角英数・半角英数の区別がつきにくい場合、付属CD-ROMのサンプルブックで確認できます。

 

Excel VBA Macro