ReportTable.GetCellText 方法 (Project)
返回 ReportTable 对象中指定单元格的文本值。
语法
expression。
GetCellText
(行,科尔)
表达 一个代表“ReportTable”对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
行 | 必需 | Long | 表中的行号。 |
Col | 必需 | Long | 表中的列号。 |
行 | 必需 | INT | |
Col | 必需 | INT |
返回值
String
指定表单元格的文本值。
备注
返回的字符串以换行符 ( chr(10)
结尾,这等效于 vbCrLf 字符) 。
示例
GetTableText 示例查找活动报表上的所有表,获取表中每个单元格的值,删除每个值 (换行符) 的最后一个字符,然后将表单元格值打印到 VBE 中的“即时”窗口中。 若要使用 GetTableText 宏,请使用 图表对象 主题中指定的值(例如示例)创建项目,然后执行以下步骤 (见图 1) :
手动创建报表。 例如,在功能区的“ 项目 ”选项卡上的“ 报表” 下拉列表中,选择“ 更多报表”。 在“ 报表 ”对话框中,在左窗格中选择“ 新建 ”,在右窗格中选择“ 空白 ”,然后选择“ 选择”。 在“ 报表名称 ”对话框中,键入“报表 1”。
向报表添加两个表。 在功能区的“设计”选项卡上的“报表工具”下,使用“插入”组中的“表”命令。
保留第一个表中的默认值,其中包括项目摘要任务的“名称”、“开始”、“完成时间”和“完成百分比”字段。 选择第一个表以显示“ 字段列表 ”任务窗格,然后选择“ 实际成本 ”和“ 剩余成本”。
选择第二个表。 在 “字段列表 ”任务窗格中,将 “筛选” 更改为“ 所有任务”,然后选择“ 实际成本 ”和“ 剩余成本”。 在表中,选择并删除 “开始” 列和 “完成” 列。
通过使用功能区上“插入”组中的“文本框”控件,向报表添加两个文本框。 例如,编辑第一个文本框以显示“项目摘要任务”,编辑第二个文本框以显示“任务”信息。
图 1. 示例报表包含两个表和三个文本框
Sub GetTableText()
Dim theReport As Report
Dim shp As shape
Dim theReportTable As ReportTable
Dim reportName As String
Dim row As Integer, col As Integer, i As Integer
Dim output As String
reportName = "Report 1"
For i = 1 To ActiveProject.Reports(reportName).Shapes.Count
Set shp = ActiveProject.Reports(reportName).Shapes(i)
Debug.Print shp.Name & "; ID = " & shp.ID
Next i
For Each shp In ActiveProject.Reports(reportName).Shapes
If shp.HasTable Then
Debug.Print vbCrLf & "Table name: " & shp.Name
For row = 1 To shp.Table.RowsCount
output = vbTab
For col = 1 To shp.Table.ColumnsCount
output = output & shp.Table.GetCellText(row, col)
output = left(output, Len(output) - 1) & vbTab
Next col
Debug.Print output
Next row
End If
Next shp
End Sub
运行 GetTableText 宏时,VBE 中的“即时”窗口将显示以下文本。 前五行显示默认情况下如何命名形状对象以及如何创建 ID 值。
TextBox 1; ID = 2
Table 2; ID = 3
Table 3; ID = 4
TextBox 4; ID = 5
TextBox 5; ID = 6
Table name: Table 2
Name Start Finish % Complete Actual Cost Remaining Cost
TestShapes Mon 5/14/12 Tue 5/31/12 58% $1,595.00 $2,125.00
Table name: Table 3
Name % Complete Actual Cost Remaining Cost
T1 100% $0.00 $0.00
T2 71% $1,280.00 $640.00
T3 44% $315.00 $765.00
T4 0% $0.00 $720.00
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。