Blog

Peter Rühm

Peter Rühm

Little Helpers for EXCEL (1): WENNFEHLER-Automatik

manchmal, nein eher öfter, wünscht man sich praktische Funktionalitäten in Excel.

Mir ging es letzte Woche so: ich hatte ein recht schönes Management-Cockpit für einen Kunden entwickelt. Nach der Präsentation hieß es dann: sehr schön! „Ach übrigens“ – man beachte meine beliebten Ach-Übrigens-Faktoren! – „Ach übrigens, unsere Abteilungsstruktur hat sich ein wenig geändert… „

Kein Problem, in meinen Modellen lassen sich vorhersehbare – ich kenne mittlerweile hunderte von diesen Ach-Übrigens-Faktoren! – leicht einbauen. Ich achte immer darauf, dass sie schnell, ohne Modelländerung oder Programmierung übernommen werden können. Im PRT-Modell (s. Glossar) kein Problem.

Aber: durch die Änderung ergaben einige PIVOTDATENZUORDNEN-Funktionen bei bestimmen Kombinationen von Parametern: #WERT! Kein Problem – mit der Funktion WENNFEHLER kann man dies abfangen. Aber: blöd, wenn man die Funktion 60 mal einbauen muss! (Hier stellt sich immer wieder die Frage, warum Microsoft in seine Funktionen nicht ein vernünftiges zentrales Fehlermanagement einbaut, aber diese Frage kann man wohl nicht pauschal beantworten…)

Also was tun? Wie üblich bringt Visual Basic die Möglichkeit mit sich, EXCEL zu erweitern, wo der Alltag Dinge verlangt, die im stillen Kämmerlein bei Microsoft so nicht vorhergesehen wurden: mein kleines Makro setzt um bestehende Formeln die Funktion WENNFEHLER(). Di ist übrigens eine der wenigen echt guten neuen Funktionen seit Excel 2007.

So entstand also mein Tool: Wennfehler_drumrum! Recht schnell programmiert in 10 Minuten, sparte es mir beim ersten Einsatz bereits eine halbe Stunde stupide Tipperei.

Kopieren Sie das Makro Wennfehler_drumrum am besten in Ihre Persönliche Makroarbeitsmappe, markieren Sie die Zellen mit den Formeln, die Sie mit einer Fehlerbehandlung versehen wollen, und starten Sie das Makro – vielleicht gleich mit Alt + F8!

Hier kommt der Code:


 

Sub WENNFEHLER_drumrum()

‚ (c) Peter Rühm, Pollmann & Rühm Training

‚ Setzt die Funktion WENNFEHLER um Formeln in den markierten Zellen
‚ aber nur, wenn noch kein Wennfehler drum ist

Dim Zelle As Range

For Each Zelle In Selection
    If Zelle.HasFormula Then
        If UCase(Left(Zelle.FormulaLocal, 12)) <> UCase(„=wennfehler(„) Then
            Zelle.FormulaLocal = „=wennfehler(“ & Mid(Zelle.FormulaLocal, 2) & „;0)“
        End If
    End If
Next Zelle

End Sub


Damit wünsche ich Ihnen viel Erfolg!

Wenn Sie an mehr solcher pragmatischen Beispiele interessiert sind, so gibt es dazu natürlich ein tolles Seminar…..

Ihr Peter Rühm

Wenn Ihnen dieser Beitrag gefallen hat, dann teilen  Sie ihn gerne. Falls Sie Anmerkungen haben, schreiben Sie bitte einen Kommentar, oder senden Sie mir eine Mail an info@prt.de.

Beitrag teilen:

Share on facebook
Share on twitter
Share on linkedin
Share on whatsapp
Share on xing
Share on email
Share on print

Up to date bleiben

Melden Sie sich für unseren Newsletter an!