Salve a tutti, scusate anticipatamente per le bestialità che posterò qui sotto ma sono un neofita del VB.NET.
Il problema che ho è questo: ho un file doc con una tabella fatta in un certo modo che devo popolare per scrivere un registro dati.Ad ogni ciclo, corrispondente ad una nuova pagina di ripopolare il file senza salvarlo. Stavo provando, per stampare in un unica soluzione di aggiungere mano a mano una pagina in un nuovo file doc, ma non riesco mi rimane nel file salvato solo l'ultima pagina che è stata creata.
In alternativa c'è il modo di fare una coda di stampa ?
Grazie anticipatamente.
codice:
Dim objword As New Microsoft.Office.Interop.Word.Application
Dim oDoc As New Microsoft.Office.Interop.Word.Document
objword.Documents.Open("C:\db\registro.doc")
'riordina preventivamente per progressivo i dati
Form2.myBind.Sort = "intcod ASC"
Dim prima_pag As Integer = ComboBox1.SelectedItem
Dim ultima_pag As Integer = ComboBox2.SelectedItem
For j = prima_pag To ultima_pag
For i = 3 To 32
' objword.ActiveDocument.Tables.Item(1).Rows.Add()
objword.ActiveDocument.Tables.Item(1).Cell(i, 1).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intcod").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 2).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("sograg").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 3).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("inttrg").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 4).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("matcat").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 5).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("matmrv").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 6).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intdat").ToShortDateString
objword.ActiveDocument.Tables.Item(1).Cell(i, 7).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intcwc").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 8).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intlmm").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 9).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intpne").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 10).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("matmrt").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 11).Range.Text = ""
objword.ActiveDocument.Tables.Item(1).Cell(i, 12).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intnmt").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 13).Range.Text = ""
If (Form2.myBind(i - 3 + (j - 1) * 30)("intcwi") < 1) Then
objword.ActiveDocument.Tables.Item(1).Cell(i, 14).Range.Text = Format(Form2.myBind(i - 3 + (j - 1) * 30)("intcwi"), "0.000")
Else
objword.ActiveDocument.Tables.Item(1).Cell(i, 14).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intcwi")
End If
objword.ActiveDocument.Tables.Item(1).Cell(i, 15).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intnaz").ToString
objword.ActiveDocument.Tables.Item(1).Cell(i, 16).Range.Text = Form2.myBind(i - 3 + (j - 1) * 30)("intkmt").ToString
Next
objword.ActiveDocument.Select()
objword.Selection.Copy()
oDoc.Activate()
objword.Selection.Paste()
objword.Selection.InsertBreak()