• ベストアンサー

エクセルVBAでセルの選択する方法

B3セルからI200セルまで全部データが入力されている データを C3キー昇順と、F3キー昇順並べ替えしたいと考えています。 まず B3を選択して 次に I列の最終データを xldownを使用? 選択し 並べ替えすればいいのでは? と考えましたが、 その選択方法が分かりません。 よろしくお願いします。 直接I200を指定しないのは、 データによって 200行だったり 220行だったりすることがあるためです。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1734/2604)
回答No.3

> その選択方法が分かりません。 I列には式ではなく値が入っているとして Range(Cells(3, "B"), Cells(Rows.Count, "I").End(xlUp)).Select Range(Cells(3, "B"), Cells(3, "I").End(xlDown)).Select どちらかで試してみてください。

nenosuke
質問者

お礼

回答いただきましてありがとうございます。 試してみたところうまくいきました。

その他の回答 (3)

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

データの最終行をVBAで求めたいだけの質問か? >C3キー昇順と、F3キー昇順並べ替えしたいと考えています。 C列データを第1ソートキー、F列データを第21ソートキーとしてシートしたいのか。 質問の表現があいまい。 ーー またマクロの記録を取って勉強したらどうか。 CTFL+Aの操作に当る CurrentRegionを活用したらよいのでは。 ーー 第1行目は見出し文字があるとして、それをソート範囲に加えないために一工夫。 Sub test01() Range("b1").CurrentRegion.Select Selection.Offset(1, 0).Select Dim RowMax As Long RowMax = Cells(Rows.Count, 1).End(xlUp).Row Selection.Resize(RowMax - 1, 6).Select MsgBox "A" Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Key2:=Range("F1"), order2:=xlAscending End Sub CurrentRegionが有効に使えるためには、データのセルの在り方によるが、勉強のこと。

nenosuke
質問者

お礼

質問があいまいとなり失礼しました。 マクロの記録で勉強してみます。 ありがとうございます

  • cicibo
  • ベストアンサー率34% (190/558)
回答No.2

No1です。 「VBAで」←この部分を見逃していました。 破棄してください。

nenosuke
質問者

お礼

回答いただきましてありがとうございました。 VBAでマクロを作成しているところでした。

  • cicibo
  • ベストアンサー率34% (190/558)
回答No.1

CNTL + A ではだめですか?

関連するQ&A

専門家に質問してみよう