Vba excel:循环通过跳过列的值
当循环中的一行找到某个值时,有没有办法跳过它 例如,我有一个循环,通过一列复制日期并粘贴其值,然后使用以下代码在另一个工作表中再添加一天:Vba excel:循环通过跳过列的值,vba,excel,Vba,Excel,当循环中的一行找到某个值时,有没有办法跳过它 例如,我有一个循环,通过一列复制日期并粘贴其值,然后使用以下代码在另一个工作表中再添加一天: Sub Apoios() Dim i As Long Dim j As Long Dim lastrow As Long Dim ws1 As Worksheet Dim ws2 As Worksheet Dim ws3 As Worksheet Set ws1 = Sheets("Plan3") Set ws2 = Sheets("BASE_TOTAL
Sub Apoios()
Dim i As Long
Dim j As Long
Dim lastrow As Long
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim ws3 As Worksheet
Set ws1 = Sheets("Plan3")
Set ws2 = Sheets("BASE_TOTAL")
Set ws3 = Sheets("APOIOS")
lastrow = ws2.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To lastrow
For j = 1 To 11
Select Case True
Case IsEmpty(ws2.Cells(i, j)):
ws3.Cells(i, j) = ""
Case Not IsEmpty(ws2.Cells(i, j)):
If ws1.Cells(4, 3) <= ws2.Cells(i, 8) And ws2.Cells(i, 5).Value <> "APOIO" Then
ws3.Cells(i, 1).Value = ws2.Cells(i, 1)
ws3.Cells(i, 2).Value = ws2.Cells(i, 2)
ws3.Cells(i, 3).Value = ws2.Cells(i, 3)
ws3.Cells(i, 4).Value = ws2.Cells(i, 4)
ws3.Cells(i, 5).Value = "APOIO"
ws3.Cells(i, 6).Value = "-"
ws3.Cells(i, 7).Value = DateAdd("d", 1, ws2.Cells(i, 8).Value)
ws3.Cells(i, 8).Value = "-------------"
ws3.Cells(i, 9).Value = ws2.Cells(i, 9)
ws3.Cells(i, 10).Value = ws2.Cells(i, 10)
ws3.Cells(i, 11).Value = ws2.Cells(i, 11)
End If
End Select
Next j
Next i
End Sub
有没有办法跳过上面有“TECNICO NAO ENCONTRADO”的单元格?我想你是想更改这一行 如果你有类似的,可以分为:
If IsDate(ws2.Cells(i, 8).Value) Then ws3.Cells(i, 7).Value = DateAdd("d", 1, ws2.Cells(i, 8).Value)
您可以使用“on error goto line”跳过循环,可以吗?它就像一个符咒,我总是忘记
IsDate()
,谢谢。
ws3.Cells(i, 7).Value = DateAdd("d", 1, ws2.Cells(i, 8).Value)
If IsDate(ws2.Cells(i, 8).Value) Then ws3.Cells(i, 7).Value = DateAdd("d", 1, ws2.Cells(i, 8).Value)