Domingo 22 de Diciembre de 2024, 22:30
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
VB .NET
(Moderador:
ElNapster
) »
reportes en excel
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: reportes en excel (Leído 1890 veces)
Reinberg
Nuevo Miembro
Mensajes: 22
Nacionalidad:
reportes en excel
«
en:
Jueves 17 de Julio de 2008, 02:18 »
0
Hola,
Bueno pues les pido nuevamente ayuda esta ves tengo un problema en una aplicacion echa en vb.net 2005 en la cual estoy tratando de mandar reportes a excel.
Código: Text
Imports System.Data.OleDb
Public Class Ppal
Inherits System.Windows.Forms.Form
Dim objex As New Excel.Application
Dim libro As Excel.Workbook
Dim hoja As Excel.Worksheet
Dim i As Integer = 9
Dim r As DataRow
Private Sub MiembrosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MiembrosToolStripMenuItem.Click
Try
Dim cn As OleDbConnection = New OleDbConnection
Dim cs As String
cs = "Provider = Mcrosoft.JET.OLEDB.4.0; Data Source = " + Application.StartupPath(+"bd.mdb)")
Dim Da As OleDbDataAdapter
Dim tabla As DataTable
tabla = New DataTable("usuarios")
Dim sql As String
sql = "Select * From usuarios"
libro = objex.Workbooks.Open(Application.StartupPath + "plantillausuarios.xls")
[color=#FF0000]Da = New(sql, cn)[/color]
Da.Fill(tabla)
hoja = libro.Worksheets(1)
hoja.Cells(16, 2) = "Nombre"
hoja.Cells(16, 3) = "Apellido"
hoja.Cells(16, 4) = "Carrera"
hoja.Cells(16, 5) = "Campus"
hoja.Cells(16, 6) = "Expediente"
hoja.Cells(16, 7) = "Telefono"
hoja.Cells(16, 8) = "Correo"
For Each r In tabla.Rows
If tabla.Rows.Count > 0 Then
libro.Worksheets(libro.Worksheets.Count).copy(libro.Worksheets.Count - 1)
hoja.Activate()
hoja.Cells(i, 2) = r.Item("Nombre.")
hoja.Cells(i, 3) = r.Item("Apellido")
hoja.Cells(i, 4) = r.Item("Carrera")
hoja.Cells(i, 5) = r.Item("Campus")
hoja.Cells(i, 6) = r.Item("Expediente")
hoja.Cells(i, 7) = r.Item("Telefono")
hoja.Cells(i, 8) = r.Item("Correo")
hoja.Cells(i, 3) = r.Item(i - 8)
i += 1
End If
Next
objex.Visible = True
objex = Nothing
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
La linea que da el error esta en rojo, la cuestion es que sin las lineas del dataAdapter el codigo funciona correctamente y alponerlo se genera un error de tipo "Type expected" y pues la neta no tengo ni la menor idea de como resolverlo xD, espero me puedan ayudar.
gracias.
Tweet
"En este basto universo de conocimiento, no se esta solo, siempre hay alguien que sabe mas uno"
SysEdw
Miembro activo
Mensajes: 28
Nacionalidad:
Re: reportes en excel
«
Respuesta #1 en:
Martes 22 de Julio de 2008, 05:59 »
0
hola estas oviando la conexion, esta es la correcto
Código: Text
Dim cn As OleDbConnection
Dim cs As String
Dim ds As DataSet
cs = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Application.StartupPath + "bd.mdb"
cn = New OleDbConnection(cs)
cn.Open()
Dim Da As OleDbDataAdapter
Dim tabla As DataTable
tabla = New DataTable("usuarios")
Dim sql As String
ds = New Data.DataSet
sql = "Select * From usuarios"
libro = objex.Workbooks.Open(Application.StartupPath + "plantillausuarios.xls")
Da = New OleDbDataAdapter(sql, cn)
Da.Fill(ds, "usuarios")
hoja = libro.Worksheets(1)
hoja.Cells(16, 2) = "Nombre"
hoja.Cells(16, 3) = "Apellido"
hoja.Cells(16, 4) = "Carrera"
hoja.Cells(16, 5) = "Campus"
hoja.Cells(16, 6) = "Expediente"
hoja.Cells(16, 7) = "Telefono"
hoja.Cells(16, 8) = "Correo"
For Each r In tabla.Rows
If tabla.Rows.Count > 0 Then
libro.Worksheets(libro.Worksheets.Count).copy(libro.Worksheets.Count - 1)
hoja.Activate()
hoja.Cells(i, 2) = r.Item("Nombre.")
hoja.Cells(i, 3) = r.Item("Apellido")
hoja.Cells(i, 4) = r.Item("Carrera")
hoja.Cells(i, 5) = r.Item("Campus")
hoja.Cells(i, 6) = r.Item("Expediente")
hoja.Cells(i, 7) = r.Item("Telefono")
hoja.Cells(i, 8) = r.Item("Correo")
hoja.Cells(i, 3) = r.Item(i - 8)
i += 1
End If
Next
objex.Visible = True
objex = Nothing
______________________________________________________________________________________
[size=100] Si se puede imaginar... se puede programar.
Me encanta depender de la tegnología y vengarme de ella para dominarla como los locos.[/size]
Reinberg
Nuevo Miembro
Mensajes: 22
Nacionalidad:
Re: reportes en excel
«
Respuesta #2 en:
Miércoles 23 de Julio de 2008, 04:19 »
0
Hola SysEdw gracias por responderme, me ha servido gracias de nuevo.
"En este basto universo de conocimiento, no se esta solo, siempre hay alguien que sabe mas uno"
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
VB .NET
(Moderador:
ElNapster
) »
reportes en excel