這裏顯示二個版本的差異處。
excel-vba [2009/02/18 00:25] bestlong 建立 |
excel-vba [2010/08/23 15:30] (目前版本) |
||
---|---|---|---|
行 1: | 行 1: | ||
====== Excel VBA ====== | ====== Excel VBA ====== | ||
+ | 開啟 Excel 後按下 Alt + F11 按鍵可以啟動 Visual Basic 編輯器。 | ||
- | ===== 網路資源 ===== | + | ===== Excel 檔案結構 ===== |
- | * [[http://spreadsheetpage.com/|The Spreadsheet Page]] | + | ==== 活頁簿 ==== |
- | * http://puremis.net/excel/ | + | |
- | * http://www.mrexcel.com/ | + | |
- | * http://www.bmsltd.co.uk/excel/ | + | |
- | * http://www.mvps.org/dmcritchie/excel/excel.htm | + | |
- | * http://www.cpearson.com/excel/MainPage.aspx | + | |
- | * [[http://www.vbaexpress.com|VBA Express]] 有討論區與知識庫 | + | |
+ | ==== 工作表 ==== | ||
+ | ==== 儲存格 ==== | ||
+ | 儲存格是最重要的物件。在 VBA 中的儲存格是以「Range 物件」來表示,而不是使用 Cell 物件。 | ||
+ | |||
+ | === 使用 Range 物件選取儲存格 === | ||
+ | == 選取單一儲存格 == | ||
+ | <code> | ||
+ | Sub RangeSel1() | ||
+ | Range("C5").Select '選擇儲存格 C5 | ||
+ | End Sub | ||
+ | </code> | ||
+ | == 選取連續的儲存格範圍 == | ||
+ | <code> | ||
+ | Sub RangeSel2() | ||
+ | Range("B2:D4").Select '選擇連續儲存格範圍 B2:D4 | ||
+ | End Sub | ||
+ | </code> | ||
+ | <code> | ||
+ | Sub RangeSel2() | ||
+ | Range("B2","D4").Select '選擇連續儲存格範圍 B2:D4 | ||
+ | End Sub | ||
+ | </code> | ||
+ | == 選取不連續的儲存格範圍 == | ||
+ | <code> | ||
+ | Sub RangeSel3() | ||
+ | Range("B2,B4,D2,D4").Select | ||
+ | Range("B2:D3,B5:D6").Select | ||
+ | End Sub | ||
+ | </code> | ||
+ | == 選取定義名稱的儲存格範圍 == | ||
+ | <code> | ||
+ | Sub RangeSel4() | ||
+ | Range("銷售總額").Select | ||
+ | End Sub | ||
+ | </code> | ||
+ | == 選取 行/列 == | ||
+ | <code> | ||
+ | Sub RangeSel5() | ||
+ | Range("1:1").Select '選取第一列 | ||
+ | Range("A:A").Select '選取第 A 行 | ||
+ | Range("1:3").Select '選取第一列到第三列 | ||
+ | Range("A:C").Select '選取第 A 行到第 C 行 | ||
+ | Range("1:3,6:6").Select '選取第第一列到第三列,以及第六列 | ||
+ | Range("A:C,F:F").Select '選取第 A 行到第 C 行,以及第 F 行 | ||
+ | End Sub | ||
+ | </code> | ||
+ | === 使用 Cells 屬性選取儲存格 === | ||
+ | == 選取單一儲存格 == | ||
+ | <code> | ||
+ | Sub CellsSel1() | ||
+ | Cells(5,3).Active '選取 C5 儲存格,格式為 Cells("列","行") | ||
+ | Cells(5,"C").Active | ||
+ | End Sub | ||
+ | </code> | ||
+ | <code> | ||
+ | Sub CellsSel1() | ||
+ | Cells(1027).Active '用編號選取儲存格,順序是由左至右由上往下從編號 1 開始 | ||
+ | End Sub | ||
+ | </code> | ||
+ | == 選取所有儲存格 == | ||
+ | <code> | ||
+ | Sub CellsSel2() | ||
+ | Cells.Select | ||
+ | End Sub | ||
+ | </code> | ||
+ | === 取得 / 設定 儲存格的值 === | ||
+ | <code> | ||
+ | Sub GetValueRange1() | ||
+ | MsgBox Range("A1").Value | ||
+ | End Sub | ||
+ | </code> | ||
+ | <code> | ||
+ | Sub SetValueRange1() | ||
+ | Range("A1").Value = 123.456 '通用格式 | ||
+ | Range("A2").Value = "-1,234,500" '千分位 | ||
+ | Range("A3").Value = "2009/01/01" '日期 | ||
+ | Range("A4").Value = "11:22:33" '時間 | ||
+ | Range("A5").Value = "01234" '文字 | ||
+ | End Sub | ||
+ | </code> | ||
+ | === 取得 / 設定 儲存格的計算式 === | ||
+ | == 設定計算式 == | ||
+ | <code> | ||
+ | Sub FormulaRange1() | ||
+ | Range("A10").Formula = "=SUM(A1:A9)" | ||
+ | Range("B10").Formula = "=AVERAGE(B1:B9)" | ||
+ | Range("C10").Formula = "=MAX(C1:C9)" | ||
+ | Range("D10").Formula = "=MIN(D1:D9)" | ||
+ | End Sub | ||
+ | </code> | ||
+ | == 絕對參照 / 相對參照 == | ||
+ | <code> | ||
+ | Sub FormulaRange1() | ||
+ | Range("A3").Formula = "=$A$1+$A$2" '絕對參照 | ||
+ | Range("B3").Formula = "=B1+B2" '相對參照 | ||
+ | End Sub | ||
+ | </code> | ||
+ | |||
+ | ==== 圖表 ==== | ||
+ | |||
+ | |||
+ | ===== 自訂功能表 ===== | ||
+ | |||
+ | <code> | ||
+ | </code> | ||
+ | <code> | ||
+ | </code> | ||
+ | |||
+ | ===== 網路資源 ===== | ||
+ | ==== 討論區 ==== | ||
+ | * http://gb.twbts.com/index.php?board=3.0 麻辣家族討論區 Excel 討論版 | ||
+ | * http://www.officefans.net/ OfficeFans.net 菁英俱樂部(簡) | ||
+ | * http://www.excelpx.com/ Excel 菁英 討論區(簡) | ||
+ | * http://www.excelhome.net/ Excel HOME http://club.excelhome.net 討論區 http://blog.excelhome.net Blog | ||
+ | ==== BLOG ==== | ||
* [[http://blog.xuite.net/fvba/vbatips|Excel VBA Tips 志工教學]] | * [[http://blog.xuite.net/fvba/vbatips|Excel VBA Tips 志工教學]] | ||
* [[http://blog.xuite.net/crdotlin/excel|Excel VBA Comics]] | * [[http://blog.xuite.net/crdotlin/excel|Excel VBA Comics]] | ||
* [[http://www.wretch.cc/blog/HUNGCHILIN|HUNGCHILIN的Excel分享空間]] | * [[http://www.wretch.cc/blog/HUNGCHILIN|HUNGCHILIN的Excel分享空間]] | ||
* [[http://chijanzen.net/wp/|chijanzen 雜貨舖]] | * [[http://chijanzen.net/wp/|chijanzen 雜貨舖]] | ||
- | * [[http://cat14051.mysinablog.com/|Emily 分享學習 VBA]] | + | * [[http://cat14051.mysinablog.com|Emily 分享學習 VBA]] |
- | * [[http://www.excelhome.net|ExcelHOME]] [[http://club.excelhome.net|討論區]] [[http://blog.excelhome.net|Blog]] | + | |
* [[http://hi.baidu.com/officecm|ExcelFans]] | * [[http://hi.baidu.com/officecm|ExcelFans]] | ||
+ | ==== 其他 ==== | ||
+ | * [[http://spreadsheetpage.com|The Spreadsheet Page]] | ||
+ | * http://puremis.net/excel | ||
+ | * http://www.mrexcel.com | ||
+ | * http://www.bmsltd.co.uk/excel | ||
+ | * http://www.mvps.org/dmcritchie/excel/excel.htm | ||
+ | * http://www.cpearson.com | ||
+ | * http://www.rondebruin.nl | ||
+ | * [[http://www.vbaexpress.com|VBA Express]] 有討論區與知識庫 | ||
+ | * [[http://www.peltiertech.com]] | ||
+ | * http://www.contextures.com | ||
+ | * http://www.andypope.info | ||
+ | * http://www.dailydoseofexcel.com | ||