我的单元格范围很小,C6:C10。我正在尝试使用VBA代码将if语句应用于此单元格区域。当前,我的代码获取第一个单元格(C6)的if语句的输出,并为单元格C7:C10复制该值。 if语句正确,我只是不确定如何将其应用于列中的一系列单元格。
Sub Cleanup()
Dim Segment As String
Dim i As Integer
Segment = ActiveCell(6, 3).Value
For i = 6 To 10
If Right(Left(Segment, 6), 1) = "/" Then
ActiveCell(i, 3).Value = Left(Segment, 5)
Else
ActiveCell(i, 3).Value = Left(Segment, 6)
End If
Next i
End Sub
最佳答案
如果使用Cells而不是ActiveCell,那应该没问题,除非您必须将循环从7更改为10,否则它将覆盖原始单元格以及C7:C10。
Sub Cleanup()
Dim Segment As String
Dim i As Integer
Segment = Cells(6, 3).Value
For i = 7 To 10
If Right(Left(Segment, 6), 1) = "/" Then
Cells(i, 3).Value = Left(Segment, 5)
Else
Cells(i, 3).Value = Left(Segment, 6)
End If
Next i
End Sub
关于excel - 使用VBA将if语句应用于单元格范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37142200/