Istfehlerabfrage

Bild

Betrifft: Istfehlerabfrage von: Kerstin
Geschrieben am: 18.03.2005 20:46:42

Guten Abend,

wenn ich in einem Excelsheet eine Abfrage tätige und eine Fehlermeldung umgehen will nehme ich folgenden Code

=WENN(ISTFEHLER(Deine Formel);"";Deine Formel)

wenn ich nun diese Formel in die untere einsetzt - kommt eine Fehlermeldung
ActiveCell.FormulaR1C1 = "=SUM(RC[-4]-RC[-5])"

Ich denkemal, dass sich VBA und Excel da nicht ganz grün sind.
Wie erreiche ich bloß, dass wenn in einer Zelle kein Wert steht mir kein Fehler angezeigt wird. Die Zelle soll dann einfach leer bleiben.

Schönen Abend noch

Kerstin

Bild


Betrifft: AW: Istfehlerabfrage von: Luc :-?
Geschrieben am: 18.03.2005 21:06:08

Hallo Kerstin,
zu dem Problem ist hier schon xmal was geschrieben worden (ARCHIV! - RECHERCHE!). Der Recorder verwendet stets R1C1(zu deutsch Z1S1)-Orientierung. Dein Excel ist aber mit Sicherheit auf A1-Orientierung eingestellt! Außerdem, wenn du einen deutschen Standardfunktionsnamen eintragen willst, muss das in .FormulaLocal geschehen! .FormulaR1C1 und .Formula verstehen nur Englisch! Du missachtest so die Hierarchie in Excel. Und außerdem finde ich die verkürzende Bereichsschreibung in [] grauenhaft, da schleicht sich schnell ein Fehler ein! Die Editorhilfe empfiehlt hier was Anderes. Außerdem musst du " innerhalb von " verdoppeln. Aus "" wird so """".
Gruß Luc :-?


Bild


Betrifft: AW: Istfehlerabfrage von: Kerstin
Geschrieben am: 18.03.2005 21:14:43

hallo Luc,

ich war in der Recherche und habe dies mit dem Istfehler gefunden. Das andere mit Formula hat der Recorder verzapft. ich möchte z. B. Zelle D2 minus D1 rechnen, ist aber eine Zelle leer kommt die Fehlermeldung WERT und das möchte ich gern umgehen.
Bin am weiter suchen

Gruß Kerstin


Bild


Betrifft: AW: Istfehlerabfrage von: Thorsten
Geschrieben am: 18.03.2005 21:43:59

Hallo Kerstin,

das könnte man z. B. so lösen:

=WENN(ODER(D1="";D2="");"";D2-D1)

Gruß Thorsten


Bild


Betrifft: AW: Istfehlerabfrage von: Kerstin
Geschrieben am: 19.03.2005 07:28:07

Hei Luc und Torsten,

beides funktioniert im Arbeitsblatt - ich möchte die Abfrage aber über VBA bewerkstelligen lassen. Wenn ich jeweils eure Formeln in die mit dem Recorder aufgelistete Ausführung einsetzte kommt nur Quatsch raus.
Also ganz einfach E2 minus D2 über VBA Anweisung und das soll der Befehl bitteschön bis
E53 minus D53 vollziehen.

Vielleicht noch ein klitzekleiner Tip??

Gruß und Danke Kerstin


Bild


Betrifft: AW: Istfehlerabfrage von: Nepumuk
Geschrieben am: 19.03.2005 08:09:52

Morgen Kerstin,

wenn's nicht mehr ist, bitteschön:


Public Sub Kerstin()
    Dim lngRow As Long
    For lngRow = 2 To 53
        If IsNumeric(Cells(lngRow, 4).Text) And IsNumeric(Cells(lngRow, 5).Text) Then _
            Cells(lngRow, 9).Value = Cells(lngRow, 4).Value - Cells(lngRow, 5).Value
    Next
End Sub


Gruß
Nepumuk


Bild


Betrifft: AW: Istfehlerabfrage von: Kerstin
Geschrieben am: 19.03.2005 14:26:42

Hallo Nepumuk,

Danke für Deine Hilfe, genau das hatte ich gesucht. Für manche ist das ein Kinderspiel und andere brauchen halt solche Foren um sich weiterbilden zu können.

Schönen Tag noch Kerstin


Bild


Betrifft: Ich nahm natürlich an, du möchtest mit VBA... von: Luc :-?
Geschrieben am: 19.03.2005 19:57:04

...eine Arbeitsblattformel in die Zellen eintragen, Kerstin. Genau darauf bezog sich mein Hinweis. Nepumuks Variante ist eine reine VBA-Lösung ohne irgendwelche Formeln in deinem Arbeitsblatt. Sowas erzeugt kein Makrorecorder!
Gruß Luc :-?


Bild


Betrifft: AW: Ich nahm natürlich an, du möchtest mit VBA... von: Kerstin
Geschrieben am: 19.03.2005 20:10:52

.. liegt an mir - habe mich wahrscheinlich blöd ausgedrückt. Woher sollt ihr auch wissen was die Fragesteller manchmal schon als nächstes im Kopf haben. Unsereins muß sich langsam vorarbeiten. Ich versuche das meiste in VBA zu realisieren - arbeite mich daher über den Makrorecorder und über Funktionen vorwärts.

Gruß Kerstin


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zellbezug bei automatisch wechselndem Datum"