GERANDO UM RELATORIO PARA WORD

JFERREIRA25 07/10/2013 13:54:08
#429636
Galera to com um problema..... to fazendo que com um Datagredview busque por data as comandas do meu programa...
e tem um botão de impressão que faço com que ele gere um relatorio no word porém ele só gera sempre a primeira linha do datagrid na imagem a baixo estou apenas fazendo a pesquisa

fiz apenas um teste com as 2 primeiras celulas do datagrid pra ver se ele dava certo ;s ta aqui o código que usei


Dim oWord As Word.Application
Dim oDoc As Word.Document
Dim oTable As Word.Table
Dim oPara1 As Word.Paragraph, oPara2 As Word.Paragraph
Dim oPara3 As Word.Paragraph




[ô]Start Word and open the document template.
oWord = CreateObject([Ô]Word.Application[Ô])
oWord.Visible = True
oDoc = oWord.Documents.Add

[ô]Insert a paragraph at the beginning of the document.
oPara1 = oDoc.Content.Paragraphs.Add
oPara1.Range.Text = [Ô]Heading 1[Ô]
oPara1.Range.Font.Bold = True
oPara1.Format.SpaceAfter = 24 [ô]24 pt spacing after paragraph.
oPara1.Range.InsertParagraphAfter()

[ô]Insert a paragraph at the end of the document.
[ô]** \endofdoc is a predefined bookmark.
oPara2 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item([Ô]\endofdoc[Ô]).Range)
oPara2.Range.Text = [Ô]Heading 2[Ô]
oPara2.Format.SpaceAfter = 6
oPara2.Range.InsertParagraphAfter()

[ô]Insert another paragraph.
oPara3 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item([Ô]\endofdoc[Ô]).Range)
oPara3.Range.Text = [Ô]This is a sentence of normal text. Now here is a table:[Ô]
oPara3.Range.Font.Bold = False
oPara3.Format.SpaceAfter = 24
oPara3.Range.InsertParagraphAfter()

[txt-color=#007100]Aqui é onde ele taca pro word as cosias que tem na grid porém ele taca apenas a 1 linha do grid
[/txt-color]
oTable = oDoc.Tables.Add(oDoc.Bookmarks.Item([Ô]\endofdoc[Ô]).Range, 3, 5)
oTable.Range.ParagraphFormat.SpaceAfter = 6

oTable.Cell(1, 1).Range.Text = DataGridViewpdata.CurrentRow.Cells(1).Value.ToString
oTable.Cell(1, 2).Range.Text = DataGridViewpdata.CurrentRow.Cells(2).Value.ToString
oTable.Rows.Item(1).Range.Font.Bold = True
oTable.Rows.Item(1).Range.Font.Italic = True



[ô]All done. Close this form.
Me.Close()




Se alguiem puder me ajudar com esse problema ou ajudar a resolver de outra maneira agradeço
JFERREIRA25 07/10/2013 15:16:49
#429648
E assim que fica quando gero o relatório
só ta aparecendo as 2 primeiras linhas pq nao terminei de colocar as linhas do datagrid.. e é apenas um teste ;s
JFERREIRA25 07/10/2013 15:18:06
#429649
Citação:

:
E assim que fica quando gero o relatório
só ta aparecendo as 2 primeiras linhas pq nao terminei de colocar as linhas do datagrid.. e é apenas um teste ;s



OBS : ta aparecendo as 2 primeiras colunas
Faça seu login para responder