Unir varios libros de excel en una sola hoja usando VBA

Поделиться
HTML-код
  • Опубликовано: 9 янв 2025

Комментарии • 130

  • @maihuire11
    @maihuire11  Год назад +2

    ÚNETE al grupo de Whatsapp para compartir más ayuda en Excel VBA. bit.ly/42MyVV4

  • @educaryaprender1123
    @educaryaprender1123 2 года назад +4

    GRACIAS, MI HERMANO! UN VIDEO SUMAMENTE CLARO y SIN EXCESO DE CÓDIGO. ERES UN GENIO!!! ME SUSCRIBO!

  • @heizlysalas7599
    @heizlysalas7599 10 месяцев назад +1

    Excelente tutorial lo felicito por tanto aporte

  • @ALPHERATZ3650
    @ALPHERATZ3650 3 года назад +2

    Excelente aporte, realmente explicas muy pero que muy bien claro, sin muchos rodeos. Mis felicitaciones y gracias por compartir este material.

  • @vynchennzondoncel7760
    @vynchennzondoncel7760 2 года назад +3

    Que buen dominio tienes del VBA me das ganas de aprender

  • @henryguzmanhiguera9070
    @henryguzmanhiguera9070 Год назад

    Excelente mini curso, muy claro... gracias totales💯

  • @alvaromorotedelacruz6166
    @alvaromorotedelacruz6166 2 года назад +1

    muchas gracias, excelente tutorial perfectamente explicado, me resultó muy útil

  • @jhamcarlosl1399
    @jhamcarlosl1399 3 года назад +2

    Gracias por tu video muy bien explicado. Estaba buscando algo así, gracias por tu tiempo. Saludos

  • @joelvega249
    @joelvega249 7 месяцев назад

    Muy buen video, cada paso bien explicado…

  • @guillermoperez5646
    @guillermoperez5646 3 года назад

    Gran Tutorial!!! Muchas Gracias!! super útil y muy bien explicado! lo recomiendo!

  • @troski225
    @troski225 2 года назад

    Muchas gracias por el tutorial, muy bien explicado

  • @marthasuarez8680
    @marthasuarez8680 2 года назад

    Excelente tutorial, muchas gracias por compartir su conocimiento👏

  • @jairoalbertocastillogonzal3648

    Excelente explicación 😊

  • @tripticon2007
    @tripticon2007 3 года назад

    Muy buen aporte, funcionó muy bien....

  • @fvaldez4672
    @fvaldez4672 3 года назад

    Excelentísimo, me funciono a la perfección, muchas gracias..!

  • @AbelRamirez-b4g
    @AbelRamirez-b4g Год назад

    Muchas gracias me ayuda de gran manera

  • @maricarmenlopeziglesias4423
    @maricarmenlopeziglesias4423 3 года назад +1

    Gracias por explicarlo y compartir

  • @wolfertvpuntocom
    @wolfertvpuntocom 2 года назад

    Gracias eres lo máximo 😊

  • @diegocapera3342
    @diegocapera3342 3 года назад

    Excelente ayuda, muchas gracias.

  • @learci5056
    @learci5056 Год назад

    excelente trabajo

  • @dianapinzon4302
    @dianapinzon4302 3 года назад +5

    Hola, de gran ayuda este video, Genial!!! Podrias compartirnos el código completo. Mil gracias

  • @nicorodriguezlujan4231
    @nicorodriguezlujan4231 2 года назад

    Muchas gracias! messirvio!!!

  • @johannasalazarr
    @johannasalazarr 2 года назад

    Gracias, funciono excelente.

    • @maihuire11
      @maihuire11  2 года назад +1

      Que bueno que te haya servido. Saludos

  • @andresdavidrodriguezzamero2086
    @andresdavidrodriguezzamero2086 10 месяцев назад

    Sin duda alguna me ha servido al 100%!!! eres un crack!! una pregunta nada mas!! al copiar el segundo archivo, quiero dejar un espacio de 10lineas aprox. en blanco y que después me copie el segundo archivo, se puede hacer??

  • @andrescobo6924
    @andrescobo6924 2 года назад

    Hola excelente trabajo! Consulta si yo quisiera que la carpeta donde se almacenan los archivos estuviera en un sharepoint compartido como podría hacerlo?

  • @rominaojeda6808
    @rominaojeda6808 Год назад

    hola, esta buenisimo, como puedo hacer si los datos que quiero compilar tienen formulas y que me lo copie como dato? gracias

  • @andreyviera8047
    @andreyviera8047 3 года назад +1

    Excelente, tengo una consulta.
    Si los archivos vienen filtrados y solo deseo copiar las celdas visibles, como seria?

  • @P3R3D4ChristopHer
    @P3R3D4ChristopHer Год назад +1

    Hola, hago la macro tal cual, cuando importo los datos Hasta me figura el msj de Libros Importado correctamente pero no se actualizan los datos, sigue el achivo consolidado sin datos. AYUDA por favor

  • @marioarturosernacontreras6758
    @marioarturosernacontreras6758 3 года назад

    Buen día EXCELENTE video, me funcionó a la perfección,
    Unicamente, cuando se corre el proceso de importación se abre una carpeta por cada archivo, es decir, tengo que estar dando ESC cada que se abre la carpeta, pero esto por cada archivo. Cómo puedo hacer para que la importación de los libros se haga de forma automática sin que se abra ninguna carpeta por cada archivo?
    Saludos mi estimado

  • @antonioricci1743
    @antonioricci1743 2 года назад

    Saludos Ing. Excelente solución a la consolidación de datos de varios archivos. Tengo una inquietud, ya información importada como se podría ordenar la información por la columna "fecha de modificación" ascendente. Espero su comentario gracias.

    • @P3R3D4ChristopHer
      @P3R3D4ChristopHer Год назад

      puedes crear otra Macro que ordene lo que desees y asignarle un boton

  • @marinaluzcartasegna6767
    @marinaluzcartasegna6767 3 года назад +1

    Excelente!!!

  • @claudiacarrasco2190
    @claudiacarrasco2190 3 года назад +1

    hola muy buen tutorial!!, pero tengo una pregunta si yo quisiera luego de importar los archivos, importar otra carpeta nueva con mas archivos, que codificación debería usar para que los datos nuevos ingresados (de la carpeta nueva) me queden al final del ultimo dato ingresado (de la carpeta anterior) y no se me borren los que ya se importaron

  • @kukito3987
    @kukito3987 Год назад +1

    Muchas gracias por el video, me sirvio muchisimo!
    Te hago una consulta, al momento de agregar los datos de la columna NombreArchivo no se me copia con el mismo formato que mis otras columnas, es decir, con un color gris de fondo. Sabras como puedo agregar eso en el codigo?

    • @maihuire11
      @maihuire11  Год назад +1

      Hola lo puedes hacer con la propiedad Interior.color = vbgray

    • @kukito3987
      @kukito3987 Год назад

      @@maihuire11 en que parte del codigo deberia agregarse eso?

  • @wilderrestrepo7220
    @wilderrestrepo7220 2 года назад

    Excelente video y explicación !, pero me asalta la duda de como se puede incluir una condición que borre los filtros de los libros a consolidar, ya que si la informacion de origen tiene algun filtro aplicado, esas lineas no quedan incluidas en el consolidado final.

  • @loorjan
    @loorjan 2 года назад

    Exelente, muy buen video, pero al ejecutar me esta borrando los titulos de la hoja consolidado, que puedo hacer

  • @ancestro071
    @ancestro071 3 года назад

    Hermano, buenos dias. Existe la posibilidad de que los archivos que abre la macro para copiar la informacion, sean desfiltrado y luego siga con el proceso. Sucede que me me envian archivos filtrados y cuando la macro correo solo consolida lo que esta filtrado. Necesito que desfiltre para que copie todo.. me ayudas?

  • @marcelofullana3852
    @marcelofullana3852 2 года назад

    Muy buen video. Te consulto que se debería modificar en el código si los archivos tuvieran varias hojas y solo quiero que consolide el nombre de una hoja que se repite en todos los archivos? Gracias

    • @maihuire11
      @maihuire11  2 года назад

      Hola, en el código solo se selecciona una hoja de origen, en este caso la primera wbLibroOrigen.Worksheets(1), por eso se le indica el numero 1 entre paréntesis, también puedes referirte a la hoja por su nombre wbLibroOrigen.Worksheets("Hoja1")
      Saludos

  • @slacex
    @slacex 8 месяцев назад

    que pasa si no esta la carpeta de los archivos a combinar dentro de la otra?

  • @vichoaven
    @vichoaven 2 года назад

    hola te hago una pregunta si en los libros que deseo consolidar tengo diferentes hojas como hago para que me consolide una en especifico?

    • @maihuire11
      @maihuire11  2 года назад

      Hola, tendrías que recorrer todas las hojas de tu libro de origen para luego copiarlas. te pongo un ejemplo
      La variable hoja representa cada hoja de tu libro.
      For Each hoja In ThisWorkbook.Worksheets
      MsgBox hoja.Name
      Next hoja

  • @vichoaven
    @vichoaven 3 года назад

    hola buen dia, quisiera preguntarte si es posible utilizar esta misma macro con archivos que Esten ubicados en diferentes carpetas? habria que colocar todas las rutas ? como se podria lograr esto?

    • @maihuire11
      @maihuire11  3 года назад +1

      Tendrias que hacer el mismo proceso para cada carpeta.

  • @brendahernandez3385
    @brendahernandez3385 2 года назад

    donde puedo agregar el codigo en VBA para que copie y pegue en valores

  • @sandraamaya4333
    @sandraamaya4333 2 года назад

    Muchísimas gracias, fue muy ilustrativo y funciona perfecto. Sin embargo quisiera hacerte una consulta:si quisiera que copiara archivos cuyo nombre tenga un pedazo de cadena específico? por ejemplo, todos empiecen por una palabra pero los quiero agrupar en una hoja por el nombre de la ciudad(segunda parte de la cadena), tienes algún archivo que complemente esta idea?

    • @freddymaihuirechavez4358
      @freddymaihuirechavez4358 2 года назад +1

      Hola, en esta linea de código puedes modificar
      Archivos = DIR(Ruta & "*.xlsx")
      Si quieres que tome los archivos con una palabra especifica, por ejemplo total, ese texto deberías colocarlo antes del símbolo *. de esta manera.
      Archivos = DIR(Ruta & "total*.xlsx")
      saludos

  • @ivanblancas4845
    @ivanblancas4845 3 года назад

    Muchas gracias, sabrás cómo puedo hacerle para pegarlo como valor?, es que mi libro tiene fórmulas y me gustaría que apareciera como valor

  • @darknessisnothope
    @darknessisnothope 3 года назад

    Muchas gracias por el aporte, me queda una duda, me funciona siempre con archivos xlsx, uso también xls y cambie la extensión en el código, funciona hasta 70mil registros de ahí...interpreta que la fila destino vuelve a ser 2, que crees que sea?

    • @maihuire11
      @maihuire11  3 года назад

      xls solo soporta 65 mil registros.

    • @darknessisnothope
      @darknessisnothope 3 года назад +1

      @@maihuire11 muchas gracias, aprovecho para comentarte que el archivo donde queda el consolidado es xlsm, por lo tanto logré resolverlo haciendo que ufila sea igual a la fila de la celda activa después de desplazarme totalmente hacia abajo y sumando uno. Así sí me permitió quitar ese impedimento

  • @adrianvale4251
    @adrianvale4251 9 месяцев назад

    Mis planillas poseen mas de una hoja ¿Cómo haría en ese caso?

  • @sergioyoldi5774
    @sergioyoldi5774 2 года назад

    Buenas, lo he intentado y al ejecutarlo, aparece el mensaje siguiente "Error de compilación - Loop sin Do"
    He puesto Do antes y después de Loop y nada, sigue dando el mismo error. Parece un error de órdenes.

  • @estebana.r9874
    @estebana.r9874 2 года назад +1

    Amigo excelente video y bastante clara la explicacion.
    La verdad muy completo el tutorial🤘
    El siguiente mensaje es por una duda que manejo que seria la siguiente, es posible realizar exactamente la misma macro pero en vez de que obtenga todos los archivos de una carpeta en especifico que obtenga un archivo que yo elija desde el explorador de archivos.
    Esto con la idea de que uno escoja cada archivo a cargar en la BD de excel.
    Saludos!

    • @estebana.r9874
      @estebana.r9874 2 года назад

      🤟
      Sub ImportarDatos()
      Dim wsHojaDestino As Worksheet
      Dim Ruta As String
      Dim wbLibroOrigen As Workbook
      Dim uFilaOrigen As Long
      Dim uFilaDestino As Long
      Application.ScreenUpdating = False
      Set wsHojaDestino = ThisWorkbook.Worksheets("Hoja1")
      Ruta = Application.GetOpenFilename(Title:="Por favor seleccione un libro")
      If Ruta = "False" Then
      Exit Sub
      End If
      Set wbLibroOrigen = Workbooks.Open(Ruta)
      uFilaOrigen = wbLibroOrigen.Worksheets(1).Range("A" & Rows.Count).End(xlUp).Row
      uFilaDestino = wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1
      If uFilaDestino > 1 Then
      wbLibroOrigen.Worksheets(1).Range("A2:F" & uFilaOrigen).Copy Destination:=wsHojaDestino.Range("A" & uFilaDestino)
      End If

      wbLibroOrigen.Close SaveChanges:=False
      MsgBox "Libros importados correctamente!", vbInformation, "Hoja1"
      Application.ScreenUpdating = True
      End Sub

  • @stalinabrahammejiagarcia9267
    @stalinabrahammejiagarcia9267 2 года назад

    Si tengo 2 tablas independientes una al lado de la otra en la misma hoja, sería posible hacer que esta macro me consolide información de otros libro tomando en cuenta que tienen el mismo formato desde 2 tablas y me pegue la información correspondiente a cada tabla.
    Quedo atento.

  • @dayragarcia5639
    @dayragarcia5639 Год назад

    Hola! Me marca error cuando meto archivos=dir(ruta & “*.xlsx”) 😢

  • @paulina-dz8gn
    @paulina-dz8gn 7 месяцев назад

    Explicas super bien, pero solo me funciono una vez, la volvi a ejecutar y no aparece nada de información pero no me sale error. ¿a qué se puede deber?

  • @ConsorcioVialdeMedellin
    @ConsorcioVialdeMedellin Год назад

    lo que para es que necesito en el momento es copiar varias hojas que tienen imagenes pero estan en un solo libro, y no he podido personalizar la macro para que me lleve las imagenes

  • @DantefayAnime
    @DantefayAnime Год назад

    Muchas gracias pero cuando corro la macro no me copia nada 🥲 y está todo tal cual , claro con las modificaciones pertinentes según archivo

    • @maihuire11
      @maihuire11  Год назад

      Hola, algo estas haciendo mal que no te copia. En la columna A tienes datos?

    • @P3R3D4ChristopHer
      @P3R3D4ChristopHer Год назад

      @@maihuire11 Me pasa el mismo problema y tengo datos en el libro origen con las cabeceras identidas pero no copia datos

  • @rodrigoandresarenasaguirre1365
    @rodrigoandresarenasaguirre1365 3 года назад

    hola, tengo una consulta si necesito rescatar un dato en especifico de cada libro como lo puedo hacer he tratado colocando condiciones pero no me funciona

    • @maihuire11
      @maihuire11  3 года назад

      Hola, puedes hacerlo con condiciones if else.

    • @rodrigoandresarenasaguirre1365
      @rodrigoandresarenasaguirre1365 3 года назад

      @@maihuire11 tienes algún tutorial donde lo hagas haber si puedo combinarlo

    • @harlesepc5906
      @harlesepc5906 3 года назад

      A que te refieres con condiciones, yo tambien quiero hacer unas unificaciones especificas.

    • @maihuire11
      @maihuire11  3 года назад

      @@harlesepc5906 Es muy extenso explicarlo en un comentario. En la descripción del video sale mi fanpage. Saludos

    • @harlesepc5906
      @harlesepc5906 3 года назад

      @@maihuire11 Condiciones con respecto al IF, ELSE.. lo manejado solo queria saber que cuando mencionabas condiciones. cuales eran esas condiciones o ese requerimiento. ?

  • @paulacastrocuello210
    @paulacastrocuello210 2 года назад

    Hola muy bueno el tutorial me ayudo muchisimo!! sólo tengo una duda, cunado en las hojas a copiar tengo unas columnas con validación de datos (listas), me salta un error y me deja el archivo consolidado dañado, como puedo solucionarlo?

  • @jhuscueto8782
    @jhuscueto8782 3 года назад +1

    Y la macro donde esta

  • @jorgebaez2466
    @jorgebaez2466 Год назад

    Saludo.. porque me marca erro 52 en mi laptop gracias saludos

  • @elizaubeda8972
    @elizaubeda8972 2 года назад

    Hola, me gustaría ayuda estoy intentando unir y copiar de varios archivos en 1 pero me esta dando Error 52 y realmente no se que cual prodira s e r el problema. Me podrían ayudar ?

    • @maihuire11
      @maihuire11  2 года назад

      Hola, tienes que darle clic en depurar y ver qué código está resaltandose. Con eso puedes tener más pistas de que error es.

  • @jesusgerardodelacruzrojas8793
    @jesusgerardodelacruzrojas8793 2 года назад

    Hola buenos días tengo un problema la macro se salta algunos libros como puedo hacer ahy ?

    • @maihuire11
      @maihuire11  2 года назад

      Hola, quizas alguno de tus otros libros no tenga la extensión xlsx si no xls

  • @ancestro071
    @ancestro071 3 года назад

    Buenos días, ¿Funciona cuando el archivo principal no esta limpio? Es decir, si consolido 1 vez, y luego necesito anexar nuevos archivos ¿funciona?

    • @maihuire11
      @maihuire11  3 года назад

      En este caso la macro limpia el contenido anterior y vuelve a cargar nuevamente los datos. Eso es porque hay en una linea el código que dice .clearcontents. Si quieres que no lo borre y se siga agregando borra esa línea de código. Fijate en el minuto 20:28
      Saludos

    • @ancestro071
      @ancestro071 3 года назад

      @@maihuire11 Ok, voy a mirar, exactamente es lo que quiero porque debo estar sumandole archivos diariamente, el primer dia si me sirve tal cual como la tienes ahi pero ya los siguientes dias no.

    • @maihuire11
      @maihuire11  3 года назад

      @@ancestro071 por eso quítale la línea que te indique y ya no borrará los días anteriores.
      Saludos

  • @QUARKC0M
    @QUARKC0M 2 года назад

    Estimado buenas noches, muy bueno el tutorial, pero tengo dos preguntas
    1- tengo un campo fechas en un archivo csv de la forma 01/11/2022 (original) pero los importa como 11/01/2022 y cambia el formato de la celda a fecha, sin embargo cuando la fecha pasa a 13/11/2022 lo deja asi y el fomrato de la celda esta en general..
    2-Como hago para eliminar toda la fila en el erchivo origen que contenga un determinado caracter en en una fila y columna cualquiera.
    Te agradeceria me puedas ayudar

    • @QUARKC0M
      @QUARKC0M 2 года назад

      Hola, acabo de solucionar el 2 punto.
      En cuanto al primero aun, aclarar que en la hoja de consolidado todas las celdas estan en formato general.
      Espero puedas darme una ayuda

  • @servinfrancofabian9241
    @servinfrancofabian9241 2 года назад

    quisiera hacer el mismo proceso, pero en lugar de agregar filas, quisiera agregar columnas

    • @P3R3D4ChristopHer
      @P3R3D4ChristopHer Год назад

      cambias el codigo la parte que dice ROWS (filas) a columns y marcas tu delimitación.

  • @luisenriquecastillocastill9641
    @luisenriquecastillocastill9641 2 года назад

    Yo creé el mismo archivo pero de una tabla dinámica, el problema es que no se cómo hacerle para que me pegue valores a la hora de importarlo y no las formulas

    • @maihuire11
      @maihuire11  2 года назад

      Hola, te doy un ejemplo simple:
      Los valores con formulas están en la celda A1 y lo estoy pegando a B1 solo valores.
      Range("A1").Copy
      Range("B1").PasteSpecial Paste:=xlPasteValues
      Application.CutCopyMode = False
      Guíate de esto y adaptalo a tu desarrollo.
      Saludos

  • @TheMetachita
    @TheMetachita 3 года назад +2

    Muchísimas gracias por este aporte, me funciono perfectamente, aunque tengo una duda, como podría hacer para que al importar documentos de texto me los delimite automáticamente por comas?

    • @omegalfa13
      @omegalfa13 3 года назад

      Selection.TextToColumns Destination:=Range("rango de seleccion"), DataType:=xlDelimited, _
      TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
      Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
      :=Array(Array(1, 1), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True
      Con este codigo de arriba podras delimitar el texto que tengas seleccionado por coma, lo unico que tienes que hacer es establecer el rango en el destino

  • @josefiguera4868
    @josefiguera4868 2 года назад

    COMO HAGO SI SON VARIAS HOJAS? NECESITO ME COPIE LOS DATOS DE VARIAS A UNA SOLA HOJA CUANDO TENGAN ALGUNAS DE LAS DOS VARIABLES EN ESA CELDA. AL TENERLA ESOS DATOS SE PASEN A UNA SOLA HOJA. ESTAMOS HABLANDO QUE ESOS DATOS SE ESCRIBEN EN LINEA DE AL MENOS 100 HOJAS DENTRO DEL ARCHIVO DE EXCEL.
    SE PUEDE?

    • @maihuire11
      @maihuire11  2 года назад +1

      Hola si es posible, este tutorial es para una sola hoja.

    • @josefiguera4868
      @josefiguera4868 2 года назад

      @@maihuire11 tu lo harías? Me puedes dar un correo a ver cuanto me cobras por hacerlo

    • @maihuire11
      @maihuire11  2 года назад

      @@josefiguera4868 Hola escribeme x mi fanpage que esta en la descripción del video.

  • @vichoaven
    @vichoaven 3 года назад

    hola excelente video.... tengo una pregunta en esta linea ufiladestino = wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1 me aparece el siguiente error : " error 91 variable de objeto o bloque with no establecido....... que podra ser??
    de antemano muchas gracias por la ayuda

    • @maihuire11
      @maihuire11  3 года назад

      Hola, ese error ocurre porque no asigaste una hoja a la variable wsHojaDestino. Debes colocar este codigo al inicio.
      Set wsHojaestino=Thisworkbook.Worksheets("Consolidado")

    • @vichoaven
      @vichoaven 3 года назад +1

      @@maihuire11 hola... mil gracias por responder, revisando veo que si tiengo la linea que dices y bueno no se que pasa...
      te voy a dejar el codigo completo y tu me diras si hay algo mal...
      Sub consolidar()
      Dim wsHojaDestino As Worksheet
      Dim Ruta, Archivos As String
      Dim wblibroOrigen As Workbook
      Dim ufilaOrigen As Long
      Dim ufiladestino As Long
      Set wshojasdestino = ThisWorkbook.Worksheets("consolidado")
      Ruta = ThisWorkbook.Path & "\files\"
      Archivos = Dir(Ruta & "*.xlsx")
      Do While Len(Archivos) > 0
      Set wblibroOrigen = Workbooks.Open(Ruta & Archivos)
      ufilaOrigen = wblibroOrigen.Worksheets(2).Range("A" & Rows.Count).End(xlUp).Row
      ufiladestino = wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1

      wblibroOrigen.Worksheets(1).Range("A2:BJ" & ufilaOrigen).Copy Destination:=wsHojaDestino.Range("A" & ufiladestino)

      wblibroOrigen.Close savechanges:=False
      Archivos = Dir()
      Loop
      MsgBox "libros importados correctamente", vbInformation, "Consoloidado"
      End Sub
      nuevamente te agradezco inmensamente tu ayuda...

    • @maihuire11
      @maihuire11  3 года назад +1

      @@vichoaven el error que tienes es de la variable: la declaras como wsHojaDestino y la usas como wshojasdestino (tiene una letra "s" de más)
      Esta linea "Set wshojasdestino = ThisWorkbook.Worksheets("consolidado")" deberia quedar así:
      Set wsHojaDestino = ThisWorkbook.Worksheets("consolidado")

    • @vichoaven
      @vichoaven 3 года назад +1

      @@maihuire11 excelente... muchisimas gracias ya se me quito ese error... ahora lo único es que no me esta copiando toda la información solo me copia la info de las 3 primeras columnas pero tengo info hasta la columna BJ y nada.

    • @maihuire11
      @maihuire11  3 года назад +1

      @@vichoaven Hola, en tu codigo veo que si incluyes hasta BJ, asegurate que este tomando la hoja indicada. Saludos

  • @yazielbarbosa1909
    @yazielbarbosa1909 2 года назад

    Amigo me sale error 9 en la línea de ser wsHojadestino, a qué se deberá?

    • @maihuire11
      @maihuire11  2 года назад

      Hola, debes declarar esa hoja como worksheet

    • @ricardofalconi166
      @ricardofalconi166 Год назад

      @@maihuire11 hola me sale igual no puedo resolverlo te dejo el codigo
      Sub ImportarDatos()
      Dim wsHojaDestino As Worksheet
      Dim Ruta, Archivos As String
      Dim wbLibroOrigen As Workbook
      Dim uFilaOrigen As Long
      Dim uFilaDestino As Long
      Application.ScreenUpdating = False
      Set wsHojaDestino = ThisWorkbook.Worksheets("Consolidado")
      Ruta = ThisWorkbook.Path & "\Files\"
      Archivos = Dir(Ruta & "*.xlsx")
      Do While Len(Archivos) > 0
      Set wbLibroOrigen = Workbooks.Open(Ruta & Archivos)
      uFilaOrigen = wbLibroOrigen.Worksheets(11).Range("A" & Rows.Count).End(xlUp).Row
      uFilaDestino = wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1

      wbLibroOrigen.Worksheets(11).Range("A2:N" & uFilaOrigen).Copy Destination:=wsHojaDestino.Range("A" & uFilaDestino)

      wbLibroOrigen.Close Savechanges:=False
      Archivos = Dir()
      Loop
      MsgBox "Libros importados Correctamente", vbInformation, "Consolidado"
      Application.ScreenUpdating = True
      End Sub

    • @maihuire11
      @maihuire11  Год назад

      @@ricardofalconi166 Tu hoja destino debe estar en el libro abierto.

    • @ricardofalconi166
      @ricardofalconi166 Год назад

      @@maihuire11 esta abierto la hoja pero ahora me sale el error en uFillaOrigen uFilaOrigen = wbLibroOrigen.Worksheets(11).Range("A" & Rows.Count).End(xlUp).Row

    • @maihuire11
      @maihuire11  Год назад

      @@ricardofalconi166 Debes indicar que tipo de error, veo que haces referencia a tu hoja 11. Realmente tienes una hoja en la posición 11?

  • @oscarrivera5485
    @oscarrivera5485 3 года назад

    Muy buena aportación. Más como UD. Fíjese que apliqué este ejemplo pero como mi hoja origen lleva fórmulas me marca error y aparece "la palabra destino ya existe blah blah blah"
    Help!!!

    • @maihuire11
      @maihuire11  3 года назад

      Crea tu hoja con otro nombre que no sea destino.

  • @yesicazamudio9504
    @yesicazamudio9504 3 года назад

    buenos días, gracias por el video, estoy intentando hacer la macro, pero en esta linea me sale depurar, me podrias decir por favor porque se debe ese error?
    archivos = Dir(Ruta & "*.xlsm")

    • @maihuire11
      @maihuire11  3 года назад

      Hola, el problema podria ser tu variable Ruta, fijate que la ruta que le estas asignando lineas arriba sea la correcta. Igual tambien dime que mensaje de error te sale en la ventana depurar.

    • @conciertosquenodebesperder
      @conciertosquenodebesperder 3 года назад

      @@maihuire11 igual me sale, dice que archivo no existe

    • @maihuire11
      @maihuire11  3 года назад

      @@conciertosquenodebesperder hola es x q el archivo no existe o porque la ruta esta mal escrita.

    • @sebastianvillarrealromero8353
      @sebastianvillarrealromero8353 3 года назад

      Hola, me pasa lo mismo. -¿Lo pudiste arreglar? ¿Cómo?. Gracias

    • @josemanuelperez2389
      @josemanuelperez2389 3 года назад +1

      Hola, yo también tuve el mismo problema y puede ser porque los archivos estan en algun drive o nube. En este caso te trae la ruta con una dirección http asociada y la macro no reconoce eso. Para solucionarlo es mejor poner los archivos en una carpeta local del computador y ahí no pone problema.

  • @yamiyamimb
    @yamiyamimb 3 года назад

    excelente macro.
    como hago para descargarla

  • @albertobarajas395
    @albertobarajas395 3 года назад

    Hola estoy intentando realizar la programación, pero sale error 52. dice nombre o numero de archivo incorrecto. Que puede ser?
    Mira este es mi codigo, sobre la ubicacion esta como lo indicas, pero diferentes nombres de archivo de excel. Agradezco tu ayuda.
    Sub ImportarDatos()
    Dim wsHojaDestino As Worksheet
    Dim Ruta, Archivos As String
    Dim wbLibroOrigen As Workbook
    Dim uFilaOrigen As Long
    Dim uFilaDestino As Long
    Application.ScreenUpdating = False
    Set wsHojaDestino = ThisWorkbook.Worksheets("Consolidado")
    wsHojaDestino.Range("A2:AK" & wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1).ClearContents
    Ruta = ThisWorkbook.Path & "\file\"
    Archivos = Dir(Ruta & "*.xlsx")
    Do While Len(Archivos) > 0
    Set wbLibroOrigen = Workbooks.Open(Ruta & Archivos)
    uFilaOrigen = wbLibroOrigen.Worksheets(1).Range("A" & Rows.Count).End(xlUp).Row
    uFilaDestino = wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1

    wbLibroOrigen.Worksheets(1).Range("a2:A" & uFilaOrigen).Value = Archivos

    If uFilaOrigen > 1 Then
    wbLibroOrigen.Worksheets(1).Range("A2:Z" & uFilaOrigen).Copy Destination:=wsHojaDestino.Range("A" & uFilaDestino)
    End If
    wbLibroOrigen.Close SaveChanges:=False
    Archivos = Dir()
    Loop
    MsgBox "Libros importados correctamente", vblnformation, "Consolidado"
    Application.ScreenUpdating = True
    End Sub

  • @soportesistemasgruporueda4773
    @soportesistemasgruporueda4773 2 года назад

    te felicito x el video una consulta.
    ya hice todo el codigo pero no me pega el encabezado del 1 libro.
    este es el codigo:
    Sub consolidar()
    Dim wsHojaDestino As Worksheet
    Dim Ruta, Archivos As String
    Dim wblibroOrigen As Workbook
    Dim ufilaOrigen As Long
    Dim ufiladestino As Long
    Set wsHojaDestino = ThisWorkbook.Worksheets("datos")
    Ruta = ThisWorkbook.Path & "\files\"
    Archivos = Dir(Ruta & "*.xlsx")
    Do While Len(Archivos) > 0
    Set wblibroOrigen = Workbooks.Open(Ruta & Archivos)
    ufilaOrigen = wblibroOrigen.Worksheets(1).Range("A" & Rows.Count).End(xlUp).Row
    ufiladestino = wsHojaDestino.Range("A" & Rows.Count).End(xlUp).Row + 1

    wblibroOrigen.Worksheets(1).Range("A2:U" & ufilaOrigen).Copy Destination:=wsHojaDestino.Range("A" & ufiladestino)

    wblibroOrigen.Close savechanges:=False
    Archivos = Dir()
    Loop
    MsgBox "libros importados correctamente", vbInformation, "Datos"
    End Sub

    • @maihuire11
      @maihuire11  2 года назад

      Hola la cabecera de tuarchivo de origen posiblemente este en la fila 2:
      Aqui en tu codigo se indica eso en "A2....
      wblibroOrigen.Worksheets(1).Range("A2:U" & ufilaOrigen).Copy Destination:=wsHojaDestino.Range("A" & ufiladestino)