-1

現在、このアプリケーションを作成して、レポートを新しい Word ドキュメントに印刷および作成しています。しかし、私はつまずきに遭遇しました。この新しい Microsoft word doc にデータを書き込んでいる間に、レポートが新しいページであるかどうかを確認する方法はありますか。たとえば、レポートが 10 ページを占めます。


コード:

Dim objWord 
As Word.Application
Dim objDoc As Word.Document
Dim objTable As Word.Table
Dim r As Integer, c As Integer
Dim pages1 As Pages
Dim pagecountbefore As Integer

objWord = CreateObject("Word.Application")
objWord.Visible = True
objDoc = objWord.Documents.Add

pagecountbefore = pages1.Count

objTable = objDoc.Tables.Add(objDoc.Bookmarks.Item("\endofdoc").Range, 3, 5)
objTable.Range.ParagraphFormat.SpaceAfter = 6
For r = 1 To 1000
    For c = 1 To 5
         If r = 1 Then
            Select Case c
                Case "1"
                    objTable.Cell(r, c).Range.Text = "PCI DSS Requirements "
                Case "2"
                    objTable.Cell(r, c).Range.Text = "Testing Procedures "
                Case "3"
                    objTable.Cell(r, c).Range.Text = "In Place"
                Case "4"
                    objTable.Cell(r, c).Range.Text = "Not in Place"
                Case "5"
                    objTable.Cell(r, c).Range.Text = "Target Date/ Comments"
            End Select
        Else
            If pagecountbefore<pages1.Count Then
                pagecountbefore = pages1.Count
                Select Case c
                    Case "1"
                        objTable.Cell(r, c).Range.Text = "PCI DSS Requirements "
                    Case "2"
                        objTable.Cell(r, c).Range.Text = "Testing Procedures "
                    Case "3"
                        objTable.Cell(r, c).Range.Text = "In Place"
                    Case "4"
                        objTable.Cell(r, c).Range.Text = "Not in Place"
                    Case "5"
                        objTable.Cell(r, c).Range.Text = "Target Date/Comments"
                End Select
            Else
              'print resultrs from database
            End If
        End If
    Next
Next
4

2 に答える 2

0

ワード文書のページ数を毎回確認して、何かを実行する if 句を作成できます。

次の方法でページを数えることができます。

myPageObject.Count //returns int

次に、データを書き込むたびに新しいページを確認します。

//Writing Data 
if(pagecountbefore < myObjectPage.Count){
    //Do Something 
}

または、while 句を使用して実行できます。

  while(pagecountbefore == myObjectPage.Count){
       //Do Something 
  }
于 2013-01-22T05:59:39.117 に答える
0

objTable.Rows(1).HeadingFormat = True と言うだけで、すべての行を挿入した後、テーブルの最初の行をヘッダー行に設定しないでください。

テーブルがまたがるすべてのページの上部に表示される場合

于 2016-09-09T14:22:15.810 に答える