2016-06-21 68 views
2

希望有人能幫助我解決這個問題。如何在VBA中將字符串與數字進行匹配

目的:我想匹配的信息,2個單元,其中,

小區1數據:Chicken1234 小區2數據:1234

小區2將確定有多少來自於右邊的單元格1個字符用於匹配標準。 因此,在excel上下文中,它應該是= if(cell2 =(right(cell1,len(cell2)),「True」,「False」)

請告訴我我做錯了什麼, 。

樣本數據:

肉類| Chicken1234 |回答真或假

MeatNo | 1234 |回答真或假

Sub matchingtest() 

Dim MTAC As Variant, BankAC As Variant 


[A1].Select 

MeatNo = ActiveCell.Offset(1, 1) 
No = ActiveCell.Offset(0, 1) 

Do While Not IsEmpty(ActiveCell.Offset(1, 0)) 

    If Not IsEmpty(ActiveCell) And _ 
     No = MeatNo Then _ 

      ActiveCell.Offset(0, 3).FormulaR1C1 = ("True") 
      ActiveCell.Offset(1, 0).Select 

     Else 

      ActiveCell.Offset(0, 10).FormulaR1C1 = ("False") 
      ActiveCell.Offset(1, 0).Select 

    End If 

Loop 



End Sub 

回答

0

一個基本的例子可以是這樣的(未測試):

myMeats = Array("Chicken", "Porc", "Beef") 
Function CheckMeat(compareTo as String) 
    For i = 0 To UBound(myMeats) 
    Dim TestComp As Integer 
    ' The two strings sort equally. Returns 0. 
    TestComp = StrComp(myMeats[i], compareTo, CompareMethod.Text) 
    ' -1 string1 is in string2, 0 equal, +1 string2 is in string1 
    If TestComp = -1 or TestComp = 0 or TestComp = 1 Then 
     return true 
    End If 
    End For 
End Function 

來自:

https://msdn.microsoft.com/fr-fr/library/9s233cfc(v=vs.90).aspx
http://www.fontstuff.com/vba/vbatut01.htm
http://www.mrexcel.com/forum/excel-questions/485383-define-list-values-within-visual-basic-applications-code.html

相關問題