Foros del Web » Programación para mayores de 30 ;) » .NET »

Importar varios archivos excel a gridview

Estas en el tema de Importar varios archivos excel a gridview en el foro de .NET en Foros del Web. Hola a todo, me gustaria poder importar varios archivos de excel que tengo una determinada carpeta a mi gridview, pero solo me importa el ultimo, ...
  #1 (permalink)  
Antiguo 27/12/2014, 23:34
 
Fecha de Ingreso: octubre-2008
Mensajes: 268
Antigüedad: 15 años, 7 meses
Puntos: 3
Importar varios archivos excel a gridview

Hola a todo, me gustaria poder importar varios archivos de excel que tengo una determinada carpeta a mi gridview, pero solo me importa el ultimo, imagino q es por q le doy siempre DataSource, por favor alguien q me ayude a lograrlo?... dejare mi codigo para q me ayuden con la modificacion y quizas a alguien le sirva en sus proyectos.

Estoy usando Windows 8 64bits, Office 2013 y Visual Studio 2012.

Saludos

Código HTML:
Imports System.Data.OleDb

Public Class NImporta1
    Dim Archivo As String

    Private Sub NImporta1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        'TODO: esta línea de código carga datos en la tabla 'NORTHWINDDataSet1.Dato_Importados' Puede moverla o quitarla según sea necesario.
        Me.Dato_ImportadosTableAdapter.Fill(Me.NORTHWINDDataSet1.Dato_Importados)

    End Sub

    Private Sub btnExtraer_Click(sender As Object, e As EventArgs) Handles btnExtraer.Click
        Dim cn As New OleDbConnection
        Dim cm As New OleDbCommand
        Dim foundFile As String

        For Each foundFile In My.Computer.FileSystem.GetFiles("D:\SISTEMA DEMO\ARCHIVOS")
            Archivo = Replace(Replace(foundFile, "D:\SISTEMA DEMO\ARCHIVOS\", ""), ".xlsx", "")
            Me.LstEmpleado.Items.Add(Archivo)

            'EMPIEZA LA CARGA
            Try
                Dim stRuta As String = foundFile
                Dim stConexion As String = ("Provider=Microsoft.ACE.OLEDB.12.0;" & ("Data Source=" & (stRuta & ";Extended Properties=""Excel 12.0;Xml;HDR=YES;IMEX=2"";")))
                Dim cnConex As New OleDbConnection(stConexion)
                Dim Cmd As New OleDbCommand("Select * From [Hoja1$]")
                Dim Ds As New DataSet
                Dim Da As New OleDbDataAdapter
                Dim Dt As New DataTable
                cnConex.Open()
                Cmd.Connection = cnConex
                Da.SelectCommand = Cmd
                Da.Fill(Ds)
                Dt = Ds.Tables(0)
                'Me.gvArchivos.Columns.Clear()
                Me.gvArchivos.DataSource = Dt
            Catch ex As Exception
                MsgBox(ex.Message, MsgBoxStyle.Critical, "Error")
            End Try
            'TERMINA LA CARGA
        Next

    End Sub
End Class
  #2 (permalink)  
Antiguo 05/01/2015, 02:42
Avatar de TheAlkaline  
Fecha de Ingreso: enero-2010
Ubicación: Lima - Peru
Mensajes: 92
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Importar varios archivos excel a gridview

Ya no utilizo mucho VB, pero a ver si te algo te ayuda. Intenta utilizar un solo DataSet, en tu for each estas inicializando uno nuevo cada vez que pasas por un archivo excel, es por eso que solo te muestra el ultimo.
  #3 (permalink)  
Antiguo 06/01/2015, 20:04
 
Fecha de Ingreso: octubre-2008
Mensajes: 268
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Importar varios archivos excel a gridview

Cita:
Iniciado por TheAlkaline Ver Mensaje
Ya no utilizo mucho VB, pero a ver si te algo te ayuda. Intenta utilizar un solo DataSet, en tu for each estas inicializando uno nuevo cada vez que pasas por un archivo excel, es por eso que solo te muestra el ultimo.
Hola, gracias por tu respuesta, pero entonces declararia fuera del for a mi datatable???
  #4 (permalink)  
Antiguo 06/01/2015, 20:24
 
Fecha de Ingreso: octubre-2008
Mensajes: 268
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Importar varios archivos excel a gridview

Cita:
Iniciado por TheAlkaline Ver Mensaje
Ya no utilizo mucho VB, pero a ver si te algo te ayuda. Intenta utilizar un solo DataSet, en tu for each estas inicializando uno nuevo cada vez que pasas por un archivo excel, es por eso que solo te muestra el ultimo.

Etiquetas: excel, gridview, studio, visual
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:45.