網(wǎng)上常??梢钥吹礁鞣N工資條制作的函數(shù)、黏貼等各種方法。都需要幾個(gè)步驟。感覺(jué)費(fèi)時(shí)費(fèi)力。

學(xué)會(huì)了VBA 之后,當(dāng)然就不需要那么多步驟啦。能一鍵解決的時(shí)候,絕不按兩下鍵。

如果本例與你的表格不一致,讀者可以復(fù)制代碼,簡(jiǎn)單修改幾處代碼就可以運(yùn)行了。

問(wèn)題如下:

Excel VBA 一鍵工資表制作工資條

Excel VBA 一鍵工資表制作工資條

問(wèn)題描述:

1:工資表的原始表格里已經(jīng)做好了各同事的工資表格,

2:要在每個(gè)同事的上一行插入固定的表頭,就形成個(gè)人的工資條;

解決的思路詳解:

1:把表頭作為一個(gè)單元格區(qū)域并賦值

2:用for循環(huán)遍歷工作表(需要制作工資條的單元格區(qū)域),

3:在每個(gè)需要增加插入表頭的單元格區(qū)域,插入表頭

代碼運(yùn)行的結(jié)果如下:

Excel VBA 一鍵工資表制作工資條

代碼如下:

Excel VBA 一鍵工資表制作工資條

Sub 生成工資條()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Dim sht As Worksheet, arr, i, j
Dim rng As Range, Path1 As String

Set sht = Worksheets("工資表原始表格")
Set rng = sht.Range("a2:t3")
arr = sht.Range("a1").CurrentRegion

n = UBound(arr, 1) - 1
" 插入表頭的循環(huán)
For i = n To 5 Step -1
rng.Copy
Rows(i).Insert Shift:=xlDown
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
代碼解析

1:5~6行 Dim定義變量;

2:8行 設(shè)定工作表;

3:9行 設(shè)定表頭區(qū)域;

4:10行 把工資表區(qū)域的所有數(shù)據(jù)放入數(shù)組arr

5:12行 用n獲取倒數(shù)第二行號(hào)(因?yàn)樽詈笠恍械暮嫌?jì),不需要制作工資條);

6:14~17行 遍歷arr數(shù)組;

7:15行 復(fù)制表頭

8:16行 在需要制作工資條的單元格上面插入工作表

本例思考:

1:本例的for循環(huán)加入了“Step -1”這個(gè)參數(shù),是因?yàn)閒or循環(huán)本來(lái)就有step這個(gè)參數(shù)。只是大部分省略了(當(dāng)step為1時(shí),可以省略)。step指的時(shí)循環(huán)的步距。

2:當(dāng)遇到需要?jiǎng)h除、插入單元格的時(shí)候,要用倒循環(huán)。即step 為 -1

小結(jié):

解決本問(wèn)題,需要用的知識(shí)點(diǎn):

1:復(fù)制、黏貼的運(yùn)用

點(diǎn)擊關(guān)注可以更方便的查看Excel VBA的案例文章私信 視頻 可以獲取54集VBA入門(mén)視頻私信 VBA或 vba 可以獲取文章中含VBA代碼的Excle文件

1.《工資表的制作 Excel VBA 一鍵工資表制作工資條》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無(wú)關(guān),侵刪請(qǐng)聯(lián)系頁(yè)腳下方聯(lián)系方式。

2.《工資表的制作 Excel VBA 一鍵工資表制作工資條》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。

3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來(lái)源地址,http://f99ss.com/jiaoyu/227704.html