Can anyone tell me why I am getting an blank page in my word document using the code below? I have a checklistbox on my form and for each checked item I want the same amount of pages in my word document. For instance, 3 items checked = 3 MS Word pages but its giving me 4 pages instead with the second page in the document being blank. I hope that made sense. Anyway here is my code:
Code:
Dim dt As DataTable
dt = XSdSponsor.GetData()
Dim wdApp As New Word.Application
wdApp.Visible = True
wdApp.Documents.Open("d:\testing.doc")
Dim pagebreak As Object = Word.WdBreakType.wdPageBreak
Dim checked_items As CheckedListBox.CheckedItemCollection
checked_items = cboMailMerge.CheckedItems
Dim item As Object
Dim bVal As Boolean = True
Dim Rng As Word.Range
For Each item In checked_items
Dim str As String = item.ToString()
For i As Integer = 0 To dt.Rows.Count - 1
If dt.Rows(i)("orgName").ToString() = str Then
Dim rng1 As Word.Range = wdApp.ActiveDocument.Bookmarks("ContactName1").Range()
Dim rng2 As Word.Range = wdApp.ActiveDocument.Bookmarks("CompanyName").Range()
Dim rng3 As Word.Range = wdApp.ActiveDocument.Bookmarks("StreetAddress").Range()
Dim rng4 As Word.Range = wdApp.ActiveDocument.Bookmarks("City").Range()
Dim rng5 As Word.Range = wdApp.ActiveDocument.Bookmarks("State").Range()
Dim rng6 As Word.Range = wdApp.ActiveDocument.Bookmarks("ZipCode").Range()
Dim rng7 As Word.Range = wdApp.ActiveDocument.Bookmarks("ContactName").Range()
Dim rng8 As Word.Range = wdApp.ActiveDocument.Bookmarks("EventName").Range()
If bVal = True Then
rng1.Text = dt.Rows(i)("orgFname").ToString() & " " & dt.Rows(i)("orgLname").ToString()
rng2.Text = dt.Rows(i)("orgName").ToString()
rng3.Text = dt.Rows(i)("orgSaddress").ToString()
rng4.Text = dt.Rows(i)("orgCity").ToString()
rng5.Text = dt.Rows(i)("orgState").ToString()
rng6.Text = dt.Rows(i)("orgZipcode").ToString()
rng7.Text = dt.Rows(i)("orgFname").ToString() & " " & dt.Rows(i)("orgLname").ToString()
rng8.Text = dt.Rows(i)("ReqEvent").ToString()
Else
Rng = wdApp.ActiveWindow.Selection.Bookmarks("\page").Range()
Rng.Select()
Rng.Document.ActiveWindow.Selection.Copy()
Rng.Select()
Rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
Rng.Select()
Rng.InsertBreak(pagebreak)
Rng.Paste()
rng1.Text = dt.Rows(i)("orgFname").ToString() & " " & dt.Rows(i)("orgLname").ToString()
rng2.Text = dt.Rows(i)("orgName").ToString()
rng3.Text = dt.Rows(i)("orgSaddress").ToString()
rng4.Text = dt.Rows(i)("orgCity").ToString()
rng5.Text = dt.Rows(i)("orgState").ToString()
rng6.Text = dt.Rows(i)("orgZipcode").ToString()
rng7.Text = dt.Rows(i)("orgFname").ToString() & " " & dt.Rows(i)("orgLname").ToString()
rng8.Text = dt.Rows(i)("ReqEvent").ToString()
End If
wdApp.ActiveDocument.Bookmarks.Add("ContactName1", CType(rng1, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("CompanyName", CType(rng2, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("StreetAddress", CType(rng3, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("City", CType(rng4, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("State", CType(rng5, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("ZipCode", CType(rng6, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("ContactName", CType(rng7, Word.Range))
wdApp.ActiveDocument.Bookmarks.Add("EventName", CType(rng8, Word.Range))
bVal = False
Exit For
End If
Next
Next item
If anyone could help it would be greatly appreciated.:)