Vamos a crear una calculadora de propinas en Excel usando VBA. Primero, necesitarás acceder a la pestaña Developer en la barra de la cinta. En Excel, haz clic con el botón derecho del ratón en un espacio vacío de la barra de la cinta y selecciona Personalizar la cinta .
En la parte derecha del diálogo Opciones de Excel , en Personalizar la Cinta , marque Desarrollador , y haga clic en OK .
En la pestaña Desarrollador , haz clic en el botón para que aparezca el editor Visual Basic .
El editor aparecerá en una nueva ventana. En la barra de menú, haga clic en Insert y luego en UserForm . Se mostrará una nueva UserForm con una superficie de diseño para crear una interfaz de usuario. Observe también que aparecerá la caja de herramientas .
En la caja de herramientas , seleccione el botón de comando y arrastre un control sobre la superficie de diseño.
Con el botón de comando seleccionado, en el panel Propiedades , cambie la leyenda Pie de foto a Calcular punta .
Ahora arrastra dos TextBoxes sobre la superficie de diseño para el total del billete y el tamaño del partido. También puedes añadir etiquetas para identificarlos.
Selecciona el primer TextBox y en el panel Propiedades , cambia el nombre a txtAmount y el segundo nombre de TextBox a txtPartySize.
Haz clic con el botón derecho del ratón en el botón de comando y selecciona View Code .
El editor abrirá un archivo de código y agregará una subrutina que será invocada cuando se haga clic en el botón de comando . Comienza añadiendo la declaración Option Explicit en la parte superior, sobre la subrutina CommandButton1_Click.
Ahora agregue la función para calcular la cantidad de punta que vimos anteriormente.
En la subrutina CommandButton1_Click, agrega el código para obtener los valores de las cajas de texto (que son cadenas), convertirlas en un doble y un entero, y mostrar el resultado del TipCalcFn en un cuadro de mensaje.
12345SumaDim Cantidad AsDobleDim TamañoDeParte ComoMontoIntegral =CDbl(txtAmount.Value)TamañoDeParte =CDbl(txtTamañoDeParte.Value)MsgBox (TipCalcFn(Cantidad, TamañoDeParte))
vb
Haga clic en el botón run para mostrar el UserForm en Excel.
En Excel, introduce una cantidad y el tamaño de la fiesta en los cuadros de texto y haz clic en el botón de comando . Aparecerá un cuadro de mensaje con la cantidad de la propina.
Por supuesto, la cantidad de la propina debe ser almacenada en la hoja de cálculo. La función Rango toma las coordenadas de una celda o rango de celdas en formato R1C1. Si las coordenadas son para una celda, se puede asignar un valor a esa celda. Cierra el cuadro de mensajes y el UserForm y cambia la última línea de la subrutina CommandButton1_Click.
1Range("A1")= TipCalcFn(Amount, PartySize)
vb
Ejecuta el UserForm de nuevo y esta vez, la cantidad de propina se colocará en la hoja de cálculo en la celda A1.