アップデート:
よし、次のコードを使用して、必要なことを実行します。つまり、値が 0 かどうかを確認し、0 の場合は行全体を削除します。ただし、一度に1つのワークブック内の複数のワークシートに対してこれを実行したいと考えています。次のコードが行っていることは、VBA スクリプトを使用して Excel を開いたときにデフォルトでアクティブになっている現在のスプレッドシートからのみゼロを削除することです。ここで作業ゼロ除去コード:
Dim wsDCCTabA As Excel.Worksheet
Dim wsTempGtoS As Excel.Worksheet
Set wsDCCTabA = wbDCC.Worksheets("Login")
Set wsTempGtoS = wbCalc.Worksheets("All_TemporaryDifferences")
Dim LastRow As Long, n As Long
LastRow = wsTempGtoS.Range("E65536").End(xlUp).Row
For n = LastRow To 1 Step -1
If Cells(n, 5).Value = 0 Then
Cells(n, 5).EntireRow.Delete
End If
Next
私は何を間違っていますか?同じワークブック内の別のワークシートに対して同じことをしても、何もしません。次のコードを使用して、別のワークシートからゼロを削除しています。
Set wsPermGtoS = wbCalc.Worksheets("All_PermanentDifferences")
'delete rows with 0 description
Dim LastRow As Long, n As Long
LastRow = wsPermGtoS.Range("E65536").End(xlUp).Row
For n = LastRow To 1 Step -1
If Cells(n, 5).Value = 0 Then
Cells(n, 5).EntireRow.Delete
End If
Next
何かご意見は?または同じことを行う別の方法は?
元の質問:
特定の列にゼロがあるすべての行を削除したい。次のコードを使用していますが、何も起こらないようです。
CurrRow = (Range("E65536").End(xlUp).Row)
For Count = StartRow To CurrRow
If wsDCCTabA.Range("E" & Count).Value = "0" Then
wsDCCTabA.Rows(Count).Delete
End If
Next
StartRow
開始行
CurrRow
の値を含む 最後に使用された行の行の値を含む