|
hola disculpa la demora :
te adjunto una macro para que la evalues:
Sub Comparar()
Dim resp1 As String, resp2 As String, resp3 As Long
'resp1 = InputBox("Ingrese el primer rango")
'resp2 = InputBox("Ingrese el Seguno rango")
'resp3 = InputBox("Cantidad de repeticiones")
resp1 = "k1" 'columna K
resp2 = "Q1" ' columna Q
resp3 = 20 ' CANTIDAD DE REPETICIONES DEL CICLO debe rastrear las filas de la 10 a la 30 = 20
X1 = Range(resp1).Column
Z1 = Range(resp1).Row
X2 = Range(resp2).Column
Z2 = Range(resp2).Row
For H = 1 To resp3 ' HACES UN FOR PARA RASTREAR CUANTAS VECES QUIERAS
If Cells(Z1, X1).Font.Bold = True Then 'Verificaion K en negrita
Else
Valor2 = Cells(Z2, X2).Value 'VALOR Q
Valor1 = Cells(Z1, X1).Value ' VALOR K
Valor3 = Cells(Z1, 18).Value ' VALOR R
Valor4 = Cells(Z1, 2).Value ' VALOR B
'Si los valores de la columna Q son menores que los de la columna K
'y los de la columna R son mayores que los de la B, entonces ColorIndex=45
If Valor2 < Valor1 And Valor3 > Valor4 Then
Cells(Z1, 2).Select ' ESTA CELDA MODIFICA LA COLUMA B = 2
With Selection.Interior
ColorIndex = 45
.Pattern = xlSolid
End With
GoTo SALIDA:
End If
' SI Q ES MENOR QUE K
If Valor2 < Valor1 Then
Cells(Z1, 2).Select ' ESTA CELDA MODIFICA LA COLUMA B = 2
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
GoTo SALIDA:
End If
'Si los valores de la columna B son mayores o iguales a los de la K, entonces ColorIndex=3
If Valor4 >= Valor1 Then
Cells(Z1, 2).Select ' ESTA CELDA MODIFICA LA COLUMA B = 2
With Selection.Interior
ColorIndex = 3
.Pattern = xlSolid
End With
GoTo SALIDA:
End If
End If
SALIDA:
Z1 = Z1 + 1
Z2 = Z2 + 1
Next H
End Sub
|