提取Excel兩組數(shù)據(jù)交集的宏操作方法
在前文中我們學(xué)習(xí)了如何快速處理一組數(shù)據(jù)并提取其中不重復(fù)的值,在Excel中,若要提取兩組數(shù)據(jù)中相同的部分,即交集,也有相應(yīng)的解決方法。接下來(lái)將分享如何使用宏來(lái)實(shí)現(xiàn)這一目標(biāo)。 打開(kāi)Excel并創(chuàng)建新文檔
在前文中我們學(xué)習(xí)了如何快速處理一組數(shù)據(jù)并提取其中不重復(fù)的值,在Excel中,若要提取兩組數(shù)據(jù)中相同的部分,即交集,也有相應(yīng)的解決方法。接下來(lái)將分享如何使用宏來(lái)實(shí)現(xiàn)這一目標(biāo)。
打開(kāi)Excel并創(chuàng)建新文檔
首先打開(kāi)Microsoft Office Excel 2007,新建文檔并保存文件名為《Excel怎樣提取兩組數(shù)據(jù)的交集.xlsm》。然后按下快捷鍵ALT F11打開(kāi)VBE(宏)編輯界面,點(diǎn)擊菜單欄【插入】并選擇【模塊(M)】。
插入并運(yùn)行宏代碼
在新插入的模塊中復(fù)制以下代碼:
```vba
Sub 提取兩組數(shù)據(jù)的交集()
Dim d1 As Object, d2 As Object, myr1s As Range, myr2s As Range
Dim myr1 As Range, myr2 As Range
Set myr1s Selection
Set myr2s (Prompt:"選擇另組數(shù)據(jù)的單元格區(qū)域", Type:8)
On Error Resume Next
Set d1 CreateObject("scripting.dictionary")
For Each myr1 In myr1s
,
Next myr1
Set d2 CreateObject("scripting.dictionary")
For Each myr2 In myr2s
If d1.Exists() Then
,
End If
Next myr2
If 0 Then
MsgBox "兩組數(shù)據(jù)無(wú)交集!"
Else
Set myr2 (Prompt:"選擇一個(gè)單元輸出交集", Type:8)
(, 1) ()
End If
End Sub
```
運(yùn)行宏提取交集數(shù)據(jù)
回到工作表窗口,先選中一組數(shù)據(jù)單元格區(qū)域,然后運(yùn)行【提取兩組數(shù)據(jù)的交集】宏。在菜單欄中選擇【視圖】,在下拉列表中找到【宏】,打開(kāi)宏對(duì)話框,選擇剛才創(chuàng)建的宏并執(zhí)行。系統(tǒng)會(huì)提示“選擇另組數(shù)據(jù)的單元格區(qū)域”,確認(rèn)選擇后即可看到交集數(shù)據(jù)被提取出來(lái),如果兩組數(shù)據(jù)無(wú)交集則會(huì)給出相應(yīng)提示。
通過(guò)以上操作,您可以輕松地在Excel中提取兩組數(shù)據(jù)的交集,提高數(shù)據(jù)處理效率。如果本文對(duì)您有所幫助,請(qǐng)不吝點(diǎn)贊或收藏支持我們!如有任何疑問(wèn),歡迎點(diǎn)擊“我有疑問(wèn)”進(jìn)行提問(wèn),謝謝閱讀!