100個最簡單的Excel巨集指令範例圖解

點閱:2

作者:蘇勝宏作

出版年:2016

出版社:德威國際文化

出版地:臺北市

集叢名:工具書:8

格式:PDF,JPG

頁數:160

ISBN:9789865756499

分類:財經金融稅務  

內容簡介

這是一本簡單易懂的Excel巨集指令VBA程式入門書,書中的每一個範例都有圖片對照說明,讀者只要具備Excel基本操作能力,就能按圖索驥、無師自通。
Excel巨集指令就是一種VBA程式。利用VBA巨集指令來執行固定、重複的工作,以減少人為的操作錯誤,節省操作時間,把無聊繁複的工作交機器(電腦)自己去處理吧!

這本初學者的入門手冊簡單易懂,書中的每一個範例都有圖片對照說明。這些範例都是常用的簡單操作模式。所以這是一本既實用又簡單的電腦工具參考

作者簡介

蘇勝宏

從事文教工作與寫作,精研於電腦研究,並喜好文藝創作,尤擅長小品文章,作品散見於各月刊及雜誌,現兼任自由作家。著有《倉頡非常厲害》、《蘇式倉頡輸入法》、《伊索寓言的100則智慧中英對照》、《英文諺語手冊》以及《繁簡體速查手冊》等書。

  • VBA 基本認識
  • 【範例001】:儲存格範圍選取 Range("Xa:Xb").Select
  • 【範例002】:儲存格範圍選取 Range(Cells(y1,x1), Cells(y2,x2)).Select
  • 【範例003】:定義範圍名稱 Set myRange1=(Cells(y1,x1), Cells(y2,x2))myRange1.Select
  • 【範例004】:填入數值或文字資料 Range("Xa").FormulaR1C1=12 Range("Xa:Xb").FormulaR1C1="ABC"
  • 【範例005】:清除資料 Range("Xa").ClearContents Range("Xa:Xb").ClearContents
  • 【範例006】:刪除資料,下方資料向上移 Range("Xa").Delete Shift:=xlUp Range("Xa:Xb").Delete Shift:=xlUp
  • 【範例007】:刪除資料,右方資料向左移 Range("Xa").Delete Shift:=xlToLeft
  • 【範例008】:刪除整列資料,下方資料向上移 Range("y1").EntireRow.Delete
  • 【範例009】:刪除多列資料 Rows("y1:y2").Delete Shift:=xlUp
  • 【範例010】:刪除整欄資料,右欄資料向左移 Range("Xa").EntireColumn.Delete
  • 【範例011】:刪除多欄資料 Columns("x1:x2").Delete Shift:=xlToLeft
  • 【範例012】:插入儲存格,現有儲存格向右移 Range("Xa").Insert Shift:=xlToRight
  • 【範例013】:插入儲存格,現有儲存格向下移 Range("Xa").Insert Shift:=xlDown
  • 【範例014】:插入整列 Range("Xa").EntireRow.Insert
  • 【範例015】:插入整欄 Range("Xa").EntireColumn.Insert
  • 【範例016】:插入多欄空白欄,現有的資料往右移 Columns("Xa:Xb").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
  • 【範例017】:複製的資料插入於多個欄位間,現有資料向右移 Columns("Xa:Xb").Copy Columns("Xc:Xd").Insert Shift:=xlToRight
  • 【範例018】:複製、貼上 Range("Xa").Copy Range("Xb").Select ActiveSheet.Paste
  • 【範例019】:插入多列空白列,現有資料向下移 Rows("y1:y2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbov
  • 【範例020】:插入複製的資料於多列間,現有的資料向下移 Rows("y1:y2").Copy Rows("y3:y4").Insert Shift:=xlDown
  • 【範例021】:MsgBox 函數
  • 【範例022】:目前區域(是指以任意空白列及空白欄的組合為邊界的範圍)的列數 i=Cells(y,x).CurrentRegion.Rows.Count
  • 【範例023】:目前區域(是指以任意空白列及空白欄的組合為邊界的範圍)的欄數 Cells(y,x).CurrentRegion.Columns.Count
  • 【範例024】:游標移動 y 列 x 欄 (y,x>0) ActiveCell.Offset(rowOffset:=y,columnOffset:=x).Activate
  • 【範例025】:游標移動 y 列 x 欄 (y,x<0) ActiveCell.Offset(y,x).Activate
  • 【範例026】:相當 Ctrl+End 組合鍵 ActiveCell.SpecialCells(xlLastCell).Select
  • 【範例027】:相當 Ctrl+Home 組合鍵 Range("A1").Select
  • 【範例028】:相當 Ctrl+向下鍵 Selection.End(xlDown).Select
  • 【範例029】:相當 Ctrl+向上鍵 Selection.End(xlUp).Select
  • 【範例030】:相當 Ctrl+向左鍵 Selection.End(xlToLeft).Select
  • 【範例031】:相當 Ctrl+向右鍵 Selection.End(xlToRight).Select
  • 【範例032】:相當於 Ctrl+Shift+Home 組合鍵 Range(Selection,Cells(1)).Select
  • 【範例033】:相當於 Ctrl+Shift+End 組合鍵 Range(Selection,ActiveCell.SpecialCells(xlLastCell)).Select
  • 【範例034】:相當於 Ctrl+Shift+向上鍵 Range(Selection,Selection.End(xlUp)).Select
  • 【範例035】:相當於 Ctrl+Shift+向下鍵 Range(Selection, Selection.End(xlDown)).Select
  • 【範例036】:相當於 Ctrl+Shift+向左鍵 Range(Selection, Selection.End(xlToLeft)).Select
  • 【範例037】:相當於 Ctrl+Shift+向右鍵 Range(Selection, Selection.End(xlToRight)).Select
  • 【範例038】:對指定範圍中的儲存格執行自動填滿 Range("Xa:Xb").AutoFill Destination:=Range("Xa:Xc")
  • 【範例039】:傳回範圍中第一個區域中的第一列的列號 Range("Xa:Xb").Row
  • 【範例040】:傳回 Range 物件,代表指定之範圍內的列 Range("Xa:Xb").Rows(n)=k
  • 【範例041】:傳回範圍中第一個區域中的第一欄的欄號 Range("Xa:Xb").Column
  • 【範例042】:傳回 Range 物件,代表指定之範圍內的欄 Range("Xa:Xb").Columns(n)=k
  • 【範例043】:在本工作底稿之前新增一個名為”S1”的工作底稿 Sheets.Add.Name="工作底稿名稱 S1"
  • 【範例044】:新增一個未名命的工作底稿 Sheets.Add
  • 【範例045】:在底稿某個工作底稿之後新增一個名為"S2"的工作底稿 Sheets.Add After:=Sheets("工作底稿名稱 1") ActiveSheet.Name="工作底稿名稱 2"
  • 【範例046】:在某個工作底稿之前(before)新增一個名為"S3"的底稿。 Sheets.Add before:=Sheets("工作底稿名稱") ActiveSheet.Name="S3"
  • 【範例047】:改工作底稿名稱 Sheets("名稱 1").Name="名稱 2"
  • 【範例048】:選定、切換工作底稿 Sheets("工作底稿名稱").Select
  • 【範例049】:複製一個工作底稿在某個工作底稿之前 Sheets("S2").Copy Before:=Sheets("S1")
  • 【範例050】:複製一個工作底稿在某個工作底稿之後 Sheets("S2").Copy After:=Sheets("S3")
  • 【範例051】:複製工作底稿甲為乙,並在丙之前 Sheets("甲").Copy Before:=Sheets("丙") ActiveSheet.Name="乙"
  • 【範例052】:複製工作底稿甲為乙,並在丙之後 Sheets("甲").Copy After:=Sheets("丙") ActiveSheet.Name="乙"
  • 【範例053】:移動工作底稿甲在乙之後 Sheets("甲").Move After:=Sheets("乙")
  • 【範例054】:移動工作底稿甲在乙之前 Sheets("甲").Move After:=Sheets("乙")
  • 【範例055】:選定、切換工作底稿 Sheets("工作底稿名稱").Select
  • 【範例056】:選定多個工作底稿 Sheets(Array("工作底稿 S1","S2","S3")).Select
  • 【範例057】:隱藏一個工作底稿 Sheets("工作底稿名稱").Visible=False
  • 【範例058】:顯示一個隱藏的工作底稿 Sheets("工作底稿名稱").Visible=True
  • 【範例059】:隱藏多個工作底稿 Sheets(Array("工作底稿名稱 1","工作底稿名稱 2","工作底稿名稱 3")).Visible=False
  • 【範例060】:顯示多個已隱藏的工作底稿(只能一個個顯示,不可設為群組) Sheets("S1").Visible=True
  • 【範例061】:刪除一個工作底稿 Sheets("S1").Delete
  • 【範例062】:刪除工作底稿;而不出顯警告對話視窗 Application.DisplayAlerts=False Sheets("工作底稿名稱").Delete
  • 【範例063】:刪除多個工作底稿;而不出顯警告對話視窗 Application.DisplayAlerts=False Sheets(Array("工作底稿 S1","S2","S3")).Delete
  • 【範例064】:新增一個檔案(活頁簿) Workbooks.Add
  • 【範例065】:新增一個檔案(活頁簿),(另存新檔)命名為 "x:\path\Filename.xls" Workbooks.Add ActiveWorkbook.SaveAs Filename:="x:\path\Filename.xls"
  • 【範例066】:開啟舊檔 Workbooks.Open Filename:="x:\path\Filename.xls"
  • 【範例067】:存檔(檔名和原來檔名一樣未改) ActiveWorkbook.Save
  • 【範例068】:關閉作用中的檔案(活頁簿) ActiveWorkbook.Close
  • 【範例069】:離開、關閉 Excel 應用軟體 Application.Quit
  • 【範例070】:當執行階段錯誤時,程式控制不因錯誤而中斷停止下面程序。 On Error Resume Next
  • 【範例071】:使用 Error 陳述式來模擬發生錯誤代碼的狀況 Error errornumber
  • 【範例072】:InputBox 函數
  • 【範例073】:Shell 函數 Shell"執行檔程式.exe",常數
  • 【範例074】:送出一或多個按鍵訊息到使用中的視窗,就如同在鍵盤上按下的一樣 SendKeys 陳述
  • 【範例075】:當按下特定鍵或組合鍵時會執行指定的程序 Application.OnKey"按鍵","程序名稱"
  • 【範例076】:將程式控制權轉移到一個 Sub 程序,Function 程序,或動態連結資料庫(DLL)程序。 Call 程序名稱
  • 【範例077】:以特定次數來重複執行一段陳述式 For…Next 陳述
  • 【範例078】:九九乘法表 用 For…Next 陳述
  • 【範例079】:If…Then … Else …陳述式
  • 【範例080】:If…Then…End If 陳述
  • 【範例081】:If … Then…Else…End If 陳述
  • 【範例082】:If…Then… ElseIf …Then ElseIf …Then Else End If
  • 【範例083】:Select Case 陳述
  • 【範例084】:Do...Loop 陳述 Do While … Loop
  • 【範例085】:Do...Loop 陳述 Do Loop While …
  • 【範例086】:Do...Loop 陳述 Do Until… Loop
  • 【範例087】:Do…Loop 陳述 Do Loop Until…
  • 【範例088】:Do…Loop 陳述 Do… Exit Do Loop
  • 【範例089】:While…Wend 陳述 While 條件 Wend
  • 【範例090】:With…End With 陳述 With End With
  • 【範例091】:多個範圍的選取 Range("Xa:Xb,Xc:Xd,Xe:Xf")
  • 【範例092】:多個範圍的選取 [Xa:Xb,Xc:Xd,Xe:Xf]
  • 【範例093】:Open 陳述式 Open"路徑\檔名" For 檔案模式 As #n
  • 【範例094】:Open 陳述式 Open"路徑\檔名" For 檔案模式 As #n
  • 【範例095】:RAND()亂數函數 [Xa:Xb].FormulaR1C1="=RAND()"
  • 【範例096】:Chr() 函數 [A1].Value=Chr(charcode)
  • 【範例097】:Hex()、Asc() 和 Chr()函數 [Xa].Value=Hex(Asc("文字"))&":"& Chr(Asc("文字"))
  • 【範例098】:Asc()、AscW()、Chr()、ChrW()函數
  • 【範例099】:Auto_close 巨集
  • 【範例100】:自動執行巨集 auto_open()
  • 附錄:在 VBA 程式語言中的內建函數