如何設(shè)置Excel宏實(shí)現(xiàn)篩選后的數(shù)據(jù)復(fù)制粘貼
在日常使用Excel時(shí),經(jīng)常需要將篩選后的數(shù)據(jù)復(fù)制粘貼到相應(yīng)的位置。本文將介紹如何通過設(shè)置Excel宏,實(shí)現(xiàn)一次性永久性解決這個(gè)操作問題,避免重復(fù)基礎(chǔ)操作。 錄制宏并更新代碼1. 點(diǎn)擊Excel左下角
在日常使用Excel時(shí),經(jīng)常需要將篩選后的數(shù)據(jù)復(fù)制粘貼到相應(yīng)的位置。本文將介紹如何通過設(shè)置Excel宏,實(shí)現(xiàn)一次性永久性解決這個(gè)操作問題,避免重復(fù)基礎(chǔ)操作。
錄制宏并更新代碼
1. 點(diǎn)擊Excel左下角的【錄制宏】按鈕,選擇錄制到【個(gè)人宏工作簿】后停止錄制。
2. 按Alt F11進(jìn)入VBE界面,在“個(gè)人宏工作簿”中更新以下代碼。
```vba
Sub 多區(qū)域復(fù)制粘貼()
On Error Resume Next
Dim SRange() As Range, UPRange As Range, TRange As Range
Dim i As Long, AreaNum As Long
Dim MinR As Long, MinC As Long
AreaNum
ReDim SRange(1 To AreaNum)
MinR
MinC
For i 1 To AreaNum
Set SRange(i) (i)
If SRange(i).Row < MinR Then MinR SRange(i).Row
If SRange(i).Column < MinC Then MinC SRange(i).Column
Next i
Set UPRange Cells(SRange(1).Row, SRange(1).Column)
Set TRange (prompt:"選擇粘貼區(qū)域的最左上角單元格", Title:"多區(qū)域復(fù)制粘貼", Type:8)
False
For i 1 To AreaNum
SRange(i).Copy
(SRange(i).Row - MinR, SRange(i).Column - MinC).PasteSpecial Paste:xlPasteValues
Next i
True
End Sub
```
添加自定義快速訪問工具欄按鈕
1. 右鍵單擊快速訪問工具欄,選擇【自定義快速訪問工具欄】。
2. 設(shè)置和選擇如下圖所示,并點(diǎn)擊【添加】按鈕。
測(cè)試宏功能
1. 假設(shè)原始數(shù)據(jù)A列包含重復(fù)的“張三”。
2. 篩選“張三”,選中所有數(shù)據(jù),按Ctrl G調(diào)出【定位】對(duì)話框,選擇【定位條件】。
3. 選擇【可見單元格】,然后點(diǎn)擊【確定】按鈕。
4. 點(diǎn)擊剛添加的自定義按鈕,會(huì)彈出一個(gè)對(duì)話框。
5. 選擇要粘貼的區(qū)域的最左上角單元格,點(diǎn)擊【確定】按鈕即可完成粘貼操作。
通過以上設(shè)置,可以在Excel中輕松實(shí)現(xiàn)篩選后數(shù)據(jù)的復(fù)制粘貼操作,提高工作效率。記得保存代碼到個(gè)人宏工作簿,使其在所有工作簿中都可用。