このコードに関連して、不要なセルを消すコードになります。

この印刷範囲の右側と下側が不要になる場合が多いと思います。
この場合はH32以降のセルを消します。
Sub ClearOutsideRangeByParameters(sheetName As String, targetRow As Long, targetColumn As Long)
Dim ws As Worksheet
On Error Resume Next
Set ws = ThisWorkbook.Sheets(sheetName)
On Error GoTo 0
If ws Is Nothing Then
MsgBox "指定されたシートが見つかりません: " & sheetName, vbExclamation
Exit Sub
End If
Application.ScreenUpdating = False
' ターゲット列以降の列を削除
If targetColumn < ws.Columns.Count Then
ws.Range(ws.Cells(1, targetColumn + 1), ws.Cells(ws.Rows.Count, ws.Columns.Count)).ClearContents
End If
' ターゲット行以降の行を削除
If targetRow < ws.Rows.Count Then
ws.Range(ws.Cells(targetRow + 1, 1), ws.Cells(ws.Rows.Count, ws.Columns.Count)).ClearContents
End If
Application.ScreenUpdating = True
MsgBox "指定範囲外の内容をクリアしました。"
End Sub
Sub RunClearOutsideRange()
ClearOutsideRangeByParameters "Sheet1", 32, 8
End Sub
ws.Columns.Countではエクセルの列の右端、ws.Columns.Rowsでは行の下端を取得しています。
その列、行以降をすべて消す。という処理をしています。











コメントを残す