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()

Rispondi quotando