- ベストアンサー
エクセルVBAでセルの選択する方法
B3セルからI200セルまで全部データが入力されている データを C3キー昇順と、F3キー昇順並べ替えしたいと考えています。 まず B3を選択して 次に I列の最終データを xldownを使用? 選択し 並べ替えすればいいのでは? と考えましたが、 その選択方法が分かりません。 よろしくお願いします。 直接I200を指定しないのは、 データによって 200行だったり 220行だったりすることがあるためです。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> その選択方法が分かりません。 I列には式ではなく値が入っているとして Range(Cells(3, "B"), Cells(Rows.Count, "I").End(xlUp)).Select Range(Cells(3, "B"), Cells(3, "I").End(xlDown)).Select どちらかで試してみてください。
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
データの最終行を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が有効に使えるためには、データのセルの在り方によるが、勉強のこと。
お礼
質問があいまいとなり失礼しました。 マクロの記録で勉強してみます。 ありがとうございます
- cicibo
- ベストアンサー率34% (190/558)
No1です。 「VBAで」←この部分を見逃していました。 破棄してください。
お礼
回答いただきましてありがとうございました。 VBAでマクロを作成しているところでした。
- cicibo
- ベストアンサー率34% (190/558)
CNTL + A ではだめですか?
お礼
回答いただきましてありがとうございます。 試してみたところうまくいきました。