[コンパイルエラー: 構文エラー]が発生するが?

Question 035k 拙著「組み方講座」 Previous Next
349ページ [4-5-6図] ◆ 環境・・ Excel 2000 & Windows 2000
詳細は こちら
いつもお世話になります。 先週、Google検索にて、この本の存在を知り購入しました。
うち、P348 「下端の行番号を取得するコード」 についてお訊ねします。
【4-5-6図】修正後の状態において、
  下端行 = Range("A65536").End(xlUp).Row
    セル範囲 = "A2:E" & 下端行
    Range(セル範囲).Select
と記載がありますが、これを以下のように修正しました。
    下端行 = Range("A65536").End(xlUp).Row
    セル範囲 = "C" & 下端行 : "D" & 下端行
    Range(セル範囲).Select
このマクロを実行してみたところ、「コンパイルエラー:構文エラー」となりました。
これはなぜですか? また、どのようにしたら正常に作動するでしょうか?
お忙しいところをすみませんけれど、実際のところについて教えてください。 ご回答お待ちしています。
Answer   Copyright (C) 2004.4.26 永井善王
拙著「Excel VBA マクロ組み方講座」本をご購入いただき、ありがとうございます。
ご質問の内容がはっきりしていますので、早速、回答に入ります。

修正したマクロを実行したら、右図のようにエラーが表示されたのですね。
見落とされたかも知れませんが、その前、つまり、VBE画面でマクロを修正しているときに、下図のエラーが表示されませんでしたか?

こちらのコンパイルエラーは、入力または修正されたコードに何らかの誤り等がある場合に表示され、かつ、不具合のある行が図のように赤字や反転で表示されます。表示されるタイミングは、その行を入力し終わって [Enter]キーを押したときです。
こうなった場合は、直ちにコードを修正する必要があり、修正しないまま無理に実行すると、「構文エラー」が表示されることになります。
あなたの場合は、「&」が 1つもれていることと、「:」がずれていますので、下記のとおり再修正して再実行すれば、正常に動作するはずです。お試しください。

    セル範囲 = "C" & 下端行 & ":D" & 下端行
《参考情報》 文字列(連結)演算子 … 本の 229~230ページ

 

Excel VBA Macro