Excel VBA 相關語法 - 電腦學習園地
文章推薦指數: 80 %
Excel VBA線上教學 EXCEL常用的物件 Workbook 活頁簿 Workbooks 活頁簿集合 Workbooks("filename" ... Before := Worksheets(n) 出現於某工作表之前 ...
關閉廣告
電腦學習園地
跳到主文
電腦教學園地提供各式電腦教學課程以及電腦教學影片,給網友學習使用
電腦教學電腦學習WordExcelAccessOutlookPowerPointVBVisualBasicVBA會聲會影威力導演
部落格全站分類:數位生活
相簿
部落格
留言
名片
公告版位
電腦學習園地影片教學http://www.youtube.com/c/pclearn
Aug13Sat201122:03
ExcelVBA相關語法
ExcelVBA線上教學
EXCEL常用的物件
Workbook活頁簿
Workbooks活頁簿集合
Workbooks("filename")檔名為filename的活頁簿
ActiveWorkbook正在作用中的活頁簿
Sheets活頁簿中所有工作表
Sheets(n)活頁簿中第n張工作表
Worksheet工作表
Worksheets所有工作表(包括圖表)
Worksheets("sheet")指表名為sheet工作表
ActiveSheet正在作用中的工作表
Columns("c1:c2")c1至c2欄(其中c1,c2為A~Z或AA~XFD等欄名)
Rows("r1:r2")r1至r2列(其中r1,r2為1~1048576等列名
Range("x1:x2")x1至x2間的儲存格(其中x1,x2為儲存格位址名稱)
cells(i,j)儲存格(第i列、第j行)
ActiveCell目前的儲存格
Selection目前所選取的物件
範例:
Workbooks("Book1").Sheets("Sheet1").Range("A1:D5").Font.Bold=True
Worksheets("Sheet1").Cells.ClearContents
Worksheets("Sheet1").Rows(1).Font.Bold=True
Range("1:1,3:3,8:8")
Worksheets("Sheet1").Cells(6,1).Value=10
Worksheets("Sheet1").[A1:B5].ClearContents
ActiveCell.Offset(1,3).Font.Underline=xlDouble
活頁簿常用屬性:
ActiveWorkBook.Name目前活頁簿的名稱
ActiveWorkBook.Save儲存目前的活頁簿
ActiveWorkBook.SaveAsFilename:="filename"另儲新檔
WorkBooks.Add新增活頁簿
WorkBooks(i).Close[SaveChange,Filename,RouteWorkbook]關閉指定的第i個活頁簿
SaveChange:=True改變儲存
SaveChange:=False不會改變儲存
SaveChange省略時,會出現對話方塊
filename:="檔名"
WorkBooks.Open"filename"開啟一個活頁簿
Application.Windows所有活頁簿視窗
WorkBooks.Count活頁簿的數量
WorkBooks.Item(Index)傳回單一活頁簿,由索引值指定
工作表常用屬性:
Worksheets.Add[Before,After,Count,Type]新增工作表
Before:=Worksheets(n)出現於某工作表之前
After:=Worksheets(n)出現於某工作表之後
Count:=n新增工作表數量
Type:=xlWorksheet(工作表)或xlChart(圖表)
WorkSheets.Name工作表名稱
WorkSheets("Sheet1").Activate設定工作表為目前作用的功作表
儲存格常用屬性:
Rows.RowHeight指定範圍內的所有列高
Columns.ColumnsWidth:指定範圍內的所欄寬
expression.NumberFormatLocal以本地的數字格式
Range.CurrentRegion目前區域是指以任意空白列及空白欄的組合為邊界的範圍
範例:
Worksheets("Sheet1").Activate
ActiveCell.CurrentRegion.Select
expression.Address(RowAbsolute,ColumnAbsolute,ReferenceStyle,External,RelativeTo)以參照的方式
RowAbsolute為True,則用列的絕對位址
ColumnAbsolute為True,則用欄的絕對位址
ReferenceStyle預設值為xlA1,如為xlR1C1則為R1C1的表達方式
expression.count傳回範圍的數量(可以是欄數、列數或儲存格數量)
expression.Item(RowIndex,ColumnIndex)代表相對於指定之範圍某個位移距離的範圍。
expression.value傳回或設定物件的值
expression.Formula傳回或設定物件的公式,代表A1樣式註解以及巨集語言中的物件公式。
範例:Worksheets("Sheet1").Range("A1").Formula="=$A$4+$A$10"
expression.FormulaR1C1傳回或設定物件的公式,並以巨集語言中的R1C1樣式標記法表示
範例:Worksheets("Sheet1").Range("B1").FormulaR1C1="=SQRT(R1C1)"
expression.Text傳回或設定物件的文字
範例:
Setc=Worksheets("Sheet1").Range("B14")
c.Value=1198.3
c.NumberFormat="$#,##0_);($#,##0)"
MsgBoxc.Value
MsgBoxc.Text
常用方法:
Range.Select方法/Selection屬性設定目前選取的範圍/使用目前所選取的範圍
範例:
SubMacro1()
Sheets("Sheet1").Select
Range("A1").Select
ActiveCell.FormulaR1C1="Name"
Range("B1").Select
ActiveCell.FormulaR1C1="Address"
Range("A1:B1").Select
Selection.Font.Bold=True
EndSub
expression.Copy將目前所選取的物件復製至剪貼簿
expression.Cut將目前所選取的物件剪下
expression.Delete將目前所選取的物件刪除
expression.Paste將剪貼簿的內容貼上
範例:
SubCopyRow()
Worksheets("Sheet1").Rows(1).Copy
Worksheets("Sheet2").Select
Worksheets("Sheet2").Rows(1).Select
Worksheets("Sheet2").Paste
EndSub
expression.RasteSpecial(Paste,Operation,SkipBlanks,Transpose)
範例:
WithWorksheets("Sheet1")
.Range("C1:C5").Copy
.Range("D1:D5").PasteSpecial_
Operation:=xlPasteSpecialOperationAdd
EndWith
Range.Activate目前的儲存格
Range.Clear清除資料
Range.ClearContents清除資料內容
Range.ClearFormats清除資料格式
Range.ClearComments清除註解
expression.AutoFit:自動調整列高和欄寬
Range.FillDown、Range.FillUp、Range.FillLeft、Range.FillRight填滿
Range.Offset(RowOffset,ColumnOffset)指定區域的位移列與行
範例:
SubMoveActive()
Worksheets("Sheet1").Activate
Range("A1:D10").Select
ActiveCell.Value="MonthlyTotals"
ActiveCell.Offset(0,1).Activate
EndSub
程式語法:
Dim陳述式(變數)
Dimvarname[As[New]type]
type包括Byte、Boolean、Integer、Long、Single、Double、Date、String、Object等
Set陳述式(物件)
Setobjectvar={[New]objectexpression|Nothing}
例:SetRangeA=Range("A1:B2")
範例:
SubRandom()
DimmyRangeAsRange
SetmyRange=Worksheets("Sheet1").Range("A1:D5")
myRange.Formula="=RAND()"
myRange.Font.Bold=True
EndSub
With多種屬性設定
With物件
.屬性1=設定值
.屬性2=設定值
....EndWith
範例:
SubAddNew()
SetNewBook=Workbooks.Add
WithNewBook
.Title="AllSales"
.Subject="Sales"
.SaveAsFilename:="Allsales.xls"
EndWith
EndSub
Array陣列
Array(Range1,Range2,....)
範例:
SubSeveral()
Worksheets(Array("Sheet1","Sheet2","Sheet4")).Select
EndSub
InputBox函數
InputBox("文字說明",[,title][,default][,xpos][,ypos][,helpfile,context])
MsgBox函數
MsgBox"文字說明"
Union將多個範圍合併成單一Range物件
Union(Range1,Range2,...)
範例:
SubMultipleRange()
Dimr1,r2,myMultipleRangeAsRange
Setr1=Sheets("Sheet1").Range("A1:B2")
Setr2=Sheets("Sheet1").Range("C3:D4")
SetmyMultipleRange=Union(r1,r2)
myMultipleRange.Font.Bold=True
EndSub
For...Next陳述式
Forcounter=starttoend[stepstepvalue]
[statements]
[ExitFor]
[statements]
Next[counter]
範例:
SubCycleThrough()
DimCounterAsInteger
ForCounter=1To20
Worksheets("Sheet1").Cells(Counter,3).Value=Counter
NextCounter
EndSub
ForEach...Next陳述式
ForEachelementIngroup
[statements]
[ExitFor]
[statements]
Next[element]
範例:
SubApplyColor()
ConstLimitAsInteger=25
ForEachcInRange("MyRange")
Ifc.Value>LimitThen
c.Interior.ColorIndex=27
EndIf
Nextc
EndSub
Do...Loop陳述式
Do[{While|Until}condition]
[statements]
[ExitDo]
[statements]
Loop
或
Do
[statements]
[ExitDo]
[statements]
Loop[{While|Until}condition]
If...Then...Else...陳述式
IfconditionThen[statements][Elseelsestatements]
或
IfconditionThen
[statements]
[ElseIfcondition-nThen
[elseifstatements]...
[Else
[elsestatements]]
EndIf
全站熱搜
創作者介紹
alyoou
電腦學習園地
alyoou發表在痞客邦留言(0)人氣()
E-mail轉寄
全站分類:數位生活個人分類:Excel此分類上一篇:Excel2010進階第1節公式修正
此分類下一篇:Excelvba指令參考
上一篇:VisualBasic2010計時器控制項
下一篇:AutoIT
歷史上的今天
2011:AutoIT
2011:VisualBasic2010計時器控制項
2011:VisualBasic2010PictureBox
2011:VisualBasic2010狀態列控制項
2011:VisualBasic2010工具列控制項-項目
2011:VisualBasic2010功能表控制項
▲top
留言列表
發表留言
參觀人氣
本日人氣:
累積人氣:
文章分類
PSP(1)棒球(1)ProE(7)測試(10)騎鐵馬(4)燒錄軟體(0)學習(3)MV(29)感人(3)好玩(16)新奇(37)音樂(3)教學(41)VB程式設計(38)IOS(1)勵志(2)Windows7(10)windows8(1)防毒防駭相關(11)Access(18)影音教學(9)影像處理(3)PowerPoint(27)硬體維修DIY(43)會聲會影(2)部落格相關(8)Outlook(11)軟體(49)OFFICE(7)AutoCAD(86)Excel(67)Word(30)筆記(5)電腦網路(22)未分類文章(44)
回到頁首
回到主文
免費註冊
客服中心
痞客邦首頁
©2003-2022PIXNET
關閉視窗
延伸文章資訊
- 1Excel VBA 的小技巧- 01 - Perton 網誌
在同一個活頁簿中,可以用Activate 來切換到指定名稱的工作表。 例如:從Sheet1 要切換到Sheet3 Sheets("Sheet3").Activate.
- 2Excel VBA 程式設計教學:活頁簿、工作表與儲存格- 頁5
VBA 的 Workbooks 物件代表Excel 目前開啟的活頁簿,如果需要在程式中同時處理多本活頁簿的資料時,就會需要用到它。例如要把 活頁簿1 中的第一張工作 ...
- 3Excel VBA 常用物件介紹
例如:宣告一個活頁簿物件actWB,然後指定為目前作用中活頁簿,寫法如下: ... 在專案視窗要建立事件的工作表上快按兩下,就會開啟該工作表的程式碼視窗。
- 4Excel 開啟指定工作表 - 軟體兄弟
1. ... 761Excel 中設置如何同步滾動多個工作表的方法. ,2015年12月24日— VBA 的Workbooks 物件代表Excel 目前開啟的活頁簿,如果需要在程式中... 例如...
- 5Excel VBA 相關語法 - 電腦學習園地
Excel VBA線上教學 EXCEL常用的物件 Workbook 活頁簿 Workbooks 活頁簿集合 Workbooks("filename" ... Before := Workshee...