Las funciones definidas por el usuario, conocidas también como UDF por sus siglas en Inglés (User Defined Functions) permiten, por medio del uso de macros o código VBA, el contar con funciones similares a las que existen de forma predefinida en Excel.
La variedad de temas que se pueden abordar por medio de estas funciones es numerosa, si se esta comenzando a aprender el uso de este tipo de funciones convendría comenzar realizando rutinas pequeñas que favorezcan el aprendizaje del lenguaje, a continuación se presenta una relación de ejemplos de lo que se pueden realizar por medio de las funciones definidas por el usuario.
Cabe recordar que estas funciones pueden ser empleadas desde cualquier parte del proyecto, ya sean las hojas, ThisWorbook, módulos, y formularios, y si son empleadas desde las hojas la invocación se realiza de la misma forma que se procede para las funciones ya existentes como BuscarV, Concatenar, etc.
¿Cómo crear funciones en Excel?
En ocasiones recibo la consulta ¿Cómo se hace una función en Excel?, ¿Qué es una función definida por el usuario?, ¿hay funciones personalizadas en Excel?
En realidad crear una función en Excel es una tarea sencilla, en el siguiente artículo tienes el paso a paso de como crearlas: Crear funciones en Excel
Estas UDFs las podemos usar desde la celdas en una hoja en Excel, como también las podemos invocar desde cualquier macro.
¿Cómo ver las funciones en Excel?
Al momento encontrarnos en una celda podemos usar la opción "Insertar función", desde la que podemos acceder a la lista de funciones existentes, y la ayuda correspondiente a cada una de ellas.
Luego de ello, en la siguiente pantalla podemos seleccionar la "Categoría", las "User Defined Functions" se encuentran en la categoría "Definidas por el usuario"
Limitaciones de las UDF
Una UDF llamada desde una celda (en una hoja) no puede cambiar el entorno de Excel, esto incluye:
- Insertar, eliminar o dar formato a celdas
- Cambiar el valor de una celda distinta a aquella en la que se invoca a la UDF
- Mover, renombrar, eliminar o añadir hojas
- Cambiar cualquier configuración del entorno como activar o desactivar el cálculo automático
Por ejemplo, si se llama a la UDF test desde una celda no funcionaría, pero si es invocada desde otra macro como test2, si funcionaría.
Function test()
Cells(2, 2).Interior.ColorIndex = 36
End Function
Sub test2()
MsgBox test
End Sub
Siguientes pasos
Revise los siguientes ejemplos de UDF (funciones definidas por el usuario), en todos ellos encontrará muy diversos ejemplos de como aplicar estas funciones.
Si alguna de estas funciones definidas por el usuario contiene una mejora que usted considera conveniente o necesaria, por favor registre un comentario para que procedamos a revisar la publicación.
Si ya conoce algunas de estas funciones y desea revisar algunas UDFs con rangos de celdas, puede observar los ejemplos que se encuentran en https://www.excel-avanzado.com/udf-rangos-de-celdas
Conozca más acerca de este tipo de funciones mediante el artículo funciones personalizadas en Excel.
Ejemplos de funciones definidas por el usuario
Cada uno de los siguientes ejemplos tiene los códigos en Visual Basic para Aplicaciones, puedes reutilizar todos los que necesites.
- Duración de Macaulay en Excel
- Último día del mes en Excel (VBA)
- Identificar color de celda en Excel
- Provisiones Genéricas para créditos directos (SBS)
- Déficit de agua en Hipernatremia
- Tamaño mínimo de muestra para variables cualitativas
- Función para factorizar por fórmula general
- Cálculo de lote económico(EOQ) para gestión de inventarios
- Cálculo del Desplazamiento de un cuerpo en MRUV
- Función Periodo Promedio de Cobro
- Función cuota de Crédito Comercial
- Función de Consumo Intertemporal
- Función para obtener el precio de una acción a través del método de dividendos a perpetuidad
- UDF - Índice Herfindahl Hirschmann (IHH)
- Suma de n términos consecutivos de una progresión aritmética
- 5 Ejercicios de Funciones definidas por el usuario
- Ejemplos de funciones definidas por el usuario
- Contar el número de alumnos aprobados/desaprobados en un rango de celdas
- Problema de Maximización de Utilidad
- Calcular el monto de pago total por un préstamo (El principal)
- Distancia entre 2 puntos
- Punto de Equilibrio
- ¿Qué es el WACC?
- Categoría Deudor SBS
- Función Vida Optima de Explotación
- Indicador de grasa corporal, RCC e IMC.
- Hallando la distancia de dos puntos
- Deflactar una Base de Datos
- Cálculo de Integrales Inmediatas Definidas
- Valor en Riesgo (VaR)
- UDF: Cálculo de cuota por departamento para recibos compartidos
- Calcular propina
- Ingreso Estimado con descuento
- UDF - Índices de Rentabilidad
- UDF - Sacar nota de un curso
- Funciones definidas por el usuario
- UDF-Cálculo de Resistencia Equivalente
- UDF control de calidad IKEA
- Función para hallar el Promedio Ponderado del Costo del Capital (WACC)
- UDF Calorías necesarias según Harris-Benedict (mujeres)
- UDF- Prueba Defensiva (Ratio de Liquidez)
- UDF Tabla de Equivalencias para Repostería
- Precio de una acción
- UDF para la Calificación y Evaluación de Proveedores
- UDF Cálculo Volumen Reservorio
- UDF para hallar la cantidad de horas trabajadas
- UDF para el cálculo de los ratios de endeudamiento GAO, GAF y GAT
- UDF Aplicado para el Calculo de La Demanda Agregada
- UDF - cálculo de la Energía Potencial, Energía Cinética y Energía Mecánica
- UDF aplicado aun juego cotidiano: BINGO
- UDF Costos totales de un presupuesto de producción
- Cálculo de Impuesto de Renta 5ta Categoría
- UDF Descuento AFP
- UDF - Cálculo de Límites de control
- UDF aplicado a el principio de Arquímides
- UDF Aplicado al Flujo de Caja Libre y al Periodo de Recuperación de la Inversión
- Funcion Calculo de BETA (Aplicación a Finanzas)
- UDF aplicado al Costo Unitario Total
- UDF aplicado al Ratio de Sharpe
- UDF Ahorro anual proyectado
- Elasticidad de la Demanda
- UDF Conversiones de Temperatura
- UDF del cálculo de pronostico usando el método estacional multiplicativo
- UDF Funcion de Indice Masa Corporal
- Ejemplo de Ley de Biot-Savart
- UDF Aplicado al cálculo del Índice de Ruffier
- Función Porcuantotevas
- UDF para calcular el costo de la energía consumida por un aparato eléctrico.
- UDF aplicado al Cálculo de la Rentabilidad Real
- UDF aplicado a Cálculo de Ahorro en un Cuadro Comparativo de Precios
- UDF aplicado a obtener la Variación de Productividad de una empresa
- UDF aplicado al calculo de rentabilidad de un portafolio, modelo CAPM
- UDF aplicado al cálculo del Indice de Masa Corporal
- Suma de decibeles
- UDF Suma de valores en negrita
- UDF para calcular el Descuento de AFP
- UDF aplicado a los rangos de Retorno Esperado de una acción
- Cantidad de agua requerida, según peso, calorías consumidas y horas de actividad física.
- UDF aplicado al cálculo del lote económico de compra (EOQ)
- UDF: función del Indice de Riesgo Ambiental IRA
- UDF Función Tipo de Cambio Forward Venta (fwventa)
- Velocidad Final y Altura en MRUV en caida libre
- UDF-cuota leasing
- Ejemplo de Basic Earning Power ratio
- Extraer números VBA - Ejemplo con Tipo de cambio
- Cambiar de categoría de una UDF
- Ideas para concatenar celdas con VBA o Macros
- UDF aplicado a Cálculo de las Notas Curso Excel
- UDF aplicado a Calculo de la CTS
- UDF - Estado de Resultados para cuantificar la Utilidad Empresarial
- Cálculo Nitrógeno Amoniacal
- UDF Promedio de ventas
- Distancia entre los puntos
- UDF - Tipo de Obesidad según el IMC
- UDF Función Utilidad Retail
- UDF: determinación del tamaño de una muestra estadística
- Formulas para sacar promedio total y nota requerida
- Cantidad Económica de Pedido - modelo comercial de inventarios
- Función sumtotaldeQ
- Concatenar el contenido de un rango de celdas (mail recordatorio)
- Función Suma de Dígitos
- UDF – Presupuesto
- UDF sacar promedio del curso de Finanzas 1
- UDF para calcular el pedido de materiales en el mes
- UDF Nota Ponderada de Curso de Postgrado
- Función FRC/FCS
- Cálculo de Tasas Efectivas y Anualidades
- Cálculo del WACC en Excel
- Crecimiento promedio geométrico del PBI
- Función RandomNumber en VBA
- UDF aplicado al conteo de datos
- UDF para el cálculo del valor futuro según pagos con Gradiente Geométrico
- Punto de Equilibrio y Valor de Equilibrio
- Excel Avanzado UDF aplicado al cálculo de la cuota flat
- Excel Avanzado: UDF aplicado a determinar la variación de productividad
- Excel Avanzado: UDF aplicado al calculo del número de operarios en una planta
- UDF aplicado al cálculo de la diagonal de un poliedro
- Excel avanzado: UDF aplicado a valuación de inventarios
- Excel Avanzado: UDF para el cálculo de Productividad de una Agencia Bancaria
- Excel avanzado: UDF aplicado al cálculo del área de un círculo
- Excel Avanzado: UDF Aplicado a eleccion de Depositos a Plazo Fijo
- Calculando ahorros
- Excel Avanzado: UDF aplicado para el cálculo de variación de costo por eficiencia
- Excel Avanzado: UDF aplicado al cambio de una Tasa de Interés en Dólares a Soles
- Excel Avanzado: UDF para dar vuelto en soles a una venta en dólares
- UDF aplicado a la aprobación de un curso
- Excel Avanzado: UDF Número de cifras de un Decimal transformado en Binario
- Cálculo de tiempo de trabajo de un empleado
- Función Excel Avanzado: UDF aplicado al cálculo del sobregiro bancario
- UDF Aplicado al calculo del Rendimiento Esperado de una accion
- Uso de Macros En la Elaboracion de un Índice Bursátil
- Ejemplo de "For" aplicado al Cálculo del Factorial de un Número
- Ejemplo de UDF para el cálculo de la retracción de una factura.
- UDF aplicado a la evaluación de avance de un proyecto
- Excel Avanzado: UDF aplicado al cálculo del promedio de prácticas y promedio final.
- Ejemplo de función para el cálculo de la comisión ganada por ventas
- Funcion para calcular el tipo de cambio proyectado
- Ejemplo de función para el cálculo del porcentaje de merma ideal
- Función para el Cálculo del Test de Diferencias
- Calculo de función FORGEN (fórmula general)
- Función para calcular pago ventas
- Función para la Descomposición Factorial de un Número con recursividad
- Función para calcular el CRAEST
- Función para el Cálculo de la Hipotenusa de un Triángulo Rectángulo
- Excel Avanzado: UDF Aplicado al cálculo del índice de Lerner
- Ejemplo de UDF para valorar opciones Call con el modelo Black Scholes
- Ejemplo de UDF para el Cálculo de Pago de Impuesto a la Renta de Cuarta Categoría
- Ejmplo de UDF para Calcular el Tipo de Cambio Forward Teórico
- Ejemplo de UDF para calcular el Volumen de un cilindro
- Función Ingreso
- Función Consumo
- Función definida por el usuario: Par-Impar
- Función Discriminante de un Polinomio Cuadrático
- Función definida por el usuario: Área de un triangulo
- Función Calificación
- Función BeneficioCosto
- Función IMC
11/08/2012 a las 11:55 am
PROFESOR COMO CREAR UNA MACRO QUE ME CALCULE EL VALOR% DE MAS DE DOS VALORES Y ENCONTRAR EL PORCENTAJE QUE ESTA MAS BAJO EN LOS TRES AÑOS
EJEMPLO ENCONTRAR EL VALOR PORCENTUAL D 2009,2010,2011 EN HURTO DE VEHICULOS
25/03/2013 a las 10:02 pm
Hola Federico
Respecto a tu consulta, ingresé al ejemplo 27 - "Excel Avanzado: UDF aplicado al cálculo del promedio de prácticas y promedio final", y con base en ese ejemplo generé una UDF, la cual muestro a continuación:
Function minimo(año1, año2, año3, año4)
int1 = año1 / (año1 + año2 + año3 + año4)
int2 = año2 / (año1 + año2 + año3 + año4)
int3 = año3 / (año1 + año2 + año3 + año4)
int4 = año4 / (año1 + año2 + año3 + año4)
If int1 < int2 And int1 < int3 And int1 < int4 Then
minimo = int1
ElseIf int2 < int1 And int2 < int3 And int2 < int4 Then
minimo = int2
ElseIf int3 < int1 And int3 < int2 And int3 < int4 Then
minimo = int3
Else
minimo = int4
End If
End Function
Saludos
Juan Jaén
26/03/2013 a las 10:40 am
Hola
He creado una UDF para determinar la variación porcentual de un dato con respecto de otro. Por ejemplo, deseo conocer el porcentaje de variación del consumo de papel del año 2012 con respecto del año anterio (2011).
La fórmula sería la siguiente:
Consumo Año 2011: 1500
Consumo Año 2012: 2000
Fórmula = ((2000*100)/1500)-100
Resultado=33.33% -
Interpretación: Hubo un incremento en el consumo de papel en un 33.33%
(menos árboles en el mundo?)
Bueno, aquí la UDF:
Function var_porcentual(dato1, dato2)
resultado = (dato2 * 100 / dato1) - 100
var_porcentual = resultado
End Function
Es una UDF sencilla, pero considero que puede ser de vuestra utilidad...
Quedo a la espera de comentarios...
Buen día
Saludos,
Juan Jaén
30/03/2013 a las 9:46 am
Molesto su atención para que me ayuden a resolver una inquietud que está referida a cómo puedo subir imagenes en este Blog.
En mi caso y seguramente en el de muchos, es más fácil explicar situaciones, o el desarrollo de lo que hacemos o queremos hacer con la hoja de cálculo, a través de gráficos o imagenes (o copia de pantallas).
Es por ello que acudo a ustedes a ver si me dan un alcance.
Mil gracias
Jorge Rojas.
30/03/2013 a las 3:36 pm
estima profesor estoy tratando aplicar la funcion buscarv y concatenar, para asignar el nombre a un rango, en una lista que crada con codigo nombre y apellido, a la hora de aplicar la funcion = BUSCARV (A6;ListaClientes;2;FALSO) me sale siempre #¿NUMERO? LE HE DADO TODAS LAS POSIBLES SOLUCIONES y corregido de muchas maneras la formula pero me sigue sliendo lo mismo no se si es que estas funciones no estan en mi equipos y no se como implementarlas, me seria de mucha ayuda ya que soy nuevo en el tema de exel gracias
01/09/2020 a las 12:23 pm
Quisera explicar que al momento de utilizar nombres de tablas debemos de considerar los parametros de las funciones que queremos utilizar.
En este caso la funcion buscarv solicita en su argumento de matriz, un rango de celdas en el que, el valor buscado debe estar contenido en la primer columna del rango seleccionado.
Por tanto en este caso ese podria ser el problema.
31/03/2013 a las 8:03 pm
Hola amigos (as)
He creado una UDF que permite calcular la muestra númerica a partir de parametros estadisticos el argumento es:
function muestra (arg1,arg2,arg3,arg4)
muestra=(arg1*arg1*arg2*arg3)/(arg4*arg4)
Resultado=muestra
end function
Espero sus comentarios y criticas para mejorar.
31/05/2014 a las 9:50 pm
José,
Buenas noches,
Podrías reducir el código a una sola línea, igualar resultado a muestra y no tendría sentido si puedes igualar directamente la operación.
Saludos,
Yajaira
27/05/2013 a las 12:16 am
Necesito crear una función UDF que reciba dos parámetros:
la hoja de excel y el rango de celdas. y pueda llamar la función:
=copiar("Hoja2","A1:C10")
Al reemplazar en forma UDF no me funciona...
Código anterior de Excel:
Sub Macro1()
sheets("Hoja1").Select
Range("D5:X30").Select
Selection.Copy
sheets("Hoja5").Select
Range("A2").Select
ActiveSheet.Paste
End Function
Código UDF personal:
Public Function copiar(hoja As Worksheet, celdas As Excel.Range) As Variant
sheets("Hoja1").Select
Range("D5:X30").Select
Selection.Copy
sheets("Hoja5").Select
Range("A2").Select
ActiveSheet.Paste
End Function
Espero su ayuda, gracias!!
27/05/2013 a las 8:06 pm
Estimados:
Bien, si se prueba el MsgBox y se pulsa el boton ayuda, salta la ayuda de office, esto me hace pensar que estoy haciendo algo mal y por eso no salta mi ayuda… necesito alguna respuesta:
Sub MessageBox()
MsgBox "El proceso tardará 5 minutos ¿Desea Continuar?", 3 + 256 + 16384, "Copia de Seguridad.", "C:\ejemplo.chm", 71
End Sub
25/10/2014 a las 12:31 am
Estimado Richard:
Creo que quieres hacer un MsgBox que alerte el tiempo que demorará el proceso y, además, guarde una copia de seguridad del documento. En ese caso te recomiendo utilizar el siguiente código:
Sub Mensaje()
respuesta = MsgBox("El proceso tardará 5 minutos ¿Desea Continuar?", vbYesNo, "Proceso")
If respuesta = vbYes Then
MsgBox "Se realizará una Copia de Seguridad."
nbre = Format(Now, "dd-mm-yy hh mm ss")
ruta = "C:\Users\PC\Documentos"
' No olvides que la ruta debe ser cambiada de acuerdo a donde quieres que se guarde la copia.
ActiveWorkbook.SaveCopyAs ruta & "\" & nbre & ".xlsm"
' Agrega el codigo procedimiento que ibas a realizar.
End If
If respuesta = vbNo Then
MsgBox "El proceso se ha cancelado."
End If
End Sub
En caso quieras adicionar un documento de ayuda, aconsejo el siguiente código:
Sub Mensaje()
respuesta = MsgBox("El proceso tardará 5 minutos ¿Desea Continuar?", vbYesNoCancel, "Proceso")
If respuesta = vbYes Then
MsgBox "Se iniciará el proceso y se realizará una copia de seguridad."
nbre = Format(Now, "dd-mm-yy hh mm ss")
ruta = "C:\Users\PC\Documentos"
' No olvides que la ruta debe ser cambiada de acuerdo a donde quieres que se guarde la copia.
ActiveWorkbook.SaveCopyAs ruta & "\" & nbre & ".xlsm"
' Agrega el procedimiento que ibas a realizar.
End If
If respuesta = vbNo Then
respuesta = MsgBox("El proceso se ha cancelado ¿Necesita Ayuda?", vbYesNo, "Ayuda")
If respuesta = vbYes Then
With CreateObject("Word.Application")
.Documents.Open "C:\Users\PC\Documentos\Ayuda.docx"
' No olvides que debes copiar la ubicación de tu documento.
.Visible = True
End With
End If
End If
End Sub
Espero que esta información te haya podido ayudar.
Slds
Manuel Dicción
05/08/2013 a las 5:28 pm
Pra llenar una base de datos hasta que punto es funcional usar un formulario?...
10/09/2013 a las 8:26 am
Como dejo una UDF en Excel de manera que la pueda llamar desde cualquier otro archivo ...... Gracias por la atención
28/05/2014 a las 10:54 am
Luis,
Para que una UDF esté disponible para cualquier archivo Excel, primero debes crear tu función y guardarla como "Complemento de Excel", se guardará por defecto en una ruta similar a esta de acuerdo a tu computadora:
C:\Users\usuario\AppData\Roaming\Microsoft\Complementos
Luego cierras, vas a otra hoja Excel nueva, ingresas a Archivo/Opciones/Complementos y das click en el botón inferior "Ir", te va a salir una ventana, das click en "Examinar" y aparecerá tu función guardada, la seleccionas y Aceptar.
Con esto puedes verificar que en cualquier archivo Excel, en la categoría Definidas por el usuario, aparecerá tu función creada.
Espero que te sirva.
Saludos,
Yajaira
13/09/2013 a las 7:24 pm
Las funciones definidas por el usuario nos permiten generalizar formulas que usamos a diario y que no se encuentran definidas en excel como los ejemplos que están en este blog. Dejo un código por el cual se puede calcular el área de cualquier polígono regular conociendo su semiperimetro y su apotema:
Function area_poligonor(semiperimetro, apotema)
resultado = semiperimetro * apotema
area_poligonor = resultado
End Function
21/09/2013 a las 11:44 pm
Profesor,
¿Como puedo verificar que una determinada UDF es más eficiente que la combinación de funciones predeterminadas?
28/05/2014 a las 11:31 am
Christian,
Una UDF y la combinación de funciones deben realizar la misma acción que necesitamos hacer en Excel. Sin embargo, una UDF permite ahorrar tiempo, generar un código más sencillo y con una sola acción simplificar eso uso de varias funciones, más aún si éstas son repetitivas.
Si verificas que la acción se realiza más rápido, con menos código y hace exactamente lo que necesitas, el uso de UDF es el adecuado.
Saludos,
Yajaira
30/10/2013 a las 7:58 pm
Como puedo actualizar el valor de una udf, ya que al copiar y pegar mi función creada a otras celdas, estas muestran el ultimo valor obtenido (el valor de la celda donde se copio)
he intentado con F9, comandos como "application.volatile" o "Worksheets("nombre hoja").Calculatey" y no he podido resolverlo.
este es mi función:
Function hosp_capi(numpro As Double)
Application.Volatile False
Dim monto As Double
Dim p As Double
monto = 0
p = 0
For w = 0 To 5
Select Case w
Case 0
p = 0.2
Case 1
p = 0.2
Case 2
p = 0.2
Case 3
p = 0.2
Case 4
p = 0.1
Case 5
p = 0.1
End Select
If ActiveCell.Offset(-2, -w) = "" Then
hosp_capi = monto
Exit Function
Else:
If ActiveCell.Offset(-2, -w) = 0 Then
monto = monto + 0
Else:
monto = monto + ((ActiveCell.Offset(-2, -w) * p) * ActiveCell.Offset(-1, -w))
End If
End If
Next
hosp_capi = monto
End Function
Espero puedan ayudarme
Saludos
30/10/2013 a las 8:10 pm
olvide comentar que solo obtengo el valor que quiero pegando la formula celda por celda o bien yendo a cada celda donde he pegado la formula y dando F2
29/08/2014 a las 3:14 pm
Tengo el mismo problema que tienes o tenías... me puedes decir como lo solucionaste???
16/01/2014 a las 11:20 am
Lograste solucionarlo?
06/11/2013 a las 7:23 pm
Hola como pudo usar varias UDF s ? es decir varias funciones como se concatenar
10/11/2013 a las 11:57 pm
He creado una UDF que me ayuda a calcular el valor futuro conociendo el capital inicial y la tasa efectiva, pero me gustaría crear una UDF que calcule desde la tasa nominal a una efectiva y que calcule también el tiempo.
Function Vfuturo(C, ief, t)
resultado = C * (1 + ief) ^ t
Vfuturo = resultado
End Function
31/05/2014 a las 10:06 pm
Para calcular la tasa efectiva desde una tasa nominal anual, se debe conocer el periodo de capitalización, por ejemplo si tenemos una tasa de 12% nominal anual, y la capitalización es mensual, nuestra tasa efectiva será: 12%/12 =1% efectiva mensual, se debe conocer el número de periodos en un año, en este caso hay 12 periodos (meses) en un año, aquí el código en VBA:
Function TasaEfectiva(TNA, num_per_año)
TasaEfectiva = TNA / num_per_año
End Function
24/12/2013 a las 11:08 am
Hola, qué tal, quisiera saber si alguien me puede ayudar con lo siguiente: es que estoy tratando de hacer un Excel que me permita calcular las diferentes horas para liquidar una nomina, es decir, que al ingresar la hora de inicio del trabajador y la hora de salida, pueda obtener las horas ordinarias, las extras diurnas, extras nocturnas, dominicales... yo lo estuve tratando de hacer con funciones e incluyendo muchas columnas pero me salían unas funciones demasiado complejas que después no se entendían, y cuando creía que estaba listo, faltaba alguna cosa; mejor dicho se me volvió paquidérmico el proyecto. No sé si alguien lo ha hecho antes, pero sería un reto interesante. muchas gracias. por su colaboración. espero su pronta respuesta.
30/01/2014 a las 9:52 pm
La aplicación de esta herramienta me a ayudado a crear hojas de cálculo en excel para cálculos de funciones geométricas y poder hacer interactura a los alumnos con la matemática y el excel
02/02/2014 a las 7:50 pm
Hay UDFs muy interesantes.
En las funciones propias de excel, al momento de usarlas, aparece un comentario de lo que hace la función. Asimismo, cuando se usa el boton de Insertar Función, en la pestaña de Fórmulas, aparecen comentarios para cada una de las variables de la función seleccionada.
Mi pregunta es como se pueden poner comentarios en las UDF.
Gracias.
28/05/2014 a las 10:35 am
Sergio,
Para poder colocar comentarios en las UDF, basta con colocar el signo ' delante de tu comentario, éste cambiará a color verde y dejará de formar parte de la programación del mismo.
Si deseas que un texto numeroso se convierta en comentario, activas la barra de Edición, seleccionas tu texto y haces click en el ícono "Bloque con comentarios"; para deshacer, haces click en el ícono "Bloque sin comentarios"
Espero que te sirva.
Saludos,
Yajaira
31/05/2014 a las 7:23 pm
Hola :),para poder insertar una descripción a las udf, debes abrir el cuadro de las macros y luego escribir el nombre de la función, notarás que el botón opciones se activa, dale clic y en la descripción escribes lo que la función hace .
Saludos
02/02/2014 a las 9:19 pm
Quisera saber como puedo crear una macro porcentual que se de color verde cuando es positivo y rojo cuando es negativo.
31/05/2014 a las 7:06 pm
hola 🙂 con esta función me salio, espero que te sirva
Function porc(a, b)
x = ((b - a) / a) * 100
If x > 0 Then
porc = x
ActiveCell.Select
With Selection.Font
.ThemeColor = xlThemeColorAccent3
.TintAndShade = -0.24997711111789
End With
End If
If x < 0 Then
porc = x
ActiveCell.Select
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
End If
End Function
Saludos
31/05/2014 a las 7:09 pm
Por cierto , el color lo saque utilizando el grabador de macro 🙂
31/05/2014 a las 8:18 pm
Se podría prender el grabador y efectuar el cambio de color de texto mediante el formato condicional, luego revisas el codigo VBA, se tendrá algo parecido a esto:
Sub Macro2()
' Macro2 Macro
Cells.Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
Formula1:="=11"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -11489280
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="=11"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16383844
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Range("A2").Select
End Sub
02/02/2014 a las 9:22 pm
Quisiera saber como puedo crear una macro porcentual que se de color verde cuando es positivo y rojo cuando es negativo.