1、激活工作簿
用 Activate 方法激活工作簿后,该工作簿将放在活动窗口中。下述过程激活已打开的工作簿“MyBook.xls”。
Sub MakeActive()
Workbooks("MyBook.xls").Activate
End Sub
2、创建新工作簿
如果要用 Visual Basic 创建新的工作簿,应使用 Add 方法。下述过程创建了新工作簿。Microsoft Excel 自动将该工作簿命名为“BookN”,其中 N 是下一个可用的数字。新工作簿将成为活动工作簿。
Sub AddOne()
Workbooks.Add
End Sub
创建新工作簿的较好的方法是将其赋给一个对象变量。下例中,由
Add
方法返回的
Workbook
对象赋给了对象变量
newBook。然后,又设置了
newBook
的若干属性。使用对象变量可以很容易地控制新工作簿。
Sub AddNew()
Set newBook = Workbooks.Add
With newBook
.Title = "1995 Sales"
.Subject = "Sales"
.SaveAs filename:="95Sales.xls"
End With
End Sub
3、打开工作簿
用 Open 方法打开一个工作簿时,该工作簿将成为 Workbooks 集合的成员。下述过程打开 C 盘上“MyFolder”文件夹内的工作簿“MyBook.xls”。
Sub OpenUp()
Workbooks.Open("C:/MyFolder/MyBook.xls")
End Sub
4、用编号引用工作表
编号是赋予工作表的连续的数字,这些数字的顺序,是根据同一类型的工作表的标签位置按由左而右的顺序确定的。下述过程使用 Worksheets 属性激活活动工作簿上的第一张工作表。
Sub FirstOne()
Worksheets(1).Activate
End Sub
如果要处理所有类型的工作表(工作表、图表、模块表和对话框编辑表),可用 Sheets 属性。下述过程激活工作簿中的第四张工作表。
Sub FourthOne()
Sheets(4).Activate
End Sub
注意 移动、添加或删除工作表时,编号顺序将会改变。
5、用名称引用工作表
使用 Worksheets 属性和 Charts 属性时,可用名称标识工作表。下述语句激活活动工作簿内的不同工作表。
Worksheets("Sheet1").Activate
Charts("Chart1").Activate
DialogSheets("Dialog1").Activate
可用 Sheets 属性返回工作表、图表、模块表或对话框编辑表;Sheets 集合包含了所有这些表。下例激活活动工作簿内的图表“Chart1”。
Sub ActivateChart()
Sheets("Chart1").Activate
End Sub
注意 嵌入到工作表上的图表是 ChartObjects 集合的成员,而那些位于单独的表上的图表则属于 Charts 集合。
6、将文档保存为 Web 页
在 Microsoft Excel 2000 中,可以将工作簿、工作表、图表、区域、查询表、数据透视表报表、打印区域或自动筛选区域保存到 Web 页中。也可以直接在 Excel 中编辑 HTML 文件。
将文档保存为 Web 页
将文档保存为 Web 页是一个创建并保存 HTML 文件及其支持文件的过程。要完成此过程,可使用 SaveAs 方法,如下例所示,此示例将活动工作簿保存为文件“C:/Reports/myfile.htm”。
ActiveWorkbook.SaveAs _
Filename:="C:/Reports/myfile.htm", _
FileFormat:=xlHTML
自定义 Web 页
通过设置 DefaultWebOptions 对象和 WebOptions 对象的属性,用户可以自定义 HTML 文档的外观、内容、浏览器支持、编辑支持、图形格式、屏幕分辨率、文件组织和编码。DefaultWebOptions 对象中包含应用程序级别的属性。而任何具有相同名称的工作簿级别的设置(包含在 WebOptions 对象中)会覆盖这些设置。
设置完属性后,可以使用 Publish 方法将工作簿、工作表、图表、区域、查询表、数据透视表报表、打印区域或自动筛选区域保存到 Web 页中。下例设置了一些应用程序级别的属性,然后又设置了活动工作簿的 AllowPNG 属性,而此设置将覆盖应用程序级别的默认设置。最后,本示例将该区域保存为“C:/Reports/1998_Q1.htm”。
With Application.DefaultWebOptions
.RelyonVML = True
.AllowPNG = True
.PixelsPerInch = 96
End With
With ActiveWorkbook
.WebOptions.AllowPNG = False
With .PublishObjects(1)
.FileName = "C:/Reports/1998_Q1.htm"
.Publish
End With
End With
也可以直接将文件保存到 Web 服务器上。下例将一个区域保存到 Web 服务器上,假定该 Web 页的 URL 地址为 http://example.homepage.com/annualreport.htm。
With ActiveWorkbook
With .WebOptions
.RelyonVML = True
.PixelsPerInch = 96
End With
With .PublishObjects(1)
.FileName = _
"http://example.homepage.com/annualreport.htm"
.Publish
End With
End With
在 Microsoft Excel 中打开 HTML 文档
要在 Excel 中编辑 HTML 文档,请首先使用 Open 方法打开该文档。下例打开文件“C:/Reports/1997_Q4.htm”以便进行编辑。
Workbooks.Open Filename:="C:/Reports/1997_Q4.htm"
打开文件后,就可以通过设置 DefaultWebOptions 和 WebOptions 对象的属性自定义该 HTML 文档的外观、内容、浏览器支持、编辑支持、图象格式、屏幕分辨率、文件组织和编码。
7、用 A1 样式的记号引用单元格和单元格区域
可在 Range 方法中以 A1 样式的记号引用单元格和单元格区域。下述 Sub 过程将单元格区域 A1:D5 的字体设置为加粗。
Sub FormatRange()
Workbooks("Book1").Sheets("Sheet1").Range("A1:D5") _
.Font.Bold = True
End Sub
下表演示了用于 Range 方法的一些 A1-样式的引用。
|
引用 |
含义 |
|
|
单元格“A1” |
|
|
从单元格“A1”到单元格“B5”的区域 |
|
|
多块的选定区域 |
|
|
“A”列 |
|
|
第一行 |
|
|
从“A”列到“C”列的区域 |
|
|
从第一行到第五行的区域 |
|
|
第 1、3 和 8 行 |
|
|
“A”列、“C”列和“F”列 |
8、用编号引用单元格
可用
Cells
属性及行号和列标引用单个单元格。该属性返回代表单个单元格的
Range
对象。下例中,Cells(6,1)
返回工作表“Sheet1”上的单元格“A6”,然后将
Value
属性设置为
10。
Sub EnterValue()
Worksheets("Sheet1").Cells(6, 1).Value = 10
End Sub
因为可用变量代入单元格索引值,所以 Cells 属性非常适于在单元格区域中循环,如下例所示。
Sub CycleThrough()
Dim counter As Integer
For counter = 1 To 20
Worksheets("Sheet1").Cells(counter, 3).Value = counter
Next counter
End Sub
注意 如果要同时对某一区域内的所有单元格修改属性或应用方法,可用 Range 属性。有关的详细内容,请参阅“用 A1 样式的记号引用单元格和单元格区域”。
9、引用行或列
可用
Rows
属性或
Columns
属性处理整行或整列。这两个属性返回代表单元格区域的
Range
对象。下例中,用
Rows(1)
返回工作表“Sheet1”上的第一行,然后将该行的
Font
对象的
Bold
属性设置为
True。
Sub RowBold()
Worksheets("Sheet1").Rows(1).Font.Bold = True
End Sub
下表演示了使用 Rows 属性和 Columns 属性的一些行和列的引用。
|
引用 |
含义 |
|
|
第一行 |
|
|
工作表上所有的行 |
|
|
第一列 |
|
|
第一列 |
|
|
工作表上所有的列 |
如果要同时处理若干行或列,可先创建一个对象变量,然后用 Union 方法把对 Rows 属性或 Columns 属性的多个调用组合起来。下例将活动工作簿中第一张工作表上的第一行、第三行和第五行的字体设置为加粗。
Sub SeveralRows()
Worksheets("Sheet1").Activate
Dim myUnion As Range
Set myUnion = Union(Rows(1), Rows(3), Rows(5))
myUnion.Font.Bold = True
End Sub
10、用快捷记号引用单元格
可用方括号将 A1 样式的引用或命名区域的名称括起来,作为 Range 属性的快捷方式。这样就不必键入“Range”和引号,如下述各例所示。
Sub ClearRange()
Worksheets("Sheet1").[A1:B5].ClearContents
End Sub
Sub SetValue()
[MyRange].Value = 30
End Sub
6709

被折叠的 条评论
为什么被折叠?



