• ベストアンサー

エクセルのVBAについて

エクセルのVBAである行の最終セルを調べるのと、列を一列消去するような関数はあるのでしょうか?本を読んでものっていませんでした。わかる方よろしくおねがいします。

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

  • ベストアンサー
回答No.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

tttt12345jp
質問者

お礼

ありがとうございます。作ろうとしていたプログラムがほぼ出来上がりました。ありがとうございました。

その他の回答 (3)

  • error123
  • ベストアンサー率21% (54/247)
回答No.3

熱心ですね。ごくろうさま。 これでいかがですか? 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)
回答No.2

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)
回答No.1

下記のようなので出来ませんか? '行の最終セルに移動 election.End(xlDown).Select 'メッセージボックスで最終行番号表示 msgbox Selection.Row 'A列選択 Columns("A:A").Select '選択列の削除 Selection.Delete Shift:=xlToLeft

関連するQ&A

専門家に質問してみよう