Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

selbstgeschriebene Funktion debuggen

Forumthread: selbstgeschriebene Funktion debuggen

selbstgeschriebene Funktion debuggen
17.02.2005 21:10:54
Sam
Hallo!
Wer kann mir bitte sagen, mit welcher Tastenkombination
ich aus meiner Tabelle heraus in den Debug-Einzelschrittmodus
bzw. umgekehrt kommen kann.
Betr. Excel 2002/2003
Vorab vielen Dank für die schnelle Hilfe.
Es grüßt Euch
SAM
Anzeige

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:16:20
Torsten
Hallo SAM!
Du kennst doch den VBA-Editor oder? Den kannst du mit der Tastenkombination ALT+F11 aufrufen. Der Debug-Einzelschrittmodus wird durch die Funktionstaste F8 ausgeführt.
Gruß Torsten
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:24:47
Sam
Hallo Torsten,
wenn ich im VBA-Editor die F8 drücke passiert nichts.
Gruß
SAM
AW: selbstgeschriebene Funktion debuggen
Torsten
Hallo SAM,
hast du ein Makro aufgezeichnet? Und wenn ja wie sieht es denn ungefähr aus?
Gruß Torsten
Anzeige
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:38:40
Sam
Hallo Tosten,
hier meine Funktion:
Function Zeitberechnung(von As Variant, bis As Variant) If (bis - von) >= 0 Then Zeitberechnung = bis - von ElseIf ((bis - von) < 0) And (((bis - von) * -1) > 0.5) Then Zeitberechnung = ((bis + 1) - von) * -1 Else Zeitberechnung = ((bis) - von) * -1 End If End Function
Gruß
SAM
Anzeige
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:45:40
chris
um zu debuggen wie gesagt die F8 taste, aber diese beim ersetn klicken nihct in die funktion setzen sondern in das Sub dazu wo es aufgerufen wird.
Ps Rückmeldung bitte
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:49:30
Sam
Hallo!
Eine SUB brauche (will) ich nicht!
Gruß
SAM
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:55:21
Chris
Dann ganz einfach.
gehe in deinem Makro links neben
"Function Zeitberechnung(von As Variant, bis As Variant)" vor F und drücke F9 um einen haltepunkt einzufügen.Dann gehe in deine Exceltabelle und geb die formel ein und sobald du enter drückst sprint er in den VBA editor.
Hoffe es klappt bei dir auch.?!
Anzeige
AW: selbstgeschriebene Funktion debuggen
17.02.2005 22:17:38
Sam
Hallo Chris B.!
Vielen Dank für Deine Hilfe.
Bin zwischenzeitlich auch auf Deine Lösung gekommen.
Nach vielem Rumprobieren habe ich erst danach
Deinen Tipp gelesen. SORRY !!!
Also nochmals vielen vielen Dank für Deinen Bemühungen.
Es grüßt Dich
SAM
AW: selbstgeschriebene Funktion debuggen
Hübi
Hi Sam,
deine Funktion klappt doch ausgezeichnet.
Hier der Beweis
Tabelle1
 ABC
