Excel - recorrer las hojas que he creado

 
Vista:
sin imagen de perfil
Val: 6
Ha aumentado su posición en 6 puestos en Excel (en relación al último mes)
Gráfica de Excel

recorrer las hojas que he creado

Publicado por Alejandro Quiroga (3 intervenciones) el 12/08/2018 01:04:32
Estimados Amigos,

tengo un proyecto de macros a medias ya que mis conocimientos no limitados y he acudido a vuestra ayuda adjuntare el archivo excel y pegare la macros en este mensaje lo que necesito es recorrer las hojas que he creado con cada equipo que en el proyecto donde trabajo existen y en una hoja de resumen pegar las observaciones de cada dia que vaya ingresando ojala me puedan ayudar.

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
Sub Contar_Hojas()
 'Dim Hojas As Integer
 'Dim Contar As Integer
 Dim ulfila As Long ' extrae el ultimo dato de la hoja bulldozer
 Dim infor As String ' guarda la informacion de la ultima fila en la hoja bulldozer
 Dim contfila As Integer ' cuenta las filas de la hoja bulldozer
 Dim equipo As String ' condicion para que extraiga los datos de la hoja bulldozer
 Dim hj As Long ' captura la ultima fila que tiene datos en la hoja de resumen
 
 
 ulfila = Sheets("Bulldozer").Range("D" & Rows.Count).End(xlUp).Row
 
 
 'Hojas = Sheets.Count
 
 'For Contar = 4 To Hojas
    For contfila = 6 To ulfila ' cuenta las filas de la hoja bulldozer hasta la ultima que tenga algun dato
        infor = Sheets("Bulldozer").Cells(contfila, 4) ' extrae la informacion de la ultima fila en la hoja bulldozer
    Next contfila
 
    If equipo = equipo Then ' condicion que debe cumplir para traer el dato de la ultima fila en la hoja bulldozer
        hj = Sheets("Resumen_Observaciones").Range("D" & Rows.Count).End(xlUp).Row ' cuenta las filas en la hoja 1 donde pegara el dato extraido de la hoja bulldozer
        Sheets("Resumen_Observaciones").Cells(hj + 1, 4) = infor ' pega la informacion extraida de la hoja bulldozer en la fila y columna en blanco
    End If
 
 'Next Contar
 
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.154
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

recorrer las hojas que he creado

Publicado por Antoni Masana (1459 intervenciones) el 13/08/2018 13:22:31
No acabo de entender que deseas hacer. La explicación es un poco confusa.

A ver si lo entiendo tienes varios libros y una hoja resumen, hasta aquí bien.

¿La hoja resumen está en cada libro o solo en uno en particular.?
¿Quieres ejecutar la macro en cada libro y que grabe en la hoja resumen del propio libro o de otro?
¿Quieres una macro que abra cada libro, busque los datos y los grabe en la hoja resumen del propio libro o de otro?
¿Cuántos libros se tienen que actualizar?

Una forma de hacerlo cuando has de tener una misma macro en varios libros para hacer lo mismo y cosas que se pueden o se deben hacer a la vez es tener un libro MASTER o MAESTRO en castellano el cual ira abriendo los libros uno a uno y ejecutara una macro que tendrá el en propiedad sobre cada uno de los libros. Y si crees que es más liado es que no has tenido 10 ficheros todos con la supuesta misma macro y cada uno con una versión diferente que ya no sabes cuál es la buena.

La macro que has puesto es un verdadero lio. Cuando sepa realmente que es lo que deseas hacer te ayudo a desenredar el “embolico” que tienes.

Saludos.
\\//_
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
Val: 6
Ha aumentado su posición en 6 puestos en Excel (en relación al último mes)
Gráfica de Excel

recorrer las hojas que he creado

Publicado por Alejandro (3 intervenciones) el 13/08/2018 13:35:27
Estimado,

Junto con saludar, agradezco muchísimo su respuesta aclarare cada una de sus respuesta;

¿La hoja resumen está en cada libro o solo en uno en particular.?
R: Es solo una hoja de resumen para todas las hojas de los equipos.
¿Quieres ejecutar la macro en cada libro y que grabe en la hoja resumen del propio libro o de otro?
R: Solo en la hoja de resumen.
¿Quieres una macro que abra cada libro, busque los datos y los grabe en la hoja resumen del propio libro o de otro?
R: Solo para el libro en donde tengo las hojas de los equipos y el resumen.
¿Cuántos libros se tienen que actualizar?
R: Solo en el que tengo toda la información.

Atento a sus respuesta

Alejandro Quiroga.
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 Antoni Masana
Val: 4.154
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

recorrer las hojas que he creado

Publicado por Antoni Masana (1459 intervenciones) el 14/08/2018 07:39:00
Bien.

Tenemos que es un libro con varias hojas y una de ellas es de resumen de las otras y se llama "Resumen_Observaciones"

La macro podría ser algo asi:

1
2
3
4
5
6
7
8
9
10
11
Sub Macro
    Dim Hoja As Object
    For Each Hoja In ActiveSheet.Parent.Sheets
        IF Hoja.Name <> "Resumen_Observaciones" Then
            Select(Hoja.Name).Select
            ' ---&--- Aqui Copias los Datos
            Select("Resumen_Observaciones").Select
            ' ---&---- Aqui los pegas
        End If
    Next
End Sub

Añado el codigo segun tu ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub Macro
    Dim Hoja As Object, Ult_Fila as Long, Informac As String, Ult_Obse as Long
 
    Ult.Obse = Sheets("Resumen_Observaciones").Range("D" & Rows.Count).End(xlUp).Row
 
    For Each Hoja In ActiveSheet.Parent.Sheets
        IF Hoja.Name <> "Resumen_Observaciones" Then
            With Select(Hoja.Name)
               Ult_Fila = .Range("D" & Rows.Count).End(xlUp).Row
               Informac = .Cells(Ult_Fila, 4)
            End With
 
            With Select("Resumen_Observaciones")
                Ult_Obse = Ult_Obse + 1
                .Cells(Ult_Obse, 4) = informac
            End With
        End If
    Next
End Sub

Ahora bien, a mi no me gusta esto porque a veces miente. Y ¿por que miente? porque si borras lineas Excel las asume como líneas con datos en blanco.

1
.Range("D" & Rows.Count).End(xlUp).Row

Si es tu caso te puedo contar mi solucion alternativa, en principio si funciona esto es mucho mas rapido.

Saludos.
\\//_
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
Val: 6
Ha aumentado su posición en 6 puestos en Excel (en relación al último mes)
Gráfica de Excel

recorrer las hojas que he creado

Publicado por Alejandro (3 intervenciones) el 14/08/2018 13:36:55
Buenos dias,

quiero ante todo agradecer su ayuda, hoy procedi a pegar la macro y ejecutarla en mi planilla pero al ejecutarla me sale error de sintaxis en esta linea
With Select(Hoja.Name) y With Select("Resumen_Observaciones") se que he molestado mucho pero por que pasa esto.

atento a sus comentarios

Alejandro Quiroga
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 Antoni Masana
Val: 4.154
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

recorrer las hojas que he creado

Publicado por Antoni Masana (1459 intervenciones) el 15/08/2018 10:17:42
La macro era a forma de ejemplo.

No esta probada y no se si funciona, tendría que ver el libro para probarla y saber porque falla.
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