Imprimir contenido de ListView en documento de Word

05/05/2005 - 13:52 por Mario | Informe spam
Hola a todos,

Tengo un listview con una serie de datos y quiero que al pulsar un botón me
muestre el contenido del Listview en un documento de word.

La duda es como recorro cada una de las colunma (o subitems) del listview
para mostrar su contenido.

De momento tengo lo siguiente, pero solo me muestra el contenido de la
primera columna.

Dim oWord As Word.Application

Dim oDoc As Word.Document

Dim slSel As Word.Selection

Dim intI As Integer

Dim intJ As Integer

'

oWord = New Word.Application

oDoc = oWord.Documents.Add

slSel = oWord.Selection

oWord.Visible = True

'

'Creo una Tabla

oDoc.Tables.Add(slSel.Range, 1, 6)

For intI = 0 To ltvResultados.Items.Count - 1

For intJ = 0 To 5

slSel.TypeText(ltvResultados.Items.Item(intJ).Text)

slSel.MoveRight()

Next

Next

Alguna sugerencia, gracias.

Preguntas similare

Leer las respuestas

#1 Pablo Fébolo
05/05/2005 - 14:39 | Informe spam
Mario

Tenes que utilizar (recorrer) la coleccion Subitems,
de cada uno de los items.



Pablo.
Respuesta Responder a este mensaje
#2 Mario
05/05/2005 - 14:55 | Informe spam
Si eso lo supongo, el tema es que no se como acceder a los subitems...

Algun ejemplo?

Saludos.

"Pablo Fébolo" escribió en el mensaje
news:
Mario

Tenes que utilizar (recorrer) la coleccion Subitems,
de cada uno de los items.



Pablo.

Respuesta Responder a este mensaje
#3 Pablo Fébolo
05/05/2005 - 19:28 | Informe spam
Mario, te doy un ejemplo de memoria

dim MiListView as ListView
dim MiListViewItem as ListViewItem
dim SubItemIdx as Integer
dim Dato as string

For each MiListViewItem in MiListView.Items
For SubItemIdx = 0 To MiListViewItem.SubItems.Count-1
Dato = MiListViewItem.SubItems.item(SubItemIdx)
Next
Next


Pude haber cometido algun error en la sintaxis
pero va por ahi.

Saludos.
Respuesta Responder a este mensaje
#4 Mario
06/05/2005 - 13:33 | Informe spam
Pablo, perdona, pero es que estoy muy verde en esto de .Net

He realizado lo siguiente:
Dim oWord As Word.Application
Dim oDoc As Word.Document

Dim slSel As Word.Selection



Dim MiListView As ListView

Dim MiListViewItem As ListViewItem

Dim SubItemIdx As Integer

oWord = New Word.Application

oDoc = oWord.Documents.Add

slSel = oWord.Selection

oWord.Visible = True

'Creo una Tabla

oDoc.Tables.Add(slSel.Range, 1, 6)

For Each MiListViewItem In MiListView.Items

For SubItemIdx = 0 To MiListViewItem.SubItems.Count - 1

slSel.TypeText(MiListViewItem.SubItems.Item(SubItemIdx).Text)

slSel.MoveRight()

Next

Next


Y me muestra el siguiente error:
Excepción no controlada del tipo 'System.NullReferenceException' en prj.exe

Información adicional: Referencia a objeto no establecida como instancia de
un objeto.

Supongo que alguna declaración está mal... porque deberia de asociarle al
listView el ltvResultados.

Me puedes echar una mano?

Mil gracias.

"Pablo Fébolo" escribió en el mensaje
news:
Mario, te doy un ejemplo de memoria

dim MiListView as ListView
dim MiListViewItem as ListViewItem
dim SubItemIdx as Integer
dim Dato as string

For each MiListViewItem in MiListView.Items
For SubItemIdx = 0 To MiListViewItem.SubItems.Count-1
Dato = MiListViewItem.SubItems.item(SubItemIdx)
Next
Next


Pude haber cometido algun error en la sintaxis
pero va por ahi.

Saludos.


Respuesta Responder a este mensaje
#5 Pablo Fébolo
06/05/2005 - 15:00 | Informe spam
Sin no me equivoco tenes que asignarle el ltvResultados
al MiListView

oDoc.Tables.Add(slSel.Range, 1, 6)

MiListView = ltvResultados <-- Linea faltante

For Each MiListViewItem In MiListView.Items
.
.
.

De todos modos el ejemplo era a modo de referencia
finaje que tambien podrias reemplazar MilistView
por ltvResultados, y quedaria

oDoc.Tables.Add(slSel.Range, 1, 6)

For Each MiListViewItem In ltvResultados.Items

For SubItemIdx = 0 To ltvResultados.SubItems.Count - 1

slSel.TypeText(ltvResultados.SubItems.Item(SubItemIdx).Text)



Suerte.






"Mario" wrote in
news:#:

Pablo, perdona, pero es que estoy muy verde en esto de .Net

He realizado lo siguiente:
Dim oWord As Word.Application
Dim oDoc As Word.Document

Dim slSel As Word.Selection



Dim MiListView As ListView

Dim MiListViewItem As ListViewItem

Dim SubItemIdx As Integer

oWord = New Word.Application

oDoc = oWord.Documents.Add

slSel = oWord.Selection

oWord.Visible = True

'Creo una Tabla

oDoc.Tables.Add(slSel.Range, 1, 6)

For Each MiListViewItem In MiListView.Items

For SubItemIdx = 0 To MiListViewItem.SubItems.Count - 1

slSel.TypeText(MiListViewItem.SubItems.Item(SubItemIdx).Text)

slSel.MoveRight()

Next

Next


Y me muestra el siguiente error:
Excepción no controlada del tipo 'System.NullReferenceException' en
prj.exe

Información adicional: Referencia a objeto no establecida como
instancia de un objeto.

Supongo que alguna declaración está mal... porque deberia de asociarle
al listView el ltvResultados.

Me puedes echar una mano?

Mil gracias.

"Pablo Fébolo" escribió en el
mensaje news:
Mario, te doy un ejemplo de memoria

dim MiListView as ListView
dim MiListViewItem as ListViewItem
dim SubItemIdx as Integer
dim Dato as string

For each MiListViewItem in MiListView.Items
For SubItemIdx = 0 To MiListViewItem.SubItems.Count-1
Dato = MiListViewItem.SubItems.item(SubItemIdx)
Next
Next


Pude haber cometido algun error en la sintaxis
pero va por ahi.

Saludos.







Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida