VBScript Excel.Worksheet 对象
最后修改于 2025 年 4 月 9 日
VBScript 中的 Excel.Worksheet
对象代表 Excel 工作簿中的单个工作表。它提供了用于操作工作表数据和格式的方法和属性。此对象是 Excel 自动化接口的一部分,可以通过 VBScript 访问。
使用 Worksheet
,您可以读取和写入单元格值、设置单元格格式以及管理工作表结构。它是使用 VBScript 自动执行 Excel 任务的关键。本教程通过实际示例涵盖 Worksheet
的用法。
工作表对象概述
Worksheet
对象是 Worksheets
集合的成员。每个工作表包含按行和列组织的单元格。您可以通过名称或索引从集合中访问工作表。
关键属性包括 Name
、Cells
和 Range
。重要方法包括 Activate
、Copy
和 Delete
。理解此对象有助于创建可靠的 Excel 自动化脚本。
访问工作表
此示例演示了如何访问 Excel 工作簿中的工作表。它同时显示了按名称和按索引的方法。该脚本创建一个 Excel 实例并访问第一个工作表。
Set excel = CreateObject("Excel.Application") Set workbook = excel.Workbooks.Add() ' Access by index (1-based) Set sheet1 = workbook.Worksheets(1) ' Access by name Set sheet2 = workbook.Worksheets.Add() sheet2.Name = "DataSheet" Set namedSheet = workbook.Worksheets("DataSheet") excel.Visible = True WScript.Echo "Active sheet: " & namedSheet.Name ' Cleanup Set namedSheet = Nothing Set sheet1 = Nothing Set workbook = Nothing Set excel = Nothing
该脚本创建一个 Excel 应用程序并添加一个新的工作簿。它通过索引(1)访问第一个工作表,并通过名称访问另一个工作表。使用 Name
属性显示工作表名称。
将数据写入单元格
此示例展示了如何将数据写入工作表单元格。它同时演示了单个单元格访问和范围操作。值被写入工作表中的特定单元格。
Set excel = CreateObject("Excel.Application") Set workbook = excel.Workbooks.Add() Set sheet = workbook.Worksheets(1) ' Write to individual cells sheet.Cells(1, 1).Value = "Product" sheet.Cells(1, 2).Value = "Price" ' Write using Range sheet.Range("A2").Value = "Laptop" sheet.Range("B2").Value = 999.99 ' Write to multiple cells sheet.Range("A3:B3").Value = Array("Phone", 599.99) excel.Visible = True ' Cleanup Set sheet = Nothing Set workbook = Nothing Set excel = Nothing
该脚本将标题写入第 1 行,并将产品数据放在下方。它同时使用了 Cells
和 Range
属性。Array
函数一次写入多个值。Excel 窗口将可见以显示结果。
从工作表读取数据
此示例演示了如何从工作表单元格读取数据。它展示了如何从单个单元格和范围检索值。读取的值使用 WScript.Echo
显示。
Set excel = CreateObject("Excel.Application") Set workbook = excel.Workbooks.Add() Set sheet = workbook.Worksheets(1) ' Write sample data sheet.Range("A1:B2").Value = Array(Array("Item", "Qty"), Array("Apples", 5)) ' Read individual cell item = sheet.Cells(2, 1).Value quantity = sheet.Cells(2, 2).Value ' Read range Set dataRange = sheet.Range("A1:B2") WScript.Echo "Data range has " & dataRange.Rows.Count & " rows" ' Display values WScript.Echo item & ": " & quantity ' Cleanup Set dataRange = Nothing Set sheet = Nothing Set workbook = Nothing Set excel = Nothing
该脚本首先将示例数据写入一个范围。然后它从特定单元格和整个范围读取值。显示范围的行数,然后是特定单元格的值。
格式化工作表单元格
此示例演示了工作表中的基本单元格格式设置。它展示了如何设置字体属性、单元格颜色和数字格式。格式设置使数据更具可读性和专业性。
Set excel = CreateObject("Excel.Application") Set workbook = excel.Workbooks.Add() Set sheet = workbook.Worksheets(1) ' Write data sheet.Range("A1:B1").Value = Array("Date", "Amount") sheet.Range("A2:B2").Value = Array(Date(), 1250.75) ' Format headers With sheet.Range("A1:B1").Font .Bold = True .Color = RGB(255, 255, 255) End With ' Format cells sheet.Range("A1:B1").Interior.Color = RGB(0, 0, 128) sheet.Columns("A").NumberFormat = "mm/dd/yyyy" sheet.Columns("B").NumberFormat = "$#,##0.00" excel.Visible = True ' Cleanup Set sheet = Nothing Set workbook = Nothing Set excel = Nothing
该脚本将写入示例数据并应用各种格式选项。标题获得白色粗体文本和深蓝色背景。日期和货币列获得适当的数字格式。Excel 窗口将可见以显示结果。
处理多个工作表
此示例展示了如何处理工作簿中的多个工作表。它演示了添加、命名和复制工作表。该脚本还展示了如何在工作表之间导航。
Set excel = CreateObject("Excel.Application") Set workbook = excel.Workbooks.Add() ' Add and name new worksheets Set sheet1 = workbook.Worksheets(1) sheet1.Name = "Main" Set sheet2 = workbook.Worksheets.Add() sheet2.Name = "Backup" ' Copy data between sheets sheet1.Range("A1").Value = "Original Data" sheet1.Range("A1").Copy sheet2.Range("A1") ' Activate different sheets sheet2.Activate WScript.Echo "Active sheet: " & excel.ActiveSheet.Name excel.Visible = True ' Cleanup Set sheet2 = Nothing Set sheet1 = Nothing Set workbook = Nothing Set excel = Nothing
该脚本创建一个包含两个已命名工作簿的工作簿。它将数据从第一个工作表复制到第二个工作表。Activate
方法用于在工作表之间切换。在显示 Excel 之前,将显示活动工作表的名称。
来源
在本文中,我们探讨了 VBScript 中的 Worksheet
对象,涵盖了它的用法和实际应用。从基本单元格操作到格式设置和多工作表管理,这些示例展示了 Excel 自动化。有了这些知识,您就可以创建强大的 Excel 自动化脚本。