0

我正在尝试使用 Word 2010 为编程项目测试计划创建模板。我创建了一个模型模板来展示我想要做什么。

项目测试计划模型

我想做的是能够单击 Word 功能区上的某些内容,并让模板生成下一个测试表并对标题进行排序。生成表格后,我将填写表格字段以进行测试。

有人可以告诉我在 Word 帮助或其他地方查找什么以便我可以创建此模板吗?

4

2 回答 2

1

我个人会为此创建一个宏,或者您可以使用代码将其嵌入到您的模板中,以添加菜单项并添加类似以下内容。(它非常粗糙,但您可以使用它来生成一个包含布局和数字升序的表格),它不像知道上一个测试在哪里停止那样动态,但应该是一个起点。)

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
于 2012-03-30T16:36:05.913 回答
0

如果其他人遇到这个问题,我会提供我的解决方案。我决定在表中创建一个表,这样测试用例编号将在左侧,人们希望看到它。

使用 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

现在,我需要做的就是按照我想要的方式格式化表格,并弄清楚如何让数字在文档中的一组表格中上升。

于 2012-03-30T19:04:08.180 回答