2017-02-20 30 views
0

根据以下代码,我希望此代码检测单词“Oranges”,“Oranges1”,“Oranges 2”等,但我现在可以做的只是检测橘子。当我想在不同的Excel表格中检测Oranges1 & Oranges2这个词时,对我来说变得更加复杂。我曾试图改变使用vba在不同Excel表格中检测包含不同值的单元格excel

如果单元格(1,1).value的=“橙子”再到 如果单元格(1,1).value的=“橙子& Oranges1”然后

但这并不工作。一旦此代码可以检测到单元名称,我想执行计算。

在这种情况下,我有任何解决方案吗?

我的代码

Private Sub CommandButton1_Click() 

' Get the last row with text 
Dim LastRow As Long 
LastRow = Cells(Rows.Count, 1).End(xlUp).Row 

Dim i As Integer, Total As Double 
Total = 0 

' Use LastRow in loop 
For i = 1 To LastRow 

    ' Check if cell has text "Oranges" 
    If Cells(i, 1).Value = "Oranges " Then 
     Dim Val1 As Double 
     Dim Val2 As Double 

     Val1 = Worksheets("Sheet1").Cells(i, 2).Value 
     Val2 = Worksheets("Sheet2").Cells(i, 2).Value 

    ' Add value in column B to total 
     Total = Val1 + Val2 
     Dim sum As Double 
     sum = Val1 + Val2 
     Worksheets("Interface").Cells(i, 3) = "Total" 
     Worksheets("Interface").Cells(i, 4).Value = sum  
    End If   
    Exit For 
Next i 
+0

你可以检查,如果单元格的值包含文本橙子: '如果InStr函数@farahxx你读过(1,细胞(1,1).value的, “橙子”,vbTextCompare)> 0 Then' – gizlmo

回答

0

您可以Select Case取代你If S,它可以让你在将来添加更多的场景。

Select Case Cells(i, 1).Value 
    Case "Oranges", "Oranges1", "Oranges 2" 
     ' the rest of your coding goes here 

End Select 
+0

我回答和上面的代码?任何feddback? –

相关问题