Kann man in Excel eigene Funktionen so einbinden, dass sie in allen Mappen zur Verfügung stehen? Wenn man die Funktion in VBA verfasst und als AddIn speichert, steht sie allen Excelanwendungen auf dem Rechner zur Verfügung. Um sie auf anderen Rechnern verwenden zu können, muss das AddIn nur auf dem anderen Rechner installiert werden.

Im Folgenden einmal die Vorgehensweise zum Erstellen eines AddIns.

    • Eine leere Arbeitsmappe öffnen
    • Mit Alt + F11 in die VGA-Umgebung wechseln
    • Im Codefenster die Funktion eingeben
    • VBA – Umgebung verlassen
    • Den „Speichern unter…“ Dialog aufrufen
    • Unter Dateiname einen aussagekräftigen Namen eingeben
    • Unter Dateityp „Microsoft Excel-Add-In“ auswählen
    • Mit „Speichern“ abschließen.
    • Die Mappe schließen[/lst]

    Um die Funktion nun benutzen zu können, geht man wie folgt vor:

      • Eine Excelmappe öffnen
      • Im Menü „Extras“ AddIns… auswählen
      • Dort in der Liste die Funktion aktivieren
      • Mit OK bestätigen

    Ab jetzt kann die neue Funktion, wie jede andere Excelfunktion in jeder Mappe verwendet werden.

    Zum Abschluss noch zwei Beispiele für Funktionen:

    1. Summewenn mit zwei Bedingungen:

    Option Explicit

    Function Summewenn2(Bereich1 As Range, Bereich2 As Range, Bereich3 As Range, _
    Suchkriterium1 As Long, Suchkriterium2 As Long) As Variant
    Dim a As Variant, rng As Range
    Application.Volatile
    For Each rng In Bereich1
    If rng = Suchkriterium1 And Cells(rng.Row, Bereich2.Column) = Suchkriterium2 Then
    a = a + Cells(rng.Row, Bereich3.Column).Value
    End If
    Next
    Summewenn2 = a
    End Function

    2. Zählenwenn mit 2 Bedingungen

    Option Explicit

    Function Zählenwenn2(Bereich1 As Range, Bereich2 As Range, _
    Suchkriterium1 As Long, Suchkriterium2 As Long) As Long
    Dim a As Long, rng As Range
    Application.Volatile
    For Each rng In Bereich1
    If rng = Suchkriterium1 And Cells(rng.Row, Bereich2.Column) = Suchkriterium2 Then
    a = a + 1
    End If
    Next
    Zählenwenn2 = a
    End Function

    Hier müssen für eine Berechnung zwei Bereiche und zwei Suchkriterien angegeben werden.
    Es werden die Bereiche gezählt, in denen beide Suchkriterien übereinstimmen.