Excel VBA(宏)有多強大?看了這幾個Excel功能就服了!

2021-02-14 Excel精英培訓

excel為我們提供了很多好用的功能和函數,但還是有很多工作無法用現有功能和函數批量完成,比如多個excel表格的合併與拆分。而藉助VBA語言編寫的宏代碼,這些看似無法批量處理或無法完成的事情,瞬間變得只是小菜一碟,也許你不懂VBA,也建議先收藏起來這些代碼備用。

(第1個示例中,演示了VBA代碼的使用方法,後面示例均和第1個類似,不再具體演示)

1、一次取消所有工作表的隱藏

Excel可以一次隱藏多個工作表,但取消工作表隱藏卻需要一個個的設置,用VBA編寫一段代碼,一秒完成!

注意

動畫演示:


代碼:

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、根據模板批量生成日報表

根據模板批量生成報表,沒什麼好方法,只能一個一個的複製然後修改名稱。但這對VBA來說,只需點一下按鈕即可瞬間完成。


代碼:

Sub 生成報表()

 Dim x As Integer

 Dim sh As Worksheet

 For x = 1 To 31

   Set sh = Sheets.Add

   With sh

    .Name = x & "日"

    Sheets("日報模板").Range("1:15").Copy sh.Range("A1")

   End With

 Next x

End Sub

3、拆分工作表為單獨的excel文件

把當前excel文件中除第1個工作外的所有工作表,均保存為單獨的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、合併多個Excel文件工作表到一個文件中

3月文件夾下有N張報表,要求把該文件夾中所有excel文件的第1個工作表合併到當前的excel文件中,以單獨的工作表存放。


代碼:

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

由本平臺創辦,蘭色幻想擔任講師的Excel VBA零基礎入門班正在招生中(第一天已報名17人),如果你也想學會強大的VBA編程,就快跟蘭色幻想一起學習吧, 點左下角「閱讀原文」查看報名詳情。

