サンプルマクロ「見出し行以外のアクティブセル領域を選択する」でエラーが出てしまうが?
Question 009p 拙著「組み方講座・プロの定番」 Previous Next
40ページ 2章1-1 定番B3 ◆ 環境・・ Excel 2003 & Windows XP
詳細は こちら
B3のマクロを別のブックで書き入れマクロを実行しましたが、実行時エラー'1004'アプリケーション定義またはオブジェクト定義エラーがでました。
コードをそのままコピーして実行しても同じ症状です。また、Offsetの頭文字Oが小文字oになります。 解決方法をご教授ください。
Answer   Copyright (C) 2006.2.15 永井善王
「ExcelVBAマクロ組み方講座 プロの定番・裏技・合わせ技[編]」をご購読、ありがとうございます。

ご質問のマクロは下記のとおりで、これを実行すると右図のように
見出し行以外のアクティブセル領域を選択してくれます。

Private Sub B3_見出し行以外のアクティブセル領域を選択する()
    Range("A1").Select                          'リストの左上端セル(""内は例)
    Set 領域 = ActiveCell.CurrentRegion         'アクティブセル領域を取得して参照
    領域.Offset(1, 0).Resize(領域.Rows.Count - 1, _
        領域.Columns.Count).Select              '指定領域のサイズを変更して取得
End Sub
1. マクロを別ブックに書き入れて実行するとエラーになる件
ご確認いただきたい点としましては、別ブックの1行目に見出し行があることと、その下に少なくとも1行、データ行があることです。

2. Offsetの頭文字Oが小文字oになる件
付属CD-ROMのマクロをコピペした場合ではないですね。 あなたが書き入れたマクロで、こうなると言うことでしょうか。
Excel VBAでは、稀に大文字になるべきところがならない(*)という現象が出るようですので、改めて私も入力してみましたが再現できませんでした。 (*)そのために支障が出ることは無いようです。

せっかく気付かれたので原因究明なさりたいでしょうから、付属CD-ROMのマクロをコピペして、一旦、小文字の o に変更してから、
End Sub の行をクリックしてみてください。
それでも大文字にならない場合は、その別ブックをE-Mailに添付して送信してください。拝見しますので。
ありがとうございました
早速のご回答ありがとうございました。実行時エラーは解決しました。ありがとうございます。
Offsetの頭文字が小文字 o になる件ですが、最初につくったBookでこの現象が起きます。
別のBookで試したら正常に動作しました。
御指摘どおり支障はないのですが、気になりますので添付します。よろしくお願いします。
Answer   Yoshioh Nagai
確かに、Offsetの頭文字が小文字になっていますね。

コードを見た限りでは何の以上もないですが、
End Sub の次の行から61行目まで、カーソルを下げることが出来ます。 (通常は次行だけ)

何故そうなったのか私には分かりませんが、その状態を解消すれば、大文字で表示されるようになります。
マイクロソフト社なら原因が分かるかも知れませんね。何か分かったときには私にも教えてください。
お力になれずにすみません。

 

Excel VBA Macro