日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Excel中的VBA宏:每次划款前从总名册中同步用户数据到当前页

發(fā)布時間:2025/3/17 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Excel中的VBA宏:每次划款前从总名册中同步用户数据到当前页 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

我使用的Office為 Microsoft Office Professional Plus 2010,我使用的Excel 版本為14.0.4760.1000(32位)。

這段時間遇到了一件事,就是我需要給很多小伙伴打錢,但是每次打給的人又不一樣。每次都一遍遍地做一些重復(fù)工作,自然不是我的風格,所以我寫了下面這個VBA腳本執(zhí)行我的工作:

1、建立一個Excel,第一個Sheet頁取名為“成員名冊”,里面一共有三列,第一列為成員名稱,第二列為打款方式,第三列為賬號

2、將一個新的Sheet頁命名為報銷單1,先填寫前兩列,第一列寫上成員名稱,第二列寫上打款金額

3

3、添加宏GenerateDoc,在Excel自帶的VisualBasic編輯器中輸入下面代碼

'從總名單中將對應(yīng)信息填入新建的名單中 '約定各列內(nèi)容: ' 1 - SheetNameList 成員名稱-匯款方式-賬號號碼(需全部填寫) ' 2 - SheetGenDoc 成員名稱-匯款金額-匯款方式(通過本Sub同步)-賬號號碼(通過本Sub同步)-是否匯訖(默認未匯) Sub GenerateDoc()Dim SheetNameList As WorksheetSet SheetNameList = Sheets("成員名冊") '成員名冊Sheet頁名Dim SheetGenDoc As WorksheetSet SheetGenDoc = Sheets("報銷單1") '待同步數(shù)據(jù)的報銷單的Sheet頁名,每次需要視情況填寫!'從總名單中找出當前名單中的成員的對應(yīng)信息Dim IsFoundDim i, j As Integeri = 1Do While SheetGenDoc.Cells(i, 1).Text <> ""'MsgBox SheetGenDoc.Cells(i, 1).TextIsFound = Falsej = 1Do While SheetNameList.Cells(j, 1).Text <> ""'MsgBox SheetNameList.Cells(j, 1).TextIf SheetGenDoc.Cells(i, 1).Text = SheetNameList.Cells(j, 1).Text ThenSheetGenDoc.Cells(i, 3).FormulaR1C1 = SheetNameList.Cells(j, 2).TextSheetGenDoc.Cells(i, 4).FormulaR1C1 = SheetNameList.Cells(j, 3).TextSheetGenDoc.Cells(i, 5).FormulaR1C1 = "-"IsFound = TrueEnd Ifj = j + 1Loop'如成員未在總名單中找到,標記為未找到If Not IsFound ThenWith SheetGenDoc.Cells(i, 3).FormulaR1C1 = "未找到"'.Font.Color = -16776961 '文字加紅'.Font.TintAndShade = 0 '文字加紅End WithWith SheetGenDoc.Cells(i, 4).FormulaR1C1 = "未找到"'.Font.Color = -16776961 '文字加紅'.Font.TintAndShade = 0 '文字加紅End WithWith SheetGenDoc.Cells(i, 5).FormulaR1C1 = "-"'.Font.Color = -16776961 '文字加紅'.Font.TintAndShade = 0 '文字加紅End WithEnd Ifi = i + 1Loop'設(shè)置最后一列(第四列)為下拉選擇列,包括【-】和【匯訖】兩個選項SheetGenDoc.Columns("E:E").SelectWith Selection.Validation.Delete.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="-,匯訖".IgnoreBlank = True.InCellDropdown = True.InputTitle = "".ErrorTitle = "".InputMessage = "".ErrorMessage = "".IMEMode = xlIMEModeNoControl.ShowInput = True.ShowError = TrueEnd With'設(shè)置各列寬度和顏色With SheetGenDoc.Columns("A:A").ColumnWidth = 10.Columns("B:B").ColumnWidth = 10.Columns("C:C").ColumnWidth = 20.Columns("D:D").ColumnWidth = 20.Columns("E:E").ColumnWidth = 20.Columns("E:E").Font.Color = -16776961.Columns("E:E").Font.TintAndShade = 0End WithEnd Sub

4、執(zhí)行這個VBA宏后,C、D兩列會自動同步打款方式和賬號,E列會出現(xiàn)一個下拉選項,包括“-”(未打款)和“匯訖”(已打款)兩種選項

使用這個宏,好處是每次收到新名單時,可以很快地根據(jù)成員名冊的信息,把打款方式和賬號同步到一張新的Sheet頁,為操作提供了一些便利性。當然這個宏也可以在適當修改或擴展后用于其他一些類似的場合(比如發(fā)通知、發(fā)傳真等),它最主要的作用是減輕一些由人進行的手工操作的工作量,并減少人在進行這些工作時可能發(fā)生的錯誤。

友情提示:和錢有關(guān)的事情都不是小事,雖然VBA可以讓我們對Excel的處理變得傻瓜化,但在每次打款前還是要和收款人再次確認一下打款方式和賬號。

轉(zhuǎn)載于:https://my.oschina.net/Tsybius2014/blog/616946

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的Excel中的VBA宏:每次划款前从总名册中同步用户数据到当前页的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。