有朋友問,Excel工作表的A1單元格和B1單元格有兩個數(shù)字,這兩個數(shù)字有些是相同的?,F(xiàn)在我們需要找出相同的數(shù)字并將其寫入C1單元格,找出A1單元格中的數(shù)字但不在B1單元格中并將其寫入D1單元格,找出B1單元格中的數(shù)字但不在A1單元格中并將其寫入E1單元格。
如下面的工作表圖片:
我不知道給出的數(shù)字是否都是按這樣的規(guī)律,即第一個原始數(shù)據(jù)的后面幾位數(shù)與第二個原始數(shù)據(jù)的前面幾位數(shù)相同。如果是這個規(guī)律的話,則可以就這個具體的例子給出下面的代碼來實(shí)現(xiàn):
Sub SeparateNumber()
Dim strFirst As String
Dim strResult As String
Dim StartNum As Integer
Dim EndNum As String
Dim i As Integer, j As Integer
strFirst = Left(Range(”B1″), 1)
StartNum = InStr(1, Range(”A1″), strFirst)
j = 1
For i = StartNum To Len(Range(”A1″))
EndNum = Mid(Range(”A1″), i, 1)
If EndNum = Left(Range(”B1″), j) Then
j = j + 1
End If
Next i
If j > 1 Then
strResult = Mid(Range(”A1″), StartNum, i – 1)
End If
‘單元格C1中的數(shù)據(jù)
Range(”C1″).Value = strResult
‘單元格D1中的數(shù)據(jù)
Range(”D1″).Value = Left(Range(”A1″), StartNum – 1)
‘單元格E1中的數(shù)據(jù)
Range(”E1″).Value = Right(Range(”B1″), Len(Range(”B1″)) – j)
End Sub
代碼很簡單,只是運(yùn)用了幾個VBA函數(shù)。