110:0012:0002:00
212:0010:0002:00
Formeln der Tabelle
C1 : =Zeitberechnung(A1;B1)
C2 : =Zeitberechnung(A2;B2)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Gruß Hübi
Anzeige
AW: selbstgeschriebene Funktion debuggen
17.02.2005 21:59:12
Sam
Hallo Hübi,
das die Funktion vom Ablauf her klappt, ist mir klar.
Ich hätte nur gerne gewusst, wie ich den
Einzelschrittmodus ausführen muss,
damit ich je nach Vorwerten den Verlauf am Bildschirm
verfolgen kann.
Gruß
SAM
AW: selbstgeschriebene Funktion debuggen
17.02.2005 22:04:03
chris
habe ich dir geschrieben in meinem letzten Posting.?=!:(
Anzeige
AW: selbstgeschriebene Funktion debuggen
Torsten
Hallo!
Ich mal wieder. Vielleicht bringt es ja etwas, wenn du das Direktfenster im VBA-Editor aktivierst und die jeweiligen Werte über den Befehl debug.print ausgeben läßt.
Was hälst du von diesem Vorschlag?
Gruß Torsten
AW: LÖSUNG ist gefunden #17.02.2005 21:55:21#
17.02.2005 22:23:51
Sam
Einen schönen Abend wünscht Euch
SAM
;
Anzeige
Anzeige

Infobox / Tutorial

Selbstgeschriebene Funktionen in Excel debuggen


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Debugging starten: Um in den Debug-Einzelschrittmodus zu gelangen, setze einen Haltepunkt. Positioniere den Cursor vor die Zeile Function Zeitberechnung(von As Variant, bis As Variant) und drücke F9.
  3. Formel eingeben: Wechsle zurück zu Excel und gib die Formel =Zeitberechnung(A1;B1) in eine Zelle ein. Drücke Enter.
  4. Debuggen: Der VBA-Editor springt nun automatisch in den Debug-Modus. Hier kannst du die Funktion Schritt für Schritt mit F8 durchlaufen.
  5. Werte prüfen: Du kannst die Werte im Direktfenster mit dem Befehl Debug.Print ausgeben lassen, um die Funktionsweise zu überprüfen.

Häufige Fehler und Lösungen

  • F8-Taste funktioniert nicht: Wenn du in den Debug-Modus gelangen möchtest, stelle sicher, dass du dich im richtigen Sub oder der Funktion befindest. Die F8-Taste muss in der Funktion gedrückt werden, die du debuggen möchtest, nicht in einem Sub.
  • Haltepunkt wird nicht gesetzt: Vergewissere dich, dass der Cursor an der richtigen Stelle in deinem VBA-Code steht.

Alternative Methoden

  • Direktfenster nutzen: Aktiviere das Direktfenster im VBA-Editor (Strg + G) und nutze Debug.Print, um Variablenwerte anzuzeigen. Dies kann hilfreich sein, um den Verlauf der Berechnungen zu verfolgen.
  • Fehlersuche mit MsgBox: Du kannst auch MsgBox verwenden, um den aktuellen Wert einer Variablen anzuzeigen. Zum Beispiel:
    MsgBox "Aktueller Wert: " & von

Praktische Beispiele

Hier ist ein Beispiel für eine Formel zur Zeitberechnung, die du in Excel verwenden kannst:

Function Zeitberechnung(von As Variant, bis As Variant)
    If (bis - von) >= 0 Then
        Zeitberechnung = bis - von
    ElseIf ((bis - von) < 0) And (((bis - von) * -1) > 0.5) Then
        Zeitberechnung = ((bis + 1) - von) * -1
    Else
        Zeitberechnung = ((bis) - von) * -1
    End If
End Function

Diese Funktion kann in einer Excel-Tabelle wie folgt verwendet werden:

  • In Zelle C1: =Zeitberechnung(A1;B1)
  • In Zelle C2: =Zeitberechnung(A2;B2)

Tipps für Profis

  • Verwende Option Explicit: Füge am Anfang deiner Module Option Explicit hinzu, um sicherzustellen, dass alle Variablen deklariert werden. Dies hilft, Fehler zu vermeiden.
  • Halte deinen Code sauber: Kommentiere deinen Code, um die Lesbarkeit zu erhöhen. Dies ist besonders wichtig, wenn du komplexe Funktionen debuggen möchtest.

FAQ: Häufige Fragen

1. Wie setze ich einen Haltepunkt in Excel VBA?
Um einen Haltepunkt zu setzen, klicke links neben die Zeile, in der du anhalten möchtest, und drücke F9. Die Zeile wird dann hervorgehoben.

2. Was mache ich, wenn das Debugging nicht funktioniert?
Überprüfe, ob du die richtige Funktion oder das richtige Sub im VBA-Editor ausgewählt hast. Zudem kann es hilfreich sein, alle Variablen und deren Werte über Debug.Print auszugeben.

3. Wo finde ich das Direktfenster im VBA-Editor?
Das Direktfenster kannst du durch Drücken von Strg + G öffnen. Hier kannst du Befehle eingeben und die Werte von Variablen anzeigen lassen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige