無法插入表格
849
2025-04-01
Excel VBA(宏)有多強(qiáng)大?看了這幾個(gè)Excel功能就服了!(excel數(shù)據(jù)透視表怎么做)
excel為提供了很多好用的功能和函數(shù),但還是有很多工作無法用現(xiàn)有功能和函數(shù)批量完成,比如多個(gè)excel表格的合并與拆分,而借助VBA語言編寫的宏代碼,這些看似無法批量處理或無法完成的事情,瞬間變得只是小菜一碟,也許你不懂VBA,也建議先收藏起來這些代碼備用。
(第1個(gè)示例中,演示了VBA代碼的使用方法,后面示例均和第1個(gè)類似,不再具體演示)
1、一次取消所有工作表的隱藏
Excel可以一次隱藏多個(gè)工作表,但取消工作表隱藏卻需要一個(gè)個(gè)的設(shè)置,用VBA編寫一段代碼,一秒完成!
注意
要想使用VBA功能,需要把代碼粘貼到添加的模塊中,詳見動(dòng)畫演示
要想保存VBA代碼,需要把文件另存為xlsm格式文件,詳見動(dòng)畫演示
動(dòng)畫演示:
代碼:
Sub 取消隱藏()
For x = 1 To Sheets.Count
If Sheets(x).Name <> "總表" Then
Sheets(x).Visible = -1
End If
Next x
End Sub
Sub 隱藏()
For x = 1 To Sheets.Count
If Sheets(x).Name <> "總表" Then
Sheets(x).Visible = 0
End If
Next x
End Sub
2、根據(jù)模板批量生成日報(bào)表
根據(jù)模板批量生成報(bào)表,沒什么好方法,只能一個(gè)一個(gè)的復(fù)制然后修改名稱。但這對VBA來說,只需點(diǎn)一下按鈕即可瞬間完成。
代碼:
Sub 生成報(bào)表()
Dim x As Integer
Dim sh As Worksheet
For x = 1 To 31
Set sh = Sheets.Add
With sh
.Name = x & "日"
Sheets("日報(bào)模板").Range("1:15").Copy sh.Range("A1")
End With
Next x
End Sub
3、拆分工作表為單獨(dú)的excel文件
把當(dāng)前excel文件中除第1個(gè)工作外的所有工作表,均保存為單獨(dú)的excel文件到3月文件夾中。
拆分演示(在拆分過程中會畫面會停幾秒,請耐心等待)
代碼:
Sub 拆分表格()
Dim x As Integer
Dim wb As Workbook
Application.ScreenUpdating = False
For x = 2 To 32
Sheets(x).Copy
Set wb = ActiveWorkbook
With wb
.SaveAs ThisWorkbook.Path & "/3月/" & Sheets(x).Name & ".xlsx"
.Close True
End With
Next x
Application.ScreenUpdating = True
End Sub
4、合并多個(gè)Excel文件工作表到一個(gè)文件中
3月文件夾下有N張報(bào)表,要求把該文件夾中所有excel文件的第1個(gè)工作表合并到當(dāng)前的excel文件中,以單獨(dú)的工作表存放。
代碼:
Sub 合并表格()
Dim mypath As String
Dim f As String
Dim ribao As Workbook
Application.ScreenUpdating = False
mypath = ThisWorkbook.Path & "/3月/"
f = Dir(ThisWorkbook.Path & "/3月/*.xlsx")
Do
Workbooks.Open (mypath & f)
With ActiveWorkbook
.Sheets(1).Move after:=ThisWorkbook.Sheets(Sheets.Count)
End With
f = Dir
Loop Until Len(f) = 0
Application.ScreenUpdating = True
End Sub
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。