Fórmula Visual Basic para Excel

Deseo colocar una fórmula en Visual Basic para que depdendiento el ingreso (mayor a 150,000), la utilidad se multiplique por 0.3 y si es menor a 150,000 se multiplique por 0.25.

1 Respuesta

Respuesta
1

Ho la Mario y bienvenido a todoexpertos.

En cuál celda vas a capturar el ingreso, en cuál celda está la utilidad y en cuál celda quieres el resultado.

Podrías explicar lo anterior con un ejemplo.

Buenos días Dante, tratare de explicarme:

En el cuadro de Excel en la celda C20 se ingresa el total de ingresos, luego se resta los costos y gatos y el resultado neto (utilidad) esta en la Celda C27. Entonces, si el total de ingresos que se coloca en la celda C20 es igual o mayor a $150,000.00' al resultado de la celda C27 se le aplica el 30%, pero si los ingresos de la celda C20 son menor a $150,000.00 se le aplica el 25%.

Entonces quiero hacer esa formula en Visual Basic pero no se como referenciar que el porcentaje que se aplicara a la celda C27 depende del valor de C20.

Espero poder haber explicado bien.

Saludos,

Mario

Puedes responder lo siguiente y en el orden:

1. ¿Actualmente qué fórmula tienes en C27?

2. Quieres apretar un botón, que calcule la utilidad (ingresos - costos - gastos) y a ese valor se le aplique el % 30 ó 25.

3. ¿Y el resultado lo quieres en la celda C27?

1- En la Celda C27 tengo una fórmula de restas es decir Ingreso - costos y gastos, que me determina la utilidad.

2- Lo que quisiera es una fórmula que tomando en cuenta la utilidad se aplique el porcentaje 25% o 30% pero este porcentaje depende de los ingresos que están en la celda C20.

3- Si el resultado de la C27 debería ser la utilidad multiplicada por el porcentaje.

Responde en el siguiente orden:

1. Pon aquí la fórmula que tienes en C27

2. Ya entendí la fórmula, pero en qué momento quieres que se calcule, porque tu requerimiento dice que la quieres en VBA, entonces quieres que se calcule en automático o cuando tú presiones un botón.

La quiero en automático, sin botón, de preferencia.

Necesito replicar en VBA la fórmula que tienes en la celda C27

Pon aquí tu fórmula

No sé para qué lo quieres en visual basic.

Podrías hacerlo con tu misma fórmula, ejemplo de fórmula:

=(C20-C22-C24)*(SI(C20>=150000,30%,25%))

Sería así:

=tuformula * (SI(C20>=150000,30%,25%))

Y de esa manera no necesitas la fórmula en Visual Basic.


Pero si lo quieres en VBA entonces me comentas.

Dante muchas gracias por la fórmula de Excel, pero si no es mucha molestia me gustaría saber como seria la fórmula en Visual Basic.

Saludos,

Mario

1. ¿Actualmente qué fórmula tienes en C27?

.

1. Pon aquí la fórmula que tienes en C27

.

Necesito replicar en VBA la fórmula que tienes en la celda C27

Pon aquí tu fórmula

.

Por cuarta vez te pido que pongas a aquí la fórmula que tienes en la celda C27.

1- Formula actual: =C25-C26

La respuesta con los cálculos pueden estar en la celda C28

Pon el siguiente código en los eventos de tu hoja

Private Sub Worksheet_Calculate()
  Range("C28").Value = ([C25] - [C26]) * IIf([C20] >= 150000, 0.3, 0.25)
End Sub

Para poner el código en los eventos de tu hoja. Presiona click derecho sobre el nombre de la hoja donde quieres que se ejecute la macro, en el menú que te aparece, selecciona la opción Ver código, en el panel que se abre pega la macro. Regresa a la hoja, modifica alguna celda para actualizar las fórmulas. O bien, presiona F9 y el resultado aparecerá en la celda C28

Dante ¡Muchísimas gracias por tu ayuda!

Saludos,

Mario

.

'Al final de mi respuesta hay un botón para valorar.

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas