2016-07-21 2 views
0

私はユーザーが別の時間に見ることができる情報を持っているExcelシートを持っています。私が持っている問題は、サーバやグリッドを使いたい場合に、ユーザがセルc7を選択するようにしたいということです。答えに応じて、セル(c9)に対して異なる応答を得ます。コードでは、ユーザーがグリッドまたはサーバーを選択するかどうかわからないという問題があります。だから私は自分のコードに追加したいと思います。ここに私のコードです。私はVBAコードを使用して別の値を手配するのに助けが必要です

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 

enter image description here

答えて

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 
関連する問題