-ChatGPT-
-ChatGPT-4へ質問
「VBAで1行目から一番最初にデータがある行まで削除してください。」
「1行目からデータがある場合の制御も加えて」
ChatGPT4の回答
Sub DeleteRowsAboveFirstData() Dim ws As Worksheet Dim firstDataRow As Long ' 対象のワークシートを設定 Set ws = ThisWorkbook.Worksheets("Sheet1") ' シート名を必要に応じて変更 ' 最初のデータがある行を検索 firstDataRow = ws.Cells.Find(What:="*", _ After:=ws.Cells(1, 1), _ LookIn:=xlFormulas, _ LookAt:=xlPart, _ SearchOrder:=xlByRows, _ SearchDirection:=xlNext, _ MatchCase:=False).Row ' 最初のデータが 1 行目以降の場合のみ削除処理を実行 If firstDataRow > 1 Then ' 1行目から最初のデータがある行の直前までの行を削除 ws.Rows("1:" & firstDataRow - 1).Delete End If End Sub