Eres un usuario Anonimo. Haz clic aqui para entrar | Registrate

Tutoriales formulas y funciones

Esta función definida por el usuario (UDF) sirve para extraer los acrónimos de una cadena de texto (el primer caracter de cada palabra.

Option Explicit
Public Function ACRONIMOS(ByVal sText As String, _
               Optional ByVal bJustCapitals As Boolean = False) As String
Dim inextspace As Integer
Dim sfirstcharacter As String
Dim sword As String
    sText = VBA.Trim(sText)
    Do While VBA.Len(sText) > 0
       inextspace = VBA.InStr(1, sText, " ")
       If inextspace > 0 Then
          sword = VBA.Trim(VBA.Left(sText, inextspace - 1))
          sText = VBA.Right(sText, VBA.Len(sText) - inextspace)
       Else
          sword = sText
          sText = ""
       End If
       sfirstcharacter = VBA.Left(sword, 1)
       If bJustCapitals = True Then
          If (VBA.Asc(sfirstcharacter) >= 65 And VBA.Asc(sfirstcharacter) <= 90) Then
             ACRONIMOS = ACRONIMOS & VBA.UCase(sfirstcharacter)
          End If
       End If
       If bJustCapitals = False Then ACRONIMOS = ACRONIMOS & VBA.UCase(sfirstcharacter)
    Loop
End Function

La ficha Fórmulas nos permite seleccionar la función más adecuada además de otras características. La cinta de opciones está dotada de unos cuantos botones que facilitan la escritura de las fórmulas. Para echarle un vistazo, haz clic en la ficha Fórmulas. Lo más importante de la ficha Fórmulas es la sección Biblioteca de funciones de la izquierda que incorpora el indispensable botón Insertar función, así como muchos más botones que organizan el amplio catálogo de funciones en categorías relacionadas para facilitar el uso.

Muchos usuarios que disponen de versiones anteriores de Excel 2007 se preguntan cómo poder hacer sumas por un determinado color. En Excel 12 esto sí es posible, pero para el resto de usuarios existe una pequeña función definida por el usuario:

Function SUMARCOLOR(RangoColor As Range, CeldaColor As Range) As Long
     Dim rngCelda As Range
     'revisamos cada celda del rango
     For Each rngCelda In RangoColor
          'si los colores coinciden, sumar el valor de la celda al resultado previo
          If rngCelda.Interior.ColorIndex = CeldaColor.Interior.ColorIndex Then
               SUMARCOLOR = SUMARCOLOR + rngCelda.Value
          End If
     Next
End Function

Disponemos de una tabla de personal en la que figuran los empleados de una empresa junto con su número de trabajador.

Deseamos buscar el salario anual que cobran. Se puede introducir el nombre del empleado o su número de referencia para encontrar el resultado.

La función ESTEXTO se usa para identificar si el tipo de entrada es un texto o un número. La función SI se encarga de realizar una operación u otra en función de si la entrada se trata de un texto o no.

La función COINCIDIR ( ) nos permite encontrar la posición de un elemento en un rango.

Vamos a construir una fórmula que devuelva el primer valor “no blanco” de una celda en una fila. Para ello, hemos rellenado las columnas B:G con valores en algunas celdas; otras las hemos dejado en blanco.

=INDICE(B4:G4;1;COINCIDIR(1;INDICE(1-ESBLANCO(B4:G4);1;0);0))

Aunque esta fórmula funciona con una matriz de celdas, al devolver solamente un valor único, no es necesario introducirla usando Ctrl + Mayús + Intro.

Puedes pulsar en la fotografía para verla a tamaño real.

Supongamos que el departamento de ventas de nuestra empresa nos envía un archivo en el que se listan el nombre del artículo, la cantidad vendida y el precio unitario. Deseamos averiguar cuál ha sido la venta total.