• ベストアンサー

エクセル マクロ記述(変数を使用した行選択)

はじめまして。現在マクロで仕事に必要な操作を組んでいます。まだ勉強を始めたばかりで分からないところがあります。以下の操作をしたい場合、記述はどのようにすればよろしいでしょうか? 複数行の選択方法 ○5行目から27行を選択したい場合、以下の記述で  操作確認済みです。  Rows("5:27").Select ○しかし、実際は最後の行が決まっていないため、  最終行の数字を変数として扱いたいのです。  その最終行の数字をF1のセルに記載するようしています。  記述を以下のようにしましたがエラー表示になります。  変数名をintlineとした場合  dim intline as integer  intline=range("f1")  rows("5":intline).select 初歩的な質問かもしれませんが、ご存知の方は教えていただけますか? 宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

integer じゃなく Long の方が良いです。  dim intline as long  intline=range("f1")  rows("5:" & intline).select 同様の結果を得る方法として、こんな方法もあります。 Sub test1()  Range("A5", Range("A65536").End(xlUp)).EntireRow.Select End Sub Sub test2()  Range("A5").CurrentRegion.EntireRow.Select End Sub

koelmo
質問者

お礼

早速の回答ありがとうございました!記載したところマクロのエラーもなくなり無事作業を進めることが出来ます。本当に助かりました。 まだまだ勉強中の身ですので、また質問させていただくこともあると思いますが、今後ともよろしくお願いいたします!

その他の回答 (2)

  • taocat
  • ベストアンサー率61% (191/310)
回答No.3

こんばんは。 提示のコードを修正すると Rows("5:" & intline).select となります。 それから一般的には以下のようにして最終行を自動でもってきます。 -------------------------------------------- Dim LastRow As Long LastRow = Range("A65536").End(xlup).Row Rows("5:" & LastRow).Select --------------------------------------------- 尚、これはA列のデータの最終行を求めていますが、そこは適宜変更。 以上です。

koelmo
質問者

お礼

早速の回答ありがとうございました!皆さんのおかげで、無事作業を進めることが出来ます。一般的な方法も教えて頂きありがとうございました。意味を理解しながら、記述できるように頑張りたいと思います。 また質問させていただくこともあると思いますが、今後ともよろしくお願いいたします!

回答No.2

こんばんは。 ↓のようにしてみてください。 ----------------------------- Rows("5:" & intline).Select -----------------------------

koelmo
質問者

お礼

早速の回答ありがとうございました!まだまだ勉強中の身ですので、また質問させていただくこともあると思いますが、今後ともよろしくお願いいたします!