我正在尝试使用 Word 2010 为编程项目测试计划创建模板。我创建了一个模型模板来展示我想要做什么。
我想做的是能够单击 Word 功能区上的某些内容,并让模板生成下一个测试表并对标题进行排序。生成表格后,我将填写表格字段以进行测试。
有人可以告诉我在 Word 帮助或其他地方查找什么以便我可以创建此模板吗?
我个人会为此创建一个宏,或者您可以使用代码将其嵌入到您的模板中,以添加菜单项并添加类似以下内容。(它非常粗糙,但您可以使用它来生成一个包含布局和数字升序的表格),它不像知道上一个测试在哪里停止那样动态,但应该是一个起点。)
Dim iCount As Integer
iCount = CInt(InputBox("How many tables?", "Table Count", 1))
For icurtable = 1 To iCount
Dim oTableRange As Paragraph
Dim oTable As Table
Dim oCaption As Paragraph
Set oCaption = ActiveDocument.Paragraphs.Add
Call oCaption.Range.InsertBefore(CStr(icurtable))
Set oTableRange = ActiveDocument.Paragraphs.Add
Set oTable = oTableRange.Range.Tables.Add(oTableRange.Range, 4, 1, True, True)
oTable.Rows.First.Cells(1).Range.InsertBefore ("Setup:")
oTable.Rows(2).Cells(1).Range.InsertBefore ("Test:")
oTable.Rows(3).Cells(1).Range.InsertBefore ("Expected Response:")
oTable.Rows(4).Cells(1).Range.InsertBefore ("Restore")
Call oTableRange.Range.InsertAfter(vbCrLf)
Next
如果其他人遇到这个问题,我会提供我的解决方案。我决定在表中创建一个表,这样测试用例编号将在左侧,人们希望看到它。
使用 Sacha 的答案作为模型,并自由使用宏记录器,我想出了这个 VBA 宏,它可以完成我想要的大部分工作。
Sub InsertTestTable()
'
' InsertTestTable Macro
' This macro inserts a test table into the document.
'
Dim oTable As Table
Dim iTable As Table
Set oTable = ActiveDocument.Tables.Add(Selection.Range, 1, 2, _
wdWord9TableBehavior, wdAutoFitContent)
Selection.TypeText ("1.")
Selection.MoveRight
Set iTable = ActiveDocument.Tables.Add(Selection.Range, 4, 2, _
wdWord9TableBehavior, wdAutoFitContent)
iTable.Rows(1).Cells(1).Range.InsertBefore ("Setup:")
iTable.Rows(2).Cells(1).Range.InsertBefore ("Test:")
iTable.Rows(3).Cells(1).Range.InsertBefore ("Expected Response:")
iTable.Rows(4).Cells(1).Range.InsertBefore ("Restore:")
iTable.Rows(1).Cells(2).Range.Select
End Sub
现在,我需要做的就是按照我想要的方式格式化表格,并弄清楚如何让数字在文档中的一组表格中上升。