返回列表 上一主題 發帖

[發問] 如何利用VBA一鍵 自動比對工作表A & B的C欄相異號碼?

[發問] 如何利用VBA一鍵 自動比對工作表A & B的C欄相異號碼?

本帖最後由 RCRG 於 2015-11-12 11:35 編輯

一鍵自動比對兩工作表相異號碼.rar (12.97 KB)


本帖最後由 RCRG 於 2015-11-12 16:10 編輯

回復 2# lpk187


     謝謝lpk187大的解答,完全符合我所要的(C2:C1000範圍錯了,我自行修正了);
對了,Msgbox我如果前面要在加些中文 "相異號碼如下:L777779,L787878C,L989598",這樣要如何修改呢?

TOP

回復 2# lpk187


    發現一個異常,就是如果工作表B的C欄位沒資料可以比對的話,會彈出一個錯誤視窗呢,能把空白內容視為正常嗎?

TOP

回復 6# 准提部林

1. 如果我要再多比對一個工作表C(但範圍只有到C2:C500),我自行隨便亂修改如下應該沒問題吧(我自己測試起來是OK啦QQ)
2. 另外相異的號碼如果是一樣的可以只顯示一個嗎?如果有兩個L123456,彈出視窗就會跑L123456,L123456這樣,而我只想跑一個出來就好。
3. 如果比對的工作表B沒有內容或沒有相異號碼,按下去雖然不會有偵錯視窗了,但似乎也沒有任何視窗出現提醒,會讓人誤以為有在比對嗎?不知能否幫我彈出 "資料正常" 的彈出視窗字眼。


    Sub TEST()
Dim MH, ST, TT$
For Each ST In [B!C2:C1000]
  MH = 0
  If ST <> "" Then MH = Application.Match(ST, [A!C2:C79], 0)
  If IsError(MH) Then TT = TT & "," & ST
Next

For Each ST In [C!C2:C500]
  MH = 0
  If ST <> "" Then MH = Application.Match(ST, [A!C2:C79], 0)
  If IsError(MH) Then TT = TT & "," & ST
Next
If TT <> "" Then MsgBox "相異號碼如下:" & Mid(TT, 2)

End Sub

TOP

回復 8# 准提部林


    謝謝准大再次解題,讓見笑了...XD

TOP

        靜思自在 : 要批評別人時,先想想自己是否完美無缺。
返回列表 上一主題