Crea tu propia función en excel

Aunque Excel tiene muchas, tal vez cientos de funciones integradas, como SUM, VERT.BÚSQUEDA, ENLACES, etc. sin embargo, encontrará que una vez que comience a usar Excel para tareas más complicadas, a menudo necesitará una función que no existe. No te preocupes, el rescate está cerca. Todo lo que tiene que hacer es crear una función usted mismo.

Pasos

Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 1
1. Cree un nuevo libro de trabajo o abra el libro de trabajo donde desea usar la nueva función definida por el usuario (UDF).
Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 2
2. Abra el Editor de Visual Basic que está integrado en Microsoft Excel, yendo a Herramientas->macro->Vaya al Editor de Visual Basic (o presionando Alt+F11).
Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 3
3. Añadir un nuevo módulo a su libro de trabajo, presionando el botón de abajo. Puede crear la UDF en el propio libro de trabajo sin agregar un nuevo módulo, pero de esa manera no es posible usar la función en otra hoja de trabajo del mismo libro de trabajo.
Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 4
4. Crea el encabezado o prototipo de tu función. Debe tener la siguiente estructura:

funcion publica "El nombre de la función" (param1 Tipo de eje 1, param2 Tipo de eje 2) Tipo de retorno de eje Esto puede tener tantos parámetros como crea que necesita, y puede usar cualquier tipo de datos estándar de Excel o tipos de objeto para ello, como Rango. Puede pensar en los parámetros como los operadores a los que responderá su función. Por ejemplo, si completa SIN(45) para calcular el seno de 45 grados, 45 es el parámetro. El código de su función usará ese valor para calcular la función y presentar su resultado.
Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 5
5. Agregue el código de la función, asegurándose de 1) usar los valores de los parámetros; 2) asignar el resultado al nombre de la función; y 3) salir de la función con `función final`.Aprender a programar, ya sea en VBA o en cualquier otro lenguaje de programación, requiere tiempo e información más detallada y completa. Pero algunas funciones consisten en pequeños bloques de código y usan solo una pequeña parte de un lenguaje de programación. Los elementos más útiles de VBA son:
  • Eso Si-bloque, que ejecuta parte del código cuando se cumple una condición. Por ejemplo:


    Resultado del curso de función pública (grado como entero) como cadena
    si grado >= 5 Entonces
    Resultado del curso = "Aprobado"
    Demás
    Resultado del curso = "rechazado"
    Terminara si
    función final


    Presta atención a las partes de un Si-bloque de código: IF condición ENTONCES código ELSE código END IF. La condición Demás y la segunda parte del código son opcionales.
  • Eso Hacer-bloque, que ejecuta parte del código siempre que (mientras) o hasta (hasta) se cumple una determinada condición. Por ejemplo:

    Función pública IsPrime (valor como entero) como booleano
    Dim i como entero
    yo = 2
    EsPrimo = Verdadero
    Hacer
    Si valor / i = Int(valor / i) Entonces
    EsPrimo = Falso
    Terminara si
    yo = yo + 1
    caminar mientras yo < valor Y esPrimo = Verdadero
    función final


    Tenga en cuenta las partes de nuevo: DO code LOOP WHILE/UNTIL condición. Observe también la segunda línea donde se declara la variable. Puede asignar variables a su código para usar más tarde. Las variables se comportan como valores temporales dentro del código. Y, por último, observe la declaración de la función como BOOLEAN, un tipo de dato que solo puede ser VERDADERO o FALSO (verdadero o falso). Este método para determinar si un número es primo está lejos de ser óptimo, pero está escrito para que el código sea más fácil de leer.
  • Eso por-cuadra, con el que ejecutas parte del código varias veces. Por ejemplo:

    Factorial de función pública (valor como entero) siempre que
    Resultado tenue mientras dure
    Dim i como entero
    Si valor = 0 Entonces
    resultado = 1
    ElseIf valor = 1 Entonces
    resultado = 1
    Demás
    resultado = 1
    Para i = 1 Para valor
    resultado = resultado * i
    próximo
    Terminara si
    Factorial = resultado
    función final


    Nuevamente, preste atención a las diferentes partes:FOR variable = límite inferior TO código de límite superior SIGUIENTE. Fíjese también en el nuevo ElseIf parte en el Si-declaración, que le permite agregar más opciones al código para ejecutar. Finalmente, presta atención a la declaración de la función y la variable "resultado" Si pulmón. Eso pulmón-tipo de datos permite valores mucho más grandes que un Entero.

    A continuación se muestra el código de una función que convierte números pequeños en palabras.
    Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 6
  • 6. Regresa a tu libro de trabajo y use esta función comenzando el contenido de una celda con un es igual-firmar, seguido del nombre de su cargo. Coloque un paréntesis de apertura después del nombre de la función, separe los parámetros entre sí comas y luego un paréntesis de cierre. Por ejemplo:

    =NúmeroALetras(A4)

    También puedes elegir la fórmula casera buscándola en la categoría Usuario definido en el Asistente para insertar funciones. Simplemente haga clic en el botón efectos especiales en el lado izquierdo de la barra de fórmulas.Los parámetros pueden ser de tres tipos:
  • Los valores constantes se escriben directamente en la fórmula de la celda. Las cadenas deben estar entre comillas en este caso.
  • Referencias de celda como B6 o alcanzar, como A1:C3 (el parámetro debe ser del tipo de dato rango son)
  • Otras funciones llamadas dentro de su función (su propia función también puede llamarse dentro de otras funciones). Por ejemplo: =Factor(MAX(D6:D8))
    Imagen titulada Crear una función definida por el usuario en Microsoft Excel Paso 7
    7. Verifique el resultado aplicando la función varias veces para asegurarse de que los valores en los parámetros se aplican correctamente:

    Consejos

  • Al usar un bloque de código dentro de un árbol de control, como If, For, Do, etc., asegúrese de sangrar el bloque usando algunos espacios o el botón Tabulador (el estilo de sangría depende de usted). Esto hace que el código sea más fácil de entender y mucho más fácil de depurar y realizar mejoras.
  • Si no sabe cómo escribir el código de una función, lea el artículo Escribir una macro simple en Excel.
  • A veces no se requieren todos los parámetros para calcular el resultado de una función. En ese caso puedes usar la palabra clave Opcional lugar antes del nombre del parámetro en el encabezado de la función. Puedes usar la función Falta(nombre_parámetro) dentro del código para determinar si un parámetro se asigna o no a un valor.
  • Use un nombre que no se haya usado antes en Excel para definir un nombre de función, de lo contrario terminará usando solo una de las funciones.
  • Excel tiene muchas funciones integradas y la mayoría de los cálculos se pueden hacer usándolos por separado o en combinación. Antes de comenzar a codificar sus propias funciones, revise la lista de funciones disponibles. Las funciones integradas pueden ser más rápidas.
  • Advertencias

    • Por razones de seguridad, los usuarios a veces deshabilitaban las macros. Asegúrese de informar a sus colegas que el libro de trabajo que envía contiene macros y que pueden estar seguros de que no dañará sus computadoras.
    • Las características de este artículo no son de ninguna manera la mejor manera de resolver problemas relacionados. Solo tienen la intención de demostrar el uso de los controles del idioma.
    • Como cualquier otro lenguaje de programación, VBA tiene toneladas de controles además de Do, If y For. Los mencionados aquí solo se explican para explicar qué posibilidades hay dentro del código fuente de la función. Hay muchos tutoriales en línea para aprender VBA.

    Оцените, пожалуйста статью