所以我有一张excel表,其中包含用户可以在不同时间查看的信息。我遇到的问题是,如果用户想要使用服务器或网格,我希望用户选择单元格c7,根据他们的回答,他们将在单元格上获得不同的响应(c9)。在代码中,我遇到的问题是它不知道用户是选择网格还是服务器。所以我想将其添加到我的代码中。这是我的代码。
Sub findData()
Dim workflow As String
Dim server As String
Dim finalrow As Integer
Dim i As Integer
workflow = Sheets("Sheet1").Range("c5").Value
server = Sheets("sheet1").Range("c9").Value
Grid = Sheets("sheet1").Range("c9").Value
finalrow = Sheets("Sheet3").Range("c100").End(xlUp).Row
For i = 5 To finalrow
If Cells(i, 3) = workflow Then
If Cells(i, 4) = server Then
If Cells(i, 5) = Grid Then
Range(Cells(i, 2), Cells(i, 12)).Copy
Range("j42").End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulasAndNumberFormats
End If
End If
End If
Next i
End Sub
答案 0 :(得分:0)
为什么不采用这种方式?
Sub findData()
Dim workflow As String
Dim finalrow As Integer
Dim i As Integer
workflow = Sheets("Sheet1").Range("c5").Value
finalrow = Sheets("Sheet3").Range("c100").End(xlUp).Row
For i = 5 To finalrow
If Cells(i, 3) = workflow Then ' 1. If Cells(i, 3) = workflow
If Cells(i, 4) = "Server" Then ' 2. If Cells(i, 4) = "Server"
Range(Cells(i, 2), Cells(i, 12)).Copy
Range("j42").End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulasAndNumberFormats
ElseIf Cells(i, 4) = "Grid" Then ' 2. If Cells(i, 4) = "Server"
Else ' 2. If Cells(i, 4) = "Server"
'not handled
End If ' 2. If Cells(i, 4) = "Server"
End If ' 1. If Cells(i, 3) = workflow
Next i
End Sub