1. Esta comunidad utiliza cookies. Si continuas utilizando nuestra comunidad estás aceptando la utilización de nuestras cookies. Más información.
  2. ¡Bienvenid@ a AyudaExcel! El foro más visitado sobre Excel en habla hispana.

    Si esta es tu primera visita, asegúrate de revisar los temas de la sección Utilización y Funcionamiento para familiarizarte con las funciones del foro. Si deseas publicar mensajes, será necesario que te Registres para que puedas dejar respuestas y crear tus propios mensajes, recuerda que es gratuito.

Solucionado ¿Cómo unir varias hojas de cálculo en una sola sin abrirlas?

Tema publicado en 'Temas resueltos' iniciado por Pinon, 22 Abr 2009.

Estado del tema:
Cerrado para nuevas respuestas
  1. Pinon

    Pinon Nuevo Usuario

    Reg:
    20 Abr 2009
    Mensajes:
    3
    Me Gusta recibidos:
    0
    Tengo varias hojas de calculo en una carpeta. Cada archivo tiene una hoja de calculo, lo que quiero es desde el explorador y sin necesidad de entrar en cada una de ella unirlas todas en un solo archivo con multiples hojas.
    ¿Es posible?

    Muchas Gracias
     
  2. neverdelimon1

    neverdelimon1 Moderador Staff AyudaExcel

    Reg:
    25 Ago 2008
    Mensajes:
    894
    Me Gusta recibidos:
    76
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola Pinon

    Prueba la siguiente macro, en caso de que no sea lo que requires nos platicas para adecuarlo a tu necesidad

    La macro permite copiar la primer hoja de un grupo de archivos poniendole el nombre a la hoja del archivo Origen.

    Funcionamiento General:

    El archivo lo descomprimes y lo guardas en el directorio donde estan los que deseas copiar (la macro solo copia la primer hoja).

    En el Formulario (frm), deberás ingresar tanto el nombre del archivo destino, como los datos de los Archivos Origen, por default al abrir el archivo carga todos los archivos del directorio donde se encuentra guardado, dentro de la lista de arhivos origen. Un tip, si quieres borrar todo el contenido de la lista de Archivos Origen, no selecciones ningun item, y pulsa el boton quitar, luego confirma que deseas borrar todo el contenido y listo, si deseas eliminar solo uno o algunos, lo puedes hacer seleccionando el item y presionando el boton quitar.

    Con el boton añadir puedes añadir archivos (uno o varios) origen dentro de la lista de Archivos origen (segun requieras), tiene habilitado el parametro multiselect, por lo que puedes seleccionar varios archivos a la vez.

    Los archivos Origen no deberán tener contraseña, ya que la macro nos los podrá leer, si hay vinculos, te va a preguntar si deseas actualizarlos.

    Al final a las hojas del Archivo Reporte las deja ordenas de forma alfabética

    la macro no modifica los archivos origen solo crea una copia de la primer hoja de cada archivo y la envia al archivo Reporte, si en cualquier momento deseas detener el proceso presiona varias veces la tecla Escape (Esc) y Finalizar.


    saludos cordiales


    PD. esta macro ya la habia subido con anterioridad pero me habian comentado que la función format daba problemas en algunas configuraciones, por lo que la retire con la finalidad de lograr mayor compatibilidad.
     

    Adjuntos:

  3. Pinon

    Pinon Nuevo Usuario

    Reg:
    20 Abr 2009
    Mensajes:
    3
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Justo lo que necesitaba.

    Muchisimas gracias.


     
  4. NeiJPass

    NeiJPass Nuevo Usuario

    Reg:
    18 Abr 2009
    Mensajes:
    26
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Yo también necesitaba esta macro. Pero tengo el siguiente error:

    Sub copiar_datos(ByVal archivo_origen_ruta As String, ByVal archivo_destino As String)

    Porque me da error de compilación????

    los nombres de las hojas ai que ponerlo el mismo nombre q el excel?

    Por lo que veo utilizais excel 2003.....yo 2007 a lo mejor tiene algo q ver....


    Salu2
     
    Última edición: 23 Abr 2009
  5. neverdelimon1

    neverdelimon1 Moderador Staff AyudaExcel

    Reg:
    25 Ago 2008
    Mensajes:
    894
    Me Gusta recibidos:
    76
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola NeijPass

    La macro trabaja con compatibilidad con 2003, pero de hecho cuando la diseñe la hice en MS Excel 2007, por lo que no deberias tener ningun problema, el compañero josemaria me comento que daba problemas con la función format (debido a que varian las configuraciones regionales y las bibliotecas que se cargan en vba al momento de instalarse), y por eso la quite, seria bueno conocer en que línea te da el error para poder trabajar en ello,y tambien el número y tipo de error ya que asi seria más facil determinar a que se debe, tambien te recomiendo que verifiques lo siguiente:

    *Los archivos de donde va a copiar no deberan estrar protegidos con contraseña, ya que la macro no los podra abrir (aunque tambien se le puede hacer la respectiva modificacion para que conociendo las contraseñas los pueda abrir, desproteger y volver a cerrar...)

    *Cuando escribes el nombre del archivo Destino, verifica que no estes utilizando caracteres no válidos

    *La macro asigna como nombre de la hoja, el nombre del archivo origen de donde proviene, tomando los primeros 25 caracteres, por ejemplo suponiendo que tienes lo siguientes archivos:
    aaaaaaaaaaaaaaaaaaaaaabbbbbc.xls
    bbbbbbbbbbbbbbbbbbbbbbbbbbbb.xls
    aaaaaaaaaaaaaaaaaaaaaabbbbbe.xls

    En el primer y ultimo caso al tomar la macro 25 caracterres el nombre de la hoja seria la misma (lo cual excel no permite porsupuesto e inmediatamente enviara un error), para ello cree la rutina ContadordeHojas, la cual permite
    preveer esa situación y asignar un numero consecutivo para diferenciar uno del otro asi como excel le hace cuando por ejemplo tenemos Hoja1 y Hoja1(1)

    Ademas he agregado la posiblidad de que si se desea, se puede conservar el nombre de la hoja (al momento de hacer la copia) tal como esta en el arhivo origen o nombrar la copia de la hoja con el nombre del archivo origen (como ya lo comente en parrafos anteriores)...


    Saludos cordiales
     

    Adjuntos:

  6. Pinon

    Pinon Nuevo Usuario

    Reg:
    20 Abr 2009
    Mensajes:
    3
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    a mi me funciona perfectamente, lo que hago es creo una carpeta con todos los archivos a fusionar, pego el archivo que facilitó el compañero neverdelimon1 y lo abró automaticamente me sale un boton, lo pulso y un cuadro de dialogo donde por defecto me reseña todos los archivos a fusionar, (incluso puedes quitar alguno si no te interesa), le das a ejecutar y ya esta.


    Gracias de nuevo.
     
  7. REYES MA

    REYES MA Nuevo Usuario

    Reg:
    22 Abr 2009
    Mensajes:
    5
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Vaya... Que macro amigo...
    La ejecute y esta muy bien... La prove con 5 libros y al final me marca error
    09 subindice fuera de intervalo y la ultima hoja me la pega al principio y
    no en el orden de las otras...
    Comentame porfa que sera...
    Saludos soy reyes de villahermosa tabasco, mexico...
     
  8. neverdelimon1

    neverdelimon1 Moderador Staff AyudaExcel

    Reg:
    25 Ago 2008
    Mensajes:
    894
    Me Gusta recibidos:
    76
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola Reyes MA

    Te envio saludos cordiales.

    Si me pudieses proporcionar el nombre de la hoja la cual no te ordena, te lo agradeceria mucho, ya que con ello me ayudarias bastente para poder localizar la causa del error, aunque creo imaginar a que se debe (¿De casualidad tus hojas tienen nombres escritos con número y que incluyan el carcter separador punto y/o coma?), mucho te agradeceria me proporcionases el nombre de la hoja que no se dejo ordenar, con ello seguro que podriamos mejor la macro.

    He hecho algunas pequenas modificaciones a la macro, prueba el adjunto y nos platicas como te fue (¿si te vuelve a enviar el mismo error?)


    Te envio un afectuoso saludo
     

    Adjuntos:

    Última edición: 29 Abr 2009
  9. REYES MA

    REYES MA Nuevo Usuario

    Reg:
    22 Abr 2009
    Mensajes:
    5
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Probe la nueva y esta perfecta, de todas maneras luego te comento mas

    saludos...
     
  10. REYES MA

    REYES MA Nuevo Usuario

    Reg:
    22 Abr 2009
    Mensajes:
    5
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Oye amigo, esta macro y el userform estan de 1000 puntos...
    Me marca error 09, subindice fuera de intervalo y por ejemplo
    tengo archivos y los manda asi
    010109 050109
    020109 010109
    030109 020109
    040109 030109
    050109 040109
    primero el del dia 5 de ene 09
    le modifique algunos datos al formato del formulario....
     
  11. neverdelimon1

    neverdelimon1 Moderador Staff AyudaExcel

    Reg:
    25 Ago 2008
    Mensajes:
    894
    Me Gusta recibidos:
    76
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola Reyes MA

    Te agradezco mucho por tus comentarios...

    El problema se debia al 0 inicial del lado izquierdo, ya que los nombres de las hojas la macro los envia a excel y luego de que se ordenan, entonces con base a la matriz resultabte (ya ordenada), se mueven las hojas para acomodarlas alfabéticamente, en este caso MS Excel eliminaba el cero la izquierda, pero bueno creo que con la ultima rutina que subi (en donde modifique la rutina de ordenacion) no deberias tener problemas ya que ahora todo es tratado como texto, por lo que el tener ese cero a la izquierda no deberia repercutir en nada.

    Hice una prueba simulando tus datos, y a mi si me los ordeno correctamente, comentame si es tu caso tambien, si no para buscar alguna otra alternativa

    Saludos cordiales
     
  12. Stockli

    Stockli Nuevo Usuario

    Reg:
    24 Abr 2009
    Mensajes:
    1
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    hola que tal!

    Justamente lo que andaba buscando!!!

    muchas gracias, ya lo probe y me funciono sin ningun problema.

    Saludos!!!
     
  13. REYES MA

    REYES MA Nuevo Usuario

    Reg:
    22 Abr 2009
    Mensajes:
    5
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Amigo me ha ayudado mucho tu macro, mil gracias....
    La uso cada 2 a 3 dias...
    Me es de suma y gran utildad...
    Saludos..... Atte. Reyes ma
     
  14. excelboy

    excelboy Usuario

    Reg:
    5 Abr 2009
    Mensajes:
    273
    Me Gusta recibidos:
    3
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola a todos. Si les interesa, hay un complemento (*) que tiene una función que permite reunir varias hojas de distintos libros en un único libro en solo un par de clics. Esto por si prefieren no tener que programar. Ver este ejemplo: ddTraDa

    (*) Ya lo he comentado en varios mensajes anteriores porque lo estoy usando y me ha sido de mucha utiilidad y creo que a muchos podría servirle.

    Saludos cordiales desde el Sur del Mundo.
     
  15. neverdelimon1

    neverdelimon1 Moderador Staff AyudaExcel

    Reg:
    25 Ago 2008
    Mensajes:
    894
    Me Gusta recibidos:
    76
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola

    Inspirado en el link de ddTraDa que amablemente nos porporciona el compañero excelboy, le hice algunos cambios a la macro que copia hojas, para darle mayor funcionalidad.

    Adjunto la macro por si a alguien le es de utilidad:

    Detalles:

    -Para agregar Arhivos de dónde se Copiaran las Hojas a a lista de Origen, le habilite la porpiedad multiselect, tanto para poder agregar varios de una sola vez, como para poder quitar (si a si se desea) de la lista varios, de un solo clic, basta con seleccionar el conjunto de itemns que se desean quitar o añadir, y pulsar el boton respectivo
    -Se puede elegir entre nombrar las copias de cada hoja como el libro origen o conservar el nombre de la hoja origen.
    - Se puede elegir entre copiar solo la primer hoja, copiar todas las hojas o seleccionar las hojas que se desean copiar
    -El selector de hojas a copiar permite seleccionar una a una las hojas a copiar, seleccionar y deselecccionar todas la hojas de una vez, o realizar una seleccion avanzada de hojas a copiar mediante una búsqueda por nombre de hoja(por coincidencia exacta o por búsqueda dentro del texto)
    -Al final la macro ordena las en el libro Destino de forma alfabética (libro a donde se llevan las copias).

    Nota:
    Para ejecutar la macro, no importa si los archivos origen estan abiertos o cerrados, ya que la macro verifica si es necesario abrir y/o cerrar un archivo automáticamente


    Saludos cordiales
     

    Adjuntos:

  16. ANGELO PILA

    ANGELO PILA Usuario

    Reg:
    3 Oct 2008
    Mensajes:
    199
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    HOLA.

    Amigo.

    Te felicito eres un genio.

    saludos

    Angelo
     
  17. REYES MA

    REYES MA Nuevo Usuario

    Reg:
    22 Abr 2009
    Mensajes:
    5
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Oye viejo.... Te volaste la barda.... Que trabajo amigo...
    Gracias al amigo boy por el ejemplo, pero never haz hecho un buen trabajo y cada dia mejoras lo que ya haz hecho, viejo....
    Ya tengo la nueva que hiciste y felicidades...

    Asu que macro...

    Felicidades...

    Mil gracias...

    Atte. Reyes ma
     
  18. Paxdei

    Paxdei Usuario

    Reg:
    21 May 2009
    Mensajes:
    48
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Maese neverdelimon1

    Se agradece el aporte, sin embargo cuando abro el archivo y habilito las macros me manda un mensaje que dice "No se puede cargar un objeto por que no esta disponible en en este equipo" le doy aceptar y aparece el formulario, en opciones generales lo dejo como viene por default y en opciones de copiado selecciono copiar todas las hojas, le doy en ejecutar y me manda el error

    "Error de compilacion" no se encontró el metodo o el dato miembro
    y marca la siguiente linea de error

    With FrmEstadoProceso
    .Show
    With .BarraEstado
    .Max = ListAOr.ListCount
    If ListAOr.ListCount = 1 Then .Min = 0 And .Value = 0 Else .Min = 1 And .Value = 1
    End With
    .EstadoProc.Caption = "0%"
    .EstadoInfo.Caption = "Estado del Proceso:" & vbCrLf & _
    " -Iniciando Copiado..."

    Espero tengas tiempo de hecherme la mano con esto

    Saludos
     
  19. Amore

    Amore Nuevo Usuario

    Reg:
    13 Ago 2009
    Mensajes:
    1
    Me Gusta recibidos:
    0
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola....
    Hice tal cual las instrucciones que se explican y tengo un error de compilación :confused:...
    Por favor si me ayudan


     
  20. neverdelimon1

    neverdelimon1 Moderador Staff AyudaExcel

    Reg:
    25 Ago 2008
    Mensajes:
    894
    Me Gusta recibidos:
    76
    Respuesta: ¿Como unir varias hojas de calculo en una sola sin abrirlas?

    Hola Amore

    Si nos pudieses indicar por favor cual es el error que te envia, asi podremos apoyarte.

    Por lo pronto verifica si tienes instalado el control: Microsoft ProgressBar Control, si no lo tienes basta con elimiar la parte del código que se refiere a dicho control, o descargarlo de la web y registrarlo pra que funcione.

    saludos cordiales
     
Estado del tema:
Cerrado para nuevas respuestas

Compartir esta página