辦公軟件 占存:102MB 時(shí)間:2020-05-28
軟件介紹: WPS即 WPS Office 由金山軟件出品發(fā)行可以實(shí)現(xiàn)辦公軟件常用的文字、表格、演示等多種功能。內(nèi)存...
假設(shè)需要輸入以下內(nèi)容,因沒(méi)有連接功能,只好將重復(fù)的字符重復(fù)的輸入,無(wú)疑降低了工作效率。
客戶地址
廣東省東莞市全興有限公司
廣東省東莞市宏運(yùn)有限公司
廣東省東莞市中天有限公司
廣東省東莞市月滿樓有限公司
廣東省東莞市興又盛有限公式
解決思路:
用VBA為WPS表格2005增設(shè)一個(gè)“選擇性粘貼——連接”的功能,置于右鍵菜單方便調(diào)用。
步驟1.建立“選擇性粘貼——連接”的功能的宏
本例假設(shè)你的WPS已具備VBA環(huán)境;
1.新建工作簿;
2.用快捷鍵ALT+F11打開(kāi)VBE環(huán)境;
3.單擊菜單【插入】【模塊】,在模塊中輸入以下代碼:
Sub選擇性粘貼__連接() DimrngAsString,NewShtAsString,OldShtAsString,texts,iAsByte,ansAsByte IfActiveSheet.ProtectContentsThenMsgBox"工作表已保護(hù),本程序拒絕執(zhí)行!",64,"提示":ExitSub OnErrorGoToendd rng=Selection.Address OldSht=ActiveSheet.Name Application.DisplayAlerts=False Worksheets.Add NemSht=ActiveSheet.Name Range("a1").Select ActiveSheet.Paste IfActiveSheet.UsedRange.Count>1Then MsgBox"只能連接單個(gè)單元格的值。",64,"andysky" GoToendd EndIf texts=Selection.Text Application.ScreenUpdating=True Sheets(OldSht).Select ans=InputBox("請(qǐng)選擇連接于目標(biāo)前還是連接于目標(biāo)后。"&Chr(10)&"1:連接于目標(biāo)之前;"_ &Chr(10)&"2:連接于目標(biāo)之后。","連接方式",1) Fori=1ToSelection.Count If--ans=1ThenSelection(i)=textsSelection(i) If--ans=2ThenSelection(i)=Selection(i)texts Next endd: Worksheets(NemSht).Delete EndSub
步驟2.將宏功能加入右鍵菜單中
1.用快捷鍵CTLR+R打開(kāi)“工程資源管理器”,在左邊的窗格中找到“ThisWorkbook”并雙擊;
2.在右邊的代碼窗口輸入以代碼(兩段代碼:第一段為將工能加到右鍵菜單,另一段為關(guān)閉EXCEL時(shí)恢復(fù)右鍵):
PrivateSubWorkbook_Open() WithApplication.CommandBars("cell").Controls.Add(Type:=msoControlButton,before:=4,Temporary:=True) .Caption="選擇性粘貼__連接(&Paste)" .OnAction="選擇性粘貼__連接" EndWith EndSub PrivateSubWorkbook_BeforeClose(CancelAsBoolean) Application.CommandBars("CELL").Reset EndSub
步驟3.將工作簿另存為默認(rèn)模板
1.關(guān)閉VBE窗口返回工作表;
2.單擊菜單【文件】【另存為】,在保存類型處選擇“WPS表格模板文件”。
步驟4.測(cè)試效果 1.選擇菜單【文件】【本機(jī)上的模板】,在列表中選擇剛才存放的模板;
2.在工作表中輸入以下數(shù)據(jù)(見(jiàn)圖五),然后復(fù)制A9,然后選擇A2:A7,單擊右鍵,選擇菜單中的“選擇性粘貼__連接”;
3.此時(shí)程序彈出對(duì)話框,見(jiàn)圖七,在里面輸入1表示連接于前。單擊確定后最后結(jié)果如圖八所示。
結(jié)束語(yǔ):ET支持VBA進(jìn)行二次開(kāi)發(fā),這使得它更具有靈活性。當(dāng)默認(rèn)的功能難以滿足我們工作需求時(shí),不妨用VBA來(lái)處理吧。