回覆列表
  • 1 # 使用者52510796211

    當你有一個擁有若干個工作表的Excel文件,你想要把這些工作表分別儲存成單個獨立的檔案,傳送給不同的使用者。你該如何操作?最好的方法就是使用VBA。如果不太熟悉VBA的小夥伴,可以先花費1分鐘,找到新增VBA程式碼的路徑。在【開發工具】選項卡中找到【Visual Basic】。如果沒有開發工具選項卡的話,需要在Excel選項中將其勾選顯示。右鍵點選左側視窗欄中的任意一個工作簿,選擇【插入】->【模組】複製程式碼到視窗中,然後點選【執行】即可將每個工作表儲存成單獨的Excel檔案"將每個工作表儲存成單獨的Excel檔案Sub SplitEachWorksheet()Dim FPath As StringFPath = Application.ActiveWorkbook.PathApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseFor Each ws In ThisWorkbook.Sheets ws.Copy Application.ActiveWorkbook.SaveAs Filename:=FPath & "\" & ws.Name & ".xlsx" Application.ActiveWorkbook.Close FalseNextApplication.DisplayAlerts = TrueApplication.ScreenUpdating = TrueEnd Sub但是在執行上述程式碼前,你還得做兩步準備:建立一個資料夾,放置所有獨立檔案將主檔案也存於此資料夾下操作完的結果如下圖所示。將每個工作表儲存成單獨的PDF檔案有的時候,我們非但希望將工作表單獨儲存出來,還不希望使用者對檔案再進行修改。這個時候,我們也可以考慮將工作表儲存成pdf檔案。具體的程式碼如下:"將每個工作表儲存成單獨的PDF檔案Sub SplitEachWorksheet()Dim FPath As StringFPath = Application.ActiveWorkbook.PathApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseFor Each ws In ThisWorkbook.Sheets ws.Copy Application.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FPath & "\" & ws.Name & ".xlsx" Application.ActiveWorkbook.Close FalseNextApplication.DisplayAlerts = TrueApplication.ScreenUpdating = TrueEnd Sub這樣的操作結果如下:這樣的操作是不是簡單快速呢?再也不需要為此大費周章的手工分割工作簿。省時省力!

  • 中秋節和大豐收的關聯?
  • 《紅樓夢》中誰最漂亮?