你目前正处于脱机状态,正在等待 Internet 重新连接

如何用 Visual Basic 中使用电子表格 Web 组件

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 235883
不再更新的 KB 内容免责声明
本文介绍那些 Microsoft 不再提供支持的产品。因此本文按“原样”提供,并且不再更新。
概要
如果要在自定义的 Visual Basic 解决方案中使用电子表格或计算引擎,您可以使用该 Microsoft Office Web Components 中包含此电子表格控件。本文讨论如何为 Visual Basic 窗体上的控件中插入电子表格并填充数据与电子表格。
更多信息
可以添加该 Office Web Components Visual Basic 中的窗体,添加任何其他 ActiveX 控件相同的方式。在 Office Web Components 中包含此 电子表格 控件是选项随 Visual Basic 将 DataGrid 控件不是更可靠。使用电子表格数据显示格式的数据、 计算公式,并允许用户交互。

重要提示: 若要查看,并使用任何在 Office Web Components 必须具有您的计算机上安装它们。使用 Microsoft Office 2000,安装该组件,或者如果您的公司中有一个 Office 2000 的站点许可证可以从您的 Intranet 下载组件。您的用户必须为很好地安装这些组件,并且必须有 Office 2000 许可证被覆盖。您和您的用户必须使用 Microsoft ie 4.01 或更高版本。

创建示例项目的步骤

  1. 在 Visual Basic 中创建一个新的标准 EXE 项目。默认情况下创建 Form1。
  2. 添加对 Microsoft Office Web Components 9.0 的引用。
  3. 将此电子表格控件从 Visual Basic 工具箱添加到窗体。
  4. 电子表格 控件可以显示和使用类似于一个的工作表或隐藏和用作页面上的可见控件的一个计算引擎中。
使用 电子表格 在 Visual Basic 中的控件是与工作表在 Excel 中处理几乎完全相同。方法和属性,用于处理电子表格组件是与自动化 Excel 时,将使用的内容相似。

填充电子表格控件

您可以将数据添加到 电子表格 控件,通过以下方法之一:
  • 将数据直接输入到网格。
  • 复制并粘贴一个 Excel 工作表、 文本的文件或 Word 文档中的数据。
  • 从文本文件或 Web 页导入数据。有关详细信息请参阅 LoadText 方法主题和联机帮助中的 HTMLURL 属性主题。
  • 编写代码以填充数据与电子表格。
请注意没有办法直接将此 电子表格 控件绑定到数据。

下面的过程填充,并设置 电子表格 控件 (NWind.mdb) 罗斯文示例数据库中的数据的格式:
Sub GetNwindData()    Dim rstEmployees As Object    Dim cnn As String    Dim strSQL As String    Dim fldCount As Integer    Dim intIRow As Integer    Dim intICol As Integer    Dim varData As Variant    'Create recordset and fill with records from Northwind sample database.    Set rstEmployees = CreateObject("ADODB.Recordset")    cnn = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\Program Files\Microsoft Visual Studio\VB98\nwind.mdb"    strSQL = "SELECT FirstName, LastName, Title, Extension FROM Employees ORDER BY LastName"    rstEmployees.Open strSQL, cnn, 3 ' adOpenStatic = 3        'Clear any existing values from the spreadsheet control.    Spreadsheet1.ActiveSheet.Cells(1, 1).Select    Spreadsheet1.ActiveSheet.UsedRange.Clear    'Add the field names as column headers.    For fldCount = 0 To rstEmployees.Fields.Count - 1        intIRow = intIRow + 1        Spreadsheet1.ActiveSheet.Cells(1, intIRow).Value = rstEmployees.Fields(fldCount).Name    Next    'Fill the control with data from the database.    Dim iNumCols As Integer    Dim iNumRows As Integer        iNumCols = rstEmployees.Fields.Count    iNumRows = rstEmployees.Recordcount    varData = rstEmployees.GetRows(iNumRows)        For intIRow = 1 To iNumRows        For intICol = 1 To iNumCols            Spreadsheet1.ActiveSheet.Cells(intIRow + 1, intICol).Value = varData(intICol - 1, intIRow - 1)        Next    Next    'Format the headers in row 1 with a Bold Font that is 11 points.    With Spreadsheet1.ActiveSheet.Range(Spreadsheet1.Cells(1, 1),Spreadsheet1.ActiveSheet.Cells(1, iNumCols)).Font        .Bold = True        .Size = 11    End With        'AutoFit the columns and make all text left-aligned.    With Spreadsheet1.ActiveSheet.Range(Spreadsheet1.Cells(1, 1),Spreadsheet1.ActiveSheet.Cells(iNumRows + 1, iNumCols))        .AutoFitColumns        .HAlignment = ssHAlignLeft    End WithEnd Sub				


请注意电子表格控件不是工作簿包含单个工作表。ActiveSheet 属性总是引用单个工作表。

获取帮助

创建对 Office Web Components 库的引用后,您可以通过对象浏览器或从 常规 选项卡的电子表格属性工具箱中访问帮助。您还可以找到并双击 Msowcvba.chm 上的帮助文件。若要获得帮助,请在使用特定关键词,突出显示该关键字并按 F1 键。有关创建引用和使用对象的信息模型帮助,请参阅 Visual Basic 或 Visual Basic 中的帮助,为应用程序。

您可以将图表控件绑定到电子表格控件中。在图表控件上的其他信息,请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
235885如何使用图表 Web 组件使用 VB
参考
有关 Office Web Components 的详细信息,请参阅第 12 章"使用 Web 技术"Microsoft Office 2000/视频基本程序员指南 》。

警告:本文已自动翻译

属性

文章 ID:235883 - 上次审阅时间:07/14/2004 18:59:24 - 修订版本: 1.2

Microsoft Office Spreadsheet Component 9.0

  • kbmt kbhowto kbofficewebspread KB235883 KbMtzh
反馈