Herbers Excel-Forum - das Archiv

Fehler 400?

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Fehler 400?
von: Peter
Geschrieben am: 24.09.2003 10:26:44
Ich hab versucht ein Makro zu schreiben, das beim Klick auf einen Button aktuelle Werte aus einer anderen Datei ausliest und kopiert. Beim Ausführen erscheint eine Fehlermeldung in der nur "400" steht, sonst nix. Was bedeutet das?
Noch eine Frage: Muss ich in VBA Variablen irgendwie deklarieren (z.B. int i = 1;) oder kann ich die einfach so verwenden?
Peter

Bild

Betrifft: AW: Fehler 400?
von: golem
Geschrieben am: 24.09.2003 10:33:39
Hi, wie ich sehe kannst Du C2+ programmieren, diesen FEhler hat ich auch schon-bin mir nicht sicher ich glaub es kann an dem Dateiauslesen liegen (PFad od. Befehl falsch, der wie in C auf eine zufällige Adresse im Speicher zeigt)...
Variable müssen nur deklariert werden wenn option expplicit anfangs steht sonst sind sie variant!
Bild

Betrifft: AW: Fehler 400?
von: K.Rola
Geschrieben am: 24.09.2003 10:36:13
Hallo,

es ist meist ein Vorteil, wenn du den Code hier mal sehen läßt.
Variable müssen nicht, sollten aber immer deklariert werden.

Gruß K.Rola
Bild

Betrifft: AW: Fehler 400?
von: Galenzo
Geschrieben am: 24.09.2003 10:36:25
Zur 1.Frage: Beliebter Fehler, resultiert daraus, daß der Button immernoch den Focus hat.
Lösungsvorschlag: in den Entwurfsmodus wechseln, Rechtsklick auf den CommandButton, aus Kontextmenü "Eigenschaften" wählen , Wert der Eigenschaft TakeFocusOnClick auf False.

Zur 2. Frage: Du MUSST die variablen nicht vorher deklarieren, du SOLLTEST es aber!
Sonst wird für jede Variable ein Variant-Wert reserviert, was sehr speicherintensiv ist.
Deklariere daher am besten zu Beginn jeder Prozedur deine verwendeten Variablen. z.B.:
Dim i As Integer
(Im Unterschied beispielsweise zu C++ wird i gleich der Standardwert 0 zugewiesen)
 Bild
Excel-Beispiele zum Thema " Fehler 400?"
Fehlermeldung #NV ausblenden Fehlermeldung abfangen
Fehler in Workbook_Open-Prozedur abfangen Fehlermeldung #DIV/0! verhindern
Fehler entfernen Fehlermeldung abfangen und in sequentielle Datei schreiben
Fortlaufende Suche unter Vermeidung eines Laufzeitfehlers VBA-Fehlermeldungen auflisten
Alle Zellen mit der #BEZUG!-Fehlermeldung auswählen Zahlenstring mit Formel auslesen und Fehlermeldung verhindern