我想将表2中的一列复制到另一张表中 但价值取决于以下条件:
我需要在第104行之前写条件或我能做什么。请帮帮我!
SrcNodeld = Sheets("Sheet1").Columns("C").Column
Sheets("Sheet1").Activate
If SrcNodeld = 0 Then
Sheets("Sheet2").Numbers("H103").Copy
Sheets("Sheet3").Activate
Columns("D").Select
ActivateSheet.Paste
ElseIf SrcNodeld = 1 Then
Sheets("Sheet2").Numbers("H3").Copy
Sheets("Sheet3").Activate
Columns("D").Select
ActivateSheet.Paste
ElseIf SrcNodeld = 2 Then
Sheets("Sheet2").Numbers("H4").Copy
Sheets("Sheet3").Activate
Columns("D").Select
End If
是的我想使用for循环,但不知道如何。
示例数据:
答案 0 :(得分:1)
希望我理解正确:
在sheet1.C1中启动宏,直到sheet1.Cx为空。如果sheet1.Cx = 0,则将sheet2.Dx(启动D103)复制到sheet34.Hx(启动H1)
Sub copy()
Dim sheet1 As Worksheet
Dim sheet2 As Worksheet
Dim sheet34 As Worksheet
Set sheet1 = Worksheets("Sheet1")
Set sheet2 = Worksheets("Sheet2")
Set sheet34 = Worksheets("Sheet34")
i = 1
j = 103 'start sheet34 H103
While Not IsEmpty(sheet1.Cells(i, 3)) 'start C1 to empty cell
If sheet1.Cells(i, 3) = 0 Then
sheet34.Cells(i, 4) = sheet2.Cells(j, 8)
End If
i = i + 1
j = j + 1
Wend
End Sub