相關焦點

  • excel VBA是什麼?VBA編程入門教程
    本篇將介紹excel vba是什麼?vba編程入門教程,有興趣的朋友可以了解一下!一、excel vba是什麼?VBA的英文全稱是Visual Basic for Applications,是一門標準的宏語言。VBA語言不能單獨運行,只能被office軟體(如:Word、Excel等)所調用。
  • EXCEL學習的順序是什麼?
    一、首先要了解excel的各大功能,基礎的有複製,粘貼,數據有效性,條件格式;然後就是函數,函數要學sumif,sumifs,countif,countifs,vlookup,再深點就學offset,match,index等等。
  • Excel數據分析之VBA入門:宏
    但在python還沒有那麼聲名大振之前,小爬卻是靠著王佩豐老師的VBA以及數據透視表系列教程,才慢慢開始踏上辦公自動化這條大船的。這幾年的工作經驗給小爬最大的感觸是:python的確是數據分析的一把好手,但很多時候VBA已然夠用。
  • 【Excel練習題】Excel表格求和:從1加到100
    方法一(每一個人都應該會的方法)解題思路:既然要求1至100,而excel對於數字的運算能力是很強的,求和的函數也比較多,最基本的就是sum函數。所以,我們先寫出1至100,然後再用sum對1至100進行求和,就可以得到答案。
  • 「Python替代Excel Vba」系列(二):pandas分組統計與操作Excel
    參數 method='min' , 表明如果有多個人有相同的總分,那麼全部的人都用所有名次中最小的排名值。後面會看到數據。就是最左邊的那一列數字每個 DataFrame 都會有這樣的 index,不管你怎麼操作他,這個 index 都不會改變。因此我們可以利用 index 定位 excel 的單元格,然後通過 xlwings 標記底色就好了。
  • WPS教程:excel新手入門VBA功能使用介紹
    Excel教學:今天和大家分享一下excel中vba的使用方法入門,相信很多使用該軟體的朋友們對此都很感興趣,下面就和大家來分享一下,希望可以幫助到大家。4.輸入如圖所示的代碼:5.保存文件,按下F5執行,找到我們編輯的這個宏,【計算銷售額】,然後點擊【運行】寫在末尾——總結一下WPS用起來還是十分簡單的,後面也會出更多的EXCEL系列教程和其他知識分享。
  • 「Python替代Excel Vba」系列(終):vba中調用Python
    而上述命令行只是把這個 xlam 文件放入你的 excel 加載項目錄中而已。然後,在你的任意目錄中打開命令行。執行以下語句,即會生成一個 py 文件和一個 帶宏的 excel 文件。myproject的文件夾,打開後會看到如下2個文件:我們需要往其中的 py 文件寫入處理代碼。
  • 用excel製作文件管理器,所有版本皆可使用
    Hello,大家好,之前跟大家分享了使用excel中的power query功能製作一個文件管理器,但是很多分析反應自己的excel版本不夠高,無法使用,今天就跟大家分享如何使用宏表函數製作文件管理器,他也是可以實現文件刷新的,這個的操作也不難,下面就讓我們來看下他是如何設置的一、什麼是宏表函數以及FILES函數
  • Excel vba 利用定義名稱實現用戶登錄功能
    文/江覓易見在vba 中實現用戶登錄,並對登錄用戶進行身份識別,然後對用戶進行分組管理,此類功能值得進一步思考。這裡介紹一種方法,利用Excel中的名稱管理來進行身份識別,起到用戶登錄次數以及增減用戶的功能。
  • 微軟Excel VBA宏的介紹及如何錄製宏
    宏是系列 Excel命令和指令組合在起,形成了個任務,以自動執行包含多個命令和指令的任務。可以極大提升Excel的效率。一,什麼是宏宏就是用VBA代碼保存下來的程序。宏的基本作就是:減少重複性的操作Excel宏是系列操作步驟的集合,如在單元格中輸數據,複製A3的數據到B4,對C1:D3求和等,這些操作步驟有簡單有複雜。當一些操作步驟需要不斷重複時,我們就要考慮錄製宏。
  • 比較Excel中的宏和VBA
    在Excel中可以錄製一個宏來快速製作學生成績的抬頭,我們簡單回顧一下這個宏是如何錄製的:1) 首先點擊「開發工具」選項卡;2) 點擊「使用相對引用」;3) 在錄製開始前選中第一行的抬頭;4) 點擊「錄製宏」;5) 複製第一行;6) 隔兩行,也就是在第3行右鍵滑鼠,選中「插入複製的單元格」;7) 點擊「
  • excel中2000行數據以行排序,你需要多長時間
    vba代碼,錄製宏就是將我們的操作記錄下來,將其編譯為vba代碼,當我下次需要重複操作的時候只需要運行宏excel就會幫自動幫我們搞定。之前需要很久才能完成的工作,使用錄製宏之後可能幾秒就搞定了很多粉絲表示自己的excel找不到錄製宏,只需要在Excel設置中調出開發工具即可,過程如下動圖,我們在主選項卡中勾選開發工具點擊確定即可二、如何按照行來排序排序一般情況下我們都是默認以列來排序的,
  • 在excel製作計票器,快速計算票數,再也不用一個一個的計算了
    Hello,大家好,今天跟大家分享下我們如何在excel中製作計票器,在進行投票統計的時候能快速的提高工作效率,如下圖,當選手得到一票的時候,我們只需點擊一下他對應位置的按鈕,票數即可加1,這個的操作也非常的簡單,下面就讓我們來一起操作下吧
  • 你天天用的excel也可以用來畫畫,這個工具3分鐘搞定!
    最近小妞迷上了一位77歲日本老大爺,他從畫將近20年,讓我敬佩的是他畫畫的工具,居然是我們每天都在用的excel,這幾天小妞打算寫一篇老大爺的傳記給大家學習一下滴,記得隨時過來看看啦。今天就針對excel主題,告訴大家這個用excel就能畫畫的技能,這個說出都很有面兒有木有。與代碼有一些淵源,這個工具(文末有獲取方式)可以把你選取的任一的圖片,在2-3分鐘之內用excel畫出來。
  • 宏如何使用?--excel的學習
    如果你已經用excel很長時間了,那麼您一定聽過宏這個名稱,很多人都不知道宏是用來幹什麼的,今天我們就來了解一下excel中宏的作用與幫助,如果您經常在excel中重複一個任務,那就可以用宏來自動執行該任務了。
  • Excel表格中如何把行轉成列或者說把多列轉多行,Excel置換
    在excel表格中,我們會碰到需要把行變成列,或者是把列變成行的情況,  後續可以對置換後的內容,進行美化,比如居中,添加邊框等操作。
  • Excel表格中,你千萬別學「宏",我是認真的.
    耐心看下去你就會明白。一、什麼是宏?先舉個例子:Excel有一個任務:在C列值的基礎上加上B列的值。Excel提供了很多功能,可以完成各種操作。篩選數據有自動篩選和高級篩選,匯總數據有分類匯總、數據透視表等..
  • Excel多表合併:學會這招從此事半功倍
    大傢伙我是雨果,在講之前希望大家做好心理準備,這節課比較長,因為我想儘量講的詳細一點,希望大家能耐心的看下去,因為今天要講的內容真的是非常重要,如果大家如果能耐心的看完,用心去體會的話,我保證大家真的會受益匪淺。今天跟大家分享的是Excel多表合併,這節課非常重要,因為多表合併在工作中是會經常用到的。
  • excel如何實現更改數據就自動填充顏色的功能?你需要用到它
    Hello,大家好,工作中是不是有遇到這樣的情況,當我們做好的表格發給領導後,領導修改了下說可以了,但是因為數據太多,不知道修改了哪裡,十分的鬱悶,今天就跟大家分享下在excel中如果別人更改了單元格就會自動的填充顏色實現這樣的功能我們需要使用
  • excel的宏怎麼調用,怎麼運用?
    因為我們一般也不用,所以在excel中宏這個功能一般也不顯示出來,我們先把它給顯示出來,打開一個excel,點擊左上角的文件,在文件中找到選項,我們點擊選項最後我們點擊確定回到excel中的主界面就會在最上面的菜單欄中看見開發工具,在裡面也可以找到宏的相關功能鍵,那麼宏有什麼用呢,主要是處理一些重複性的動作時非常方便,如我們在數據1到13的每一行後面都添加一行,有人說我們一行一行的插不行麼,但是這樣太費勁了如果有成千上萬的數據怎麼辦我們用宏來解決這個問題,首先我們選中1所在的行