- Dec 21 Sat 2013 23:58
2013年12月 Excel VBA 教學
- Dec 21 Sat 2013 00:44
2013年12月 Outlook 2010 課程教學
- Dec 21 Sat 2013 00:38
2013年12月 Blogger 部落格教學
- Dec 21 Sat 2013 00:33
2013年12月 會聲會影 x6 課程教學
- Dec 13 Fri 2013 00:41
2013年11月 Word 文書教學
- Dec 13 Fri 2013 00:38
2013年11月 Excel 課程教學
- Dec 13 Fri 2013 00:24
Outlook 2010 教學 課程錄影檔
- Nov 19 Tue 2013 11:11
Firefox 火狐狸瀏覽器相關課程教學
- Nov 19 Tue 2013 11:10
Office 2013 課程研討會內容 錄影檔
- Nov 19 Tue 2013 11:07
2013年3月硬體維修課程教學內容
- Nov 19 Tue 2013 11:05
2013年4月 Word 2010課程教學內容
- Nov 19 Tue 2013 11:01
2013年4月 PowerPoint 2010課程教學內容
- Nov 19 Tue 2013 10:58
2013年4月 Excel 2010 課程教學內容
- Nov 19 Tue 2013 10:57
2013年4月 部落格 課程教學內容
- Nov 19 Tue 2013 10:55
2013年5月 硬體維修 課程教學內容
- Nov 19 Tue 2013 10:54
2011年9月 威力導演 課程教學內容
- Nov 19 Tue 2013 10:50
2013年6月 會聲會影 X6 課程教學內容
- Nov 19 Tue 2013 10:48
2007年11月 Word2007 課程教學內容
- Nov 15 Fri 2013 10:07
Excel VBA 活頁簿(Workbooks)管理
語法筆記
' ------------------------------------------------------------
' 查看目前開啟excel檔案數量
Dim OpenCnt as Integer
OpenCnt = Application.Workbooks.Count
' ------------------------------------------------------------
' 依序查已開檔名 - 方法一
Dim i As Integer
For i = 1 To Workbooks.Count
MsgBox i & " " & Workbooks(i).Name
Next
' ------------------------------------------------------------
' 依序查已開檔名 - 方法二
Dim my Sheet As WorkSheet
For Each mySheet In Worksheets
MsgBox mySheet.Name
Next mySheet
' ------------------------------------------------------------
' 開啟特定檔案 - 方法一
filename = "C:\VBA\test.xls"
Workbooks.Open filename
' ------------------------------------------------------------
' 開啟特定檔案 - 方法二
Dim filename As String
filename = "C:\ExcelVBA\test.xls"
Dim sn As Object
Set sn = Excel.Application
sn.Workbooks.Open filename
' sn.Workbooks(filename).Close ' 關閉
Set sn = Nothing
' ------------------------------------------------------------
' 關閉指定檔案, 不提示訊息
Dim filename As String
filename = "Test.xls" ' 這裡只可以給短名,給全名會錯
' 假設 Test.xls 已於開啟狀態
Application.DisplayAlerts = False ' 關閉警告訊息
Workbooks(filename).Close
Application.DisplayAlerts = True ' 再打開警告訊息
' ------------------------------------------------------------
' 關閉所有開啟檔案, 但留下主視窗
Workbooks.Close
' ------------------------------------------------------------
' 關閉 excel 程式
Application.Quit
' ------------------------------------------------------------
' 直接進行存檔
Dim filename As String
filename = "a.xls" ' 只可為短檔名
WorkBooks(filename).Save
' ------------------------------------------------------------
' 指定檔名進行另存新檔,並關閉
' 假設要將 "a.xls" 存成 "C:\b.xls"
Application.DisplayAlerts = False ' 關閉警告訊息
Workbooks("a.xls").SaveAs "C:\b.xls" ' 另存新檔
Workbooks("b.xls").Close ' 關閉 b.xls
Application.DisplayAlerts = True ' 開啟警告訊息
' ------------------------------------------------------------
' 指定當前活頁簿
Dim Caption as String
Caption = "a.xls"
Workbooks(Caption).Activate ' 將視窗切到 a.xls
- Oct 25 Fri 2013 01:20
Excel VBA 取得工作表的最後一欄或最後一列
可以使用ActiveSheet.Rows.Count與ActiveSheet.Columns.Count來取得
最後一列
Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row
最後一欄
Cells(1, ActiveSheet.Columns.Count).End(xlToLeft).Column
例:
Worksheets("sheet1").Range("H2").Copy
ActiveSheet.Paste Destination:=Worksheets("sheet1").Range("H3:h" & Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row)