¿Te atreves a demostrar lo que sabes resolviendo alguno de estos
temas abiertos/no resueltos?

Traer datos con col...
 
Compartir:
Avisos
Vaciar todo

[Resuelto] Traer datos con color de fuente rojo con una macro

Jacifuentes521
(@jacifuentes521)
Nuevo miembro Registered

Buenas.

Tengo un archivo Excel (es solo un ejemplo) con varias hojas y en cada hoja hay datos.

Enlaces de las imágenes de algunas hojas:

https://ibb.co/vkPcqTp

https://ibb.co/p4tctfP

https://ibb.co/KwkxDMk

Se puede observar que hay hojas que en la columna B hay una escala, o sea datos con color de fuente roja, pero hay otras hojas que NO lo tienen.

Éste es el código que tengo:

Sub ConsolidarInconsistencias()
Dim Hoja As Worksheet, CON As Worksheet, Título As Range
Application.ScreenUpdating = False
Set CON = Sheets("Inconsistencias Consolidadas")
CON.Range("A2:D" & CON.Range("A" & Rows.Count).End(xlUp).Row + 1).ClearContents
For Each Hoja In Sheets
   With Hoja
      If Not Hoja.Name = CON.Name Then
         Set Título = .Rows(1).Find(Hoja.Name)
         If Not Título Is Nothing Then
            For x = 2 To .Cells(Rows.Count, Título.Column).End(xlUp).Row
               If .Cells(x, Título.Column).Interior.Color = vbYellow Then
                  fila = CON.Range("A" & Rows.Count).End(xlUp).Row + 1
                  CON.Range("A" & fila) = .Range("A" & x)
                  CON.Range("E" & fila) = Hoja.Name
                  CON.Range("G" & fila).Font.Color = vbRed
                  CON.Range("G" & fila).HorizontalAlignment = xlCenter
                  CON.Range("H" & fila) = .Cells(x, Título.Column)
                  CON.Range("H" & fila).Interior.Color = vbYellow
                  CON.Range("I" & fila) = .Cells(x, Título.Column).Offset(0, 1)
               End If
            Next
         End If
      End If
   End With
Next
End Sub

El resultado es el siguiente. Enlace con la imagen:

https://ibb.co/jJ3dFRx

Lo que necesito también es que SI la columna tiene escala (o sea, color de fuente roja), también me traiga esos datos en la columna G.

Debería quedar así más o menos. Enlace con la imagen:

https://ibb.co/whJPFrm

Agradezco su colaboración.

Adjunto el archivo de ejemplo.

Citar
Topic starter Respondido : 28/01/2022 6:25 pm
Etiquetas del debate
RET
 RET
(@ret)
Miembro Admin

@jacifuentes521

 

Añade después de CON.Range("G" & fila).HorizontalAlignment = xlCenter lo siguiente

If .Cells(fila, 2).Font.Color = vbRed Then
    CON.Range("G" & fila).Value = .Cells(x, 2).Value
End If

 

IMF_RET

https://InformaticaMuyFacil.com

ResponderCitar
Respondido : 30/01/2022 9:48 am
Jairo Arturo Cifuentes
 Jairo Arturo Cifuentes
(@Jairo Arturo Cifuentes)
Invitado

@ret Sí sirvió. Gracias.

ResponderCitar
Respondido : 31/01/2022 2:09 pm

Dejar una respuesta

Nombre del autor

Correo electrónico del autor

Título *

 
Vista previa 0 revisiones Guardado