¿Agregar la condición de Múltiplos en SI en Excel?

Hola
Tengo una duda al respecto de la formula SI en excel;
Tengo una Columna que llama compras y otra que llama presentación y deseo obtener cuales de las celdas de la columna de compras esta errada EJ
columna Compras (A) Columna Presentación (B) Columna Resultado (C)
A1: 60            B1: 30                     C1: Correcto
A2:30             B2: 30                     C2: Correcto
A3: 25            B3: 30                     C3. Incorrecto
El objetivo es poder determinar en la columna C cuales están correcto o cuales no, partiendo de la base (B) el cual la (A) debe de ser igual a (B) o ser múltiplo de (B) de lo contrario es incorrecto
si en (A) tengo 120 y en (B) tengo 30 estaría correcto, ya que 30 esta 4 veces en 120
si en (A) tengo 130 y en (B) tengo 30 estaría incorrecto, ya que 30 esta 4 veces y decimales, no daría exacto
Agradezco la colaboración para elaborar esta fórmula
Att
Oscar A

1 Respuesta

Respuesta
1
Vamos a ver en vez de múltiplo voy a calcular si son divisibles enteros(sin residuo) y como primero tenemos que evaluar cual de los dos números es el mayor te he puesto en una macro los cálculos, así la macro te sitúa en la celda C1 y mientras que tengas números en la Col B hará los cálculos, si es divible uno por el otro exacto te pondrá Si y si es con decimales te pondrá NO.
Dibujas un botón en la hoja y le asignas esta macro con pulsar el botón te hará el calculo.
Sub Comprobar_divisibles()
    Range("C1").Select
    Do While ActiveCell.Offset(0, -1).Value <> ""
    If ActiveCell.Offset(0, -2).Value > ActiveCell.Offset(0, -1).Value Then
    ActiveCell.FormulaR1C1 = "=IF(MOD(RC[-2],RC[-1])=0,""SI"",""NO"")"
    End If
    If ActiveCell.Offset(0, -2).Value < ActiveCell.Offset(0, -1).Value Then
    ActiveCell.FormulaR1C1 = "=IF(MOD(RC[-1],RC[-2])=0,""SI"",""NO"")"
    End If
    If ActiveCell.Offset(0, -2).Value = ActiveCell.Offset(0, -1).Value Then
    ActiveCell.FormulaR1C1 = "=IF(MOD(RC[-1],RC[-2])=0,""SI"",""NO"")"
    End If
    ActiveCell.Offset(1, 0).Select
    Loop
End Sub
La formula es =SI(RESIDUO(A1;B1)=0;"SI";"NO") para el caso de A1>B1 y
=SI(RESIDUO(B1;A1)=0;"SI";"NO") para cuando B1>A1
tambien he tenido que utilizar la opcion de si los dos numeros son iguales, que valdría cualquiera de las dos.He utilizado una macro para que no tengas que estas valorando cual es el numero mayor en cada caso, la macro lo hace por tí.
Si necesitas alguna aclaración me lo dices, si te ha servido finaliza la consulta y la puntúas.
>Un saludo
>Julio
Julio Gracias, me sirvió muchísimo, solo hice el cambio de )=0 por )<>0, ya que no debo de tener en cuenta 0... pero excelente
Gracias de Nuevo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas