Excel - extraer datos de varios archivos

 
Vista:

extraer datos de varios archivos

Publicado por simon romero (2 intervenciones) el 14/09/2016 19:28:52
buenas tardes, necesito de su ayuda, tengo una cantidad muy grande de archivos de excel en una carpeta y necesito sacar un dato de cada uno de ellos que esta ubicado en la misma celda en todos los archivos, necesito organizarlo de formar que en una celda salga el nombre del archivo y al frente en otra celda salga el valor que necesito de ese archivo.

nombre del archivo 1 - VALOR 1
nombre del archivo 2 - VALOR 2
.
.
.
nombre del archivo N - VALOR N


MUCHAS GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 15/09/2016 23:45:28
Espero este ejemplo te ayude

SAludos

descomprime todos los libros en una sola carpeta ejemplo en "C:\excel "
Abre el archivo acumulador anda a macros y ejecuta la macro y te devuelve lo que quieres en el mismo libro acumulador
Siempre reemplazara el contenido por cada corrida
*Utiliza una regferencia de windows que es la Microsoft Scripting runtime

Para tu caso deberas poner solo el documento acumulador.xslm en tu carpeta donde estan todos los documentos
Entrar en el codigo y cambiarla celda que va a lerer yo por ejemplo puse la C3 deberas cambiarla a la que sea de tu caso.
y luego ejecutar la macro lo que si demorara segun el numero de archivos


te adjunto el codigo


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Public fs As New FileSystemObject
Public temporal As Folder
Public Archivo As File
Public narchivo, filename3, FileXls, FileXls2 As String
Public vbaplexc  As New Excel.Application
Public C  As Integer
Sub Acumulardatos()
' Acumulardatos Macro
Set temporal = fs.GetFolder(Application.ActiveWorkbook.Path & "\")      'La ruta del libro
C = 2
For Each Archivo In temporal.Files  ' por cada archivo
If Archivo.Name = Application.ActiveWorkbook.Name Then
    Exit Sub ' si es este archivo
Else
 
    'MsgBox Application.ActiveWorkbook.Name
        'ahora esto es lo que hace la magia
         vbaplexc.Workbooks.Open (Application.ActiveWorkbook.Path & "\" & Archivo.Name)
 
            Windows("Acumulador.xlsm").Activate
            Range("A" & C).Value = Archivo.Name
            Range("B" & C).Value = vbaplexc.Range("C3").Value  ' este es donde toma el dato cambialo segun tu necesidad
            vbaplexc.Workbooks.Close
            C = C + 1
          'vbaplexc.ActiveWorkbook.Close
End If
Next Archivo
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

extraer datos de varios archivos

Publicado por simon romero (2 intervenciones) el 16/09/2016 03:00:46
hola Andres Leonardo, muchas gracias por su ayuda, es justo lo que necesitaba, mil gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 16/09/2016 06:57:12
Me alegto que te haya servido no olvides de dar el +1 si es que la respuesta te ayudo

SAludos desde Ecuador.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

extraer datos de varios archivos

Publicado por Simon Romero (6 intervenciones) el 16/09/2016 14:40:59
hola, tengo problemas al momento de ejecutar el archivo, me sale un error con este mensaje:

error de compilación:
no se ha definido el tipo definido por el usuario.

que podría ser, si me puedes ayudar por favor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

extraer datos de varios archivos

Publicado por Simon santiago (6 intervenciones) el 16/09/2016 16:49:36
es la linea 1.

1
Public fs As New FileSystemObject
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 16/09/2016 17:04:41
Hola

Claro Como te indicaba en mi mensaje

*Utiliza una referencia de windows que es la Microsoft Scripting runtime

En el excel donde escribes la macro la pantalla de codigo anda al menu Herramientas --> Referencias
En esa lista que te aparece busca estan en orden alfabetico "Microsoft Scripting runtime "
Marcas el visto de esa guardas e intenta ejecutar .. nos cuentas como te va

PD como te indique en el mensaje te puse eso por que me imagine lo ibas a pegar en otro libro

SAluds Nuevamente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

extraer datos de varios archivos

Publicado por Simon santiago (6 intervenciones) el 28/09/2016 02:21:14
Hola Andres, para molestarte, tengo problemas con el archivo con el que me ayudaste, lo pegue en la carpeta donde están los archivos que necesito organizar y solo me lee el primer archivo con el dato que necesito, y de ahí se bloquea y al rato me sale un mensaje diciendo "Microsoft Excel esta esperando que otra aplicación complete una acción OLE ", muchas gracias por su colaboración.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 28/09/2016 02:23:10
Haz un seguimiento y mira dnd te da.el.error a ver q podemos hacer
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 28/09/2016 02:28:22
https://support.microsoft.com/es-es/kb/2698480

Método 1: Omitir DDE

Este problema puede producirse si está activada la casilla de verificación Omitir otras aplicaciones que utilizan intercambio dinámico de datos (DDE) en Opciones de Excel.

Cuando hace doble clic en un libro de Excel en el Explorador de Windows, un mensaje de intercambio dinámico de datos (DDE) se envía a Excel. Este mensaje indica a Excel para abrir el libro en el que hizo doble clic.

Si selecciona la opción "Omitir", Excel omite los mensajes DDE que se le envían por otros programas.

Para corregir esta configuración, siga estos pasos:
En el menú Herramientas, haga clic en Opciones.
Haga clic en la ficha General.
Desactive el Omitir otras aplicaciones que utilizan intercambio dinámico de datos (DDE) casilla de verificacióny, a continuación, haga clic en Aceptar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

extraer datos de varios archivos

Publicado por Simon santiago (6 intervenciones) el 28/09/2016 07:28:34
hola andres, gracias por colaborarme, esta es la linea que me esta causando problema , la comente y el código corrió bien pero quedan todos los archivos que se leyeron abiertos.
1
vbaplexc.Workbooks.Close

muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 28/09/2016 19:04:58
https://support.microsoft.com/es-es/kb/2698480

Método 1: Omitir DDE

Este problema puede producirse si está activada la casilla de verificación Omitir otras aplicaciones que utilizan intercambio dinámico de datos (DDE) en Opciones de Excel.

Cuando hace doble clic en un libro de Excel en el Explorador de Windows, un mensaje de intercambio dinámico de datos (DDE) se envía a Excel. Este mensaje indica a Excel para abrir el libro en el que hizo doble clic.

Si selecciona la opción "Omitir", Excel omite los mensajes DDE que se le envían por otros programas.

Para corregir esta configuración, siga estos pasos:
En el menú Herramientas, haga clic en Opciones.
Haga clic en la ficha General.
Desactive el Omitir otras aplicaciones que utilizan intercambio dinámico de datos (DDE) casilla de verificacióny, a continuación, haga clic en Aceptar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

extraer datos de varios archivos

Publicado por Simon santiago (6 intervenciones) el 28/09/2016 19:15:17
hola, sigue sin funcionar, el problema es que al no cerrar los archivos en cada siclo se abren todos al tiempo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

extraer datos de varios archivos

Publicado por Simon santiago (6 intervenciones) el 28/09/2016 19:45:23
si lo hice y nada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.136
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

extraer datos de varios archivos

Publicado por Andres Leonardo (1583 intervenciones) el 06/10/2016 00:46:35
Ok damos por cerrado el tema

se soluciona asi


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Public fs As New FileSystemObject
Public temporal As Folder
Public Archivo As File
Public narchivo, filename3, FileXls, FileXls2 As String
Public vbaplexc As New Excel.Application
Public C As Integer
 
Sub cuadrePeluqueria()
Set temporal = fs.GetFolder(Application.ActiveWorkbook.Path & "\")      'La ruta del libro
C = 7
For Each Archivo In temporal.Files  ' por cada archivo
 
If Archivo.Name = Application.ActiveWorkbook.Name Then
    Exit Sub ' si es este archivo
Else
    'ahora esto es lo que hace la magia
    vbaplexc.Workbooks.Open (Application.ActiveWorkbook.Path & "\" & Archivo.Name)
    Windows("acumulador.xlsm").Activate
    Range("C" & C).Value = Archivo.Name
    Range("D" & C).Value = vbaplexc.Range("hoja2").Value
    vbaplexc.Application.DisplayAlerts = False
    vbaplexc.Workbooks.Close
    vbaplexc.Quit
    C = C + 1
End If
Next Archivo
 
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar