- ベストアンサー
エクセルのVBAについて
エクセルのVBAである行の最終セルを調べるのと、列を一列消去するような関数はあるのでしょうか?本を読んでものっていませんでした。わかる方よろしくおねがいします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
shishishishiです、こんばんは。 先ほどの質問の続きですね。 先ほどと列と行を入れ替えるとこんな具合になります。 Sub TEST() x = Cells(1, Columns.Count).End(xlUp).End(xlToLeft).Column MsgBox x For n = x To 1 Step -1 If Cells(1, n).Value = Replace(Cells(1, n).Value, "F", "") _ And Cells(1, n).Value = Replace(Cells(1, n).Value, "f", "") _ And Cells(1, n).Value = Replace(Cells(1, n).Value, "G", "") _ And Cells(1, n).Value = Replace(Cells(1, n).Value, "g", "") Then Columns(n).Delete Next End Sub
その他の回答 (3)
- error123
- ベストアンサー率21% (54/247)
熱心ですね。ごくろうさま。 これでいかがですか? Sub TEST05() x = Cells(1, ActiveSheet.Columns.Count).End(xlToLeft).Columns MsgBox "最終列は" & x & "列目です。削除します。" Columns(x).Delete End Sub もし、1行目でないのであれば、x = Cells(1, の数字を変えてください。
- taocat
- ベストアンサー率61% (191/310)
Sub Test() Dim LastCell As Range Dim R As Long Dim C As Integer '3行目の最終セル(最終列のセル) R = 3 Set LastCell = Range("IV" & R).End(xlToLeft) MsgBox LastCell.Address '8列目の削除 C = 8 Cells(1, C).EntireColumn.Delete End Sub 以上。
- TT_TT
- ベストアンサー率17% (16/90)
下記のようなので出来ませんか? '行の最終セルに移動 election.End(xlDown).Select 'メッセージボックスで最終行番号表示 msgbox Selection.Row 'A列選択 Columns("A:A").Select '選択列の削除 Selection.Delete Shift:=xlToLeft
お礼
ありがとうございます。作ろうとしていたプログラムがほぼ出来上がりました。ありがとうございました。