【正文】
Else = True檢查是否工作簿自動(dòng)恢復(fù)功能開啟,如果沒有則開啟該功能示例0319:檢查工作簿的自動(dòng)恢復(fù)功能(EnableAutoRecover屬性)Sub UseAutoRecover() MsgBox 將當(dāng)前工作簿中工作表Sheet1內(nèi)單元格A1命名為myName.在應(yīng)用本示例前,應(yīng)保證工作簿中有圖表或形狀,以察看效果。 MsgBox 顯示當(dāng)前工作簿中的所有圖形 MsgBox 僅顯示當(dāng)前工作簿中所有圖形的占位符 MsgBox 隱藏當(dāng)前工作簿中的所有圖形 (000000000)End Sub示例說明:DeleteNumberFormat方法將從指定的工作簿中刪除自定義的數(shù)字格式。示例0316:刪除自定義數(shù)字格式(DeleteNumberFormat方法)Sub DeleteNumberFormat() 而不是1 MsgBox 此時(shí),當(dāng)前單元格中的數(shù)字乘以3等于: amp。 = True pValue pValue = * 3 = 1 / 3 Dim pValue該方法只是對(duì)未打開的文件進(jìn)行重命名,如果該文件已經(jīng)打開,使用該方法會(huì)提示錯(cuò)誤。 End IfEnd Function示例0314:對(duì)未打開的工作簿進(jìn)行重命名(Name方法)Sub rename() Else If Err = 0 Then On Error Resume Next End IfEnd Sub‘ Private Function SheetExists(sname) As Boolean Else If b = True Then Dim b As Boolean示例0313:測試工作簿中是否包含指定工作表(Sheets屬性)Sub testSheetExists() End With End With Cells(i + 1, 3) = .Value End Select Case msoPropertyTypeString Case msoPropertyTypeNumber Case msoPropertyTypeFloat Case msoPropertyTypeDate Case msoPropertyTypeBoolean Cells(i + 1, 1) = .Name For i = 1 To . Range(A1:C1). = True Cells(1, 2) = 類型 Dim i As Long On Error GoTo 0 = 工作簿屬性 If 0 Then在名為工作簿屬性的工作表中添加信息,若該工作表不存在,則新建一個(gè)工作表 On Error Resume Next上述示例代碼將顯示當(dāng)前工作簿保存時(shí)的日期和時(shí)間。 保存, , MsgBox 本工作簿已于 amp。 工作簿未保存. If SaveTime = Then On Error Resume Next End IfEnd Sub示例0312:訪問工作簿的內(nèi)置屬性(BuiltinDocumentProperties屬性)[示例031201]Sub ShowWorkbookProperties() Else If Then MsgBox 本工作簿可讀寫. MsgBox 本工作簿已經(jīng)是以只讀方式打開 123End Sub示例0311:工作簿的一些通用屬性示例Sub testGeneralWorkbookInfo()示例0310:解除工作簿保護(hù)(UnProtect方法)Sub UnprotectWorkbook() MsgBox 保護(hù)工作簿結(jié)構(gòu)和窗口,密碼為123 MsgBox 保護(hù)工作簿窗口,密碼為123 MsgBox 保護(hù)工作簿結(jié)構(gòu),密碼為123 If i = n Then MsgBox 最后一個(gè)工作簿已被激活. 個(gè)工作簿被激活,還要繼續(xù)嗎?, vbYesNo) b = MsgBox(第 amp。 For i = 1 To n MsgBox 依次激活已經(jīng)打開的工作簿 Dim n As Long, i As Long Workbooks(工作簿名).ActivateEnd Sub示例說明:Activate方法激活一個(gè)工作簿,使該工作簿為當(dāng)前工作簿。 Chr(10) amp。 MsgBox End Sub示例0307:取得當(dāng)前打開的工作簿數(shù)(Count屬性)Sub WorkbookNum()[示例030604]Sub CreateBak2() MsgBox 保存工作簿并建立備份工作簿 fnameEnd Sub示例說明:本示例將當(dāng)前工作簿以一個(gè)新名(即new加原名)保存在默認(rèn)文件夾中。 \ amp。 folderName = newName amp。 oldName amp。 oldName oldName = Dim oldName As String, newName As String如果文件夾中該工作簿名已存在,則提示是否替換原工作簿。該方法有12個(gè)參數(shù),均為可選參數(shù)。 MsgBox 將工作簿以指定名保存在默認(rèn)文件夾中. Next wbEnd Sub示例說明:本示例保存原來已存在且已打開的工作簿。 For Each wb In Workbooks End Sub[示例030503]Sub SaveAllWorkbook2() MsgBox 保存所有打開的工作簿后退出Excel. End Sub[示例030502]Sub SaveAllWorkbook1()示例0305:保存工作簿(Save方法)[示例030501]Sub SaveWorkbook()OpenText方法的作用是導(dǎo)入一個(gè)文本文件,并將其作為包含單個(gè)工作表的工作簿進(jìn)行分列處理,然后在此工作表中放入經(jīng)過分列處理的文本文件數(shù)據(jù)。 Filename:=文本文件所在的路徑/文本文件名, _ 39。 fname = D:\ Dim fname As StringOpen方法共有15個(gè)參數(shù),其中參數(shù)FileName為必需的參數(shù),其余參數(shù)可選。示例0303:打開工作簿(Open方法)[示例030301]Sub openWorkbook1() Filename:=D:/End Sub示例說明:本示例使用了Add方法和SaveAs方法。Set Wk = Next iEnd Sub示例0302:添加并保存新工作簿Sub AddSaveAsNewWorkbook() For i = 2 To 10 (1, 2) = 產(chǎn)品名稱 = 產(chǎn)品匯總表 Set wb = Dim i As Long Dim wb As Workbook MsgBox 將創(chuàng)建一個(gè)新工作簿.下面對(duì)Workbook對(duì)象的重要的方法和屬性以及其它一些可能涉及到的方法和屬性進(jìn)行示例介紹,同時(shí),后面的示例也深入介紹了一些工作簿對(duì)象操作的方法和技巧。By fanjy in 2006923第三章 End Sub示例說明:本示例運(yùn)行后,將關(guān)閉當(dāng)前窗口。 lWinHeightEnd Sub示例0229:關(guān)閉窗口(Close方法)Sub CloseWindow() Chr(10) amp。 MsgBox 當(dāng)前選定單元格寬度為: amp。 lWinHeight = .PointsToScreenPixelsY(.) With ActiveWindow示例0228:測試所選單元格寬度和高度Sub testWidthOrHeight()如果同時(shí)指定了ToLeft和ToRight,則窗口內(nèi)容滾動(dòng)的列數(shù)由這兩個(gè)參數(shù)的差值決定,例如,如果ToLeft為3,ToRight為 6,則窗口內(nèi)容向右滾動(dòng)三列。 down:=3End Sub示例說明:SmallScroll方法按行或列滾動(dòng)窗口,(Down, Up, ToRight, ToLeft),帶有4個(gè)可選的參數(shù),其中參數(shù)Down表示將窗口內(nèi)容向下滾動(dòng)的行數(shù);參數(shù)Up表示將窗口內(nèi)容向上滾動(dòng)的列數(shù);參數(shù)ToRight表示將窗口內(nèi)容向右滾動(dòng)的列數(shù);參數(shù)ToLeft表示將窗口內(nèi)容向左滾動(dòng)的列數(shù)。[示例022702]Sub testScroll2()如果同時(shí)指定了ToLeft和ToRight,窗口內(nèi)容左右方向滾動(dòng)的頁數(shù)由這兩個(gè)參數(shù)的差決定,例如,如果ToLeft為3,ToRight為 6,則窗口向右滾動(dòng)三頁。 Down:=3, ToRight:=1End Sub示例說明:LargeScroll方法將按頁滾動(dòng)窗口的內(nèi)容,(Down, Up, ToRight, ToLeft),帶有4個(gè)可選的參數(shù),其中參數(shù)Down表示將窗口內(nèi)容向下滾動(dòng)的頁數(shù);參數(shù)Up表示將窗口內(nèi)容向上滾動(dòng)的頁數(shù);參數(shù)ToRight表示將窗口內(nèi)容向右滾動(dòng)的頁數(shù);參數(shù)ToLeft表示將窗口內(nèi)容向左滾動(dòng)的頁數(shù)。 Windows(1).CaptionEnd Sub示例0227:滾動(dòng)窗口(LargeScroll方法和SmallScroll方法)[示例022701]Sub testScroll1() MsgBox 激活工作簿: amp。 Windows(1).Caption Chr(10) amp。 MsgBox 激活工作簿: amp。 Windows(1).Caption MsgBox 激活工作簿: amp。 MsgBox 、 amp。本功能僅對(duì)窗口中當(dāng)前的活動(dòng)工作表起作用,若要對(duì)其他工作表使用本屬性,必須先激活該工作表。 = 100End Sub示例說明:Zoom屬性將以百分?jǐn)?shù)的形式(100表示正常大小,200表示雙倍大小,以此類推)返回或設(shè)置窗口的顯示大小。 = 200 = True示例0225:設(shè)置窗口大小(Zoom屬性)Sub testWindowDisplaySize() End Sub示例說明:本示例中,NewWindow方法為指定窗口(本例中為當(dāng)前活動(dòng)窗口)創(chuàng)建一個(gè)副本,然后顯示該副本窗口的窗口號(hào)。 示例0224:創(chuàng)建窗口(NewWindow方法)Sub testNewWindow() Windows(1). amp。 End Sub示例0223:返回窗口中可見單元格區(qū)域(VisibleRange屬性)Sub testVisibleRange() = xlNormalView = xlPageBreakPreview示例0222:返回或設(shè)置窗口中顯示的視圖(View屬性)Sub testView()ResetPositionsSideBySide方法重置正在進(jìn)行并排比較的兩個(gè)工作表窗口的位置,例如,如果用戶將正在進(jìn)行比較的兩個(gè)工作表窗口中的其中一個(gè)窗框最小化或最大化,就可以使用ResetPositionsSideBySide方法重置顯示,以便這兩個(gè)窗口再次并排顯示。SyncScrollingSideBySide屬性設(shè)置是否將兩個(gè)窗口的滾動(dòng)保持同步,如果為True,在對(duì)文檔進(jìn)行并排比較的同時(shí)啟用窗口內(nèi)容的滾動(dòng)功能。 End Sub示例說明:在運(yùn)行本示例前,確保在本窗口外還打開了一個(gè)名為Book2的窗口,或者您打開了一個(gè)其它命名的窗口,相應(yīng)將上面程序中的Book2更換為您的窗口名。 Windows(Book2).WindowState = xlMinimized = True Book2示例0221:并排比較窗口Sub testCompare() = iTop = iLeft + 90 iLeft = = xlNormal Dim iTop As Long, iLeft As Long = iWinWidthEnd Sub示例說明:Height屬性和Width屬性必須在窗口處于正常顯示狀態(tài)(即不是最大化或最小化狀態(tài))時(shí)使用,否則會(huì)出錯(cuò)。 MsgBox 恢復(fù)原窗口大小 = iWinHeight / 2 iWinHeight = = xlNormal示例0219:改變窗口的高度和寬度Sub ChangeHeightAndWidth()運(yùn)行本示例后,將水平排列第一個(gè)窗口和第二個(gè)窗口,即每個(gè)窗口占用可使用的垂直空間的一半,占用所有水平空間。 .Left = 0 .Height = ah / 2 With Windows(2) .Left = 0 .Width = aw aw = Windows(1).Width + Windows(2).Width xlArrangeStyleTiled End Sub示例0218:水平排列兩個(gè)窗口Sub testWindowArrange() MsgBox 當(dāng)前窗口可用區(qū)域的