• 締切済み

rangeに変数代入でエラー

VBA初心者です。お願いします。 下記のように最終セルのアドレスを取得し、セル範囲を選択したいのですがたのですが、エラーが出てしまいます。どなたか助けてください。 ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Activate l = ActiveCell.Column 'アクティブセルの列番号 d = ActiveCell.Row 'アクティブセルの行番号 ad = ActiveCell.Address 'アクティブセルのアドレス Range("A1:ad").Select

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

Cells.SpecialCells(xlCellTypeLastCell)を使うことに対し、理解して使ってますか。色々な場合を考えると危険があるように推測する。 http://www.keep-on.com/excelyou/2001lng4/200101/01010294.txt 参照 ーー CTRL+SHIFT+*の操作に当たる Selection.CurrentRegion.Select などを考えては。 ただSelectionするセルを適当に決めないとダメだが。 確実にデータがある、データの塊の中の1セルなどを決められる ことが必要で、(例えば項目見出しの入ったセル)それをSelectする必要があるが。 -- 初心者の場合 A手法を習得ーー>こりゃいいわ、とBの場合に飛びついてAの手法を応用 するのだが Bの場合の最適な手法Cは別に無いか?を考えるのも進歩に必要。 Aの手法を使える、前提になっている事項に気を配ることも 大切。

jobibaraki
質問者

お礼

時間がなかったので、本日試すことが出来ませんでしたが、近日中に確認してみます。 お礼を先に書きたかったので先に記載させていただきます。ありがとうございました。

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

変数を""の中に記述してもその変数が保持する値にはなりません Range("A1:" & ad ).Select といった具合に 変数を""の外に追い出して &演算子で連結しましょう

jobibaraki
質問者

お礼

ありがとうございます。 助かりました。

関連するQ&A