Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1396to1400
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Textfeld füllen - Fehlermeldung

Textfeld füllen - Fehlermeldung
10.12.2014 18:34:26
Andreas
Hallo Forum,
noch ein kleines Problemchen:
Mit folgendem Code fülle ich bei Aufruf des UserForm meine TextBoxen:
In den Zellen AX8 bis AX22 werden per Funktion ( =INDEX(DAT;ZEILE()-7) ) alle *.xlsb-Dateien im gleichen Ordner aufgelistet.
Wenn aber im Ordner weniger Dateien sind kommt in den Zellen dann #BEZUG!. Das stört nicht, weil die Spalte AX ausgeblendet ist.
Mein Problem ist aber, wenn ich mit einer Textbox auf eine Zelle mit #BEZUG! verweise, kommt beim öffnen des UserForm eine Fehlermeldung.
Wie kann ich das umgehen? Habe es so probiert, ist wohl falsch:

If Sheets("Übersicht").Range("AX19") = "#BEZUG!" Then
End If
Else
TextBox15.Text = Sheets("Übersicht").Range("AX19")
Hier der bisherige Code:

Private Sub UserForm_Initialize()
TextBox4.Text = Sheets("Übersicht").Range("AX8")
TextBox5.Text = Sheets("Übersicht").Range("AX9")
TextBox6.Text = Sheets("Übersicht").Range("AX10")
TextBox7 = Sheets("Übersicht").Range("AX11")
TextBox8 = Sheets("Übersicht").Range("AX12")
TextBox9 = Sheets("Übersicht").Range("AX13")
TextBox10 = Sheets("Übersicht").Range("AX14")
TextBox11 = Sheets("Übersicht").Range("AX15")
TextBox12 = Sheets("Übersicht").Range("AX16")
TextBox13.Text = Sheets("Übersicht").Range("AX17")
TextBox14 = Sheets("Übersicht").Range("AX18")
'TextBox15.Text = Sheets("Übersicht").Range("AX19")
'TextBox16 = Sheets("Übersicht").Range("AX20")
'TextBox17 = Sheets("Übersicht").Range("AX21")
'TextBox18 = Sheets("Übersicht").Range("AX22")
End Sub

mfg, Andreas

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textfeld füllen - Fehlermeldung
10.12.2014 18:44:08
Uduuh
Hallo,
If Not IsError(Sheets("Übersicht").Range("AX19")) Then
TextBox15.Text = Sheets("Übersicht").Range("AX19")
End If
Gruß aus’m Pott
Udo

AW: Textfeld füllen - Fehlermeldung
10.12.2014 18:54:29
Matze
Hallo Zusammen,
ungetest, aber mal ein Versuch Wert:
=Wennfehler(INDEX(DAT;ZEILE()-7);"")
Gruß Matze

AW: Textfeld füllen - Fehlermeldung
10.12.2014 18:55:13
Daniel
Hi
eine andere möglichkeit:
If Not Sheets("Übersicht").Range("AX19").Text = "#BEZUG!" Then TextBox15.Text = Sheets("Übersicht").Range("AX19").Text
VBA tut sich mit Fehlerwerten schwer, weil Fehler ein eigener Datentyp sind.
Wenn du aber den Zellwert mit der Eigenschaft .TEXT ausliest, wird der Zellinhalt immer als einfacher Textstring gewertet und kann somit auch im Fall eines Fehlers einfacher verarbeitet werden.
Gruß Daniel

Anzeige
Vielen Dank! Funktionieren alle 3. owT.
10.12.2014 19:11:11
Andreas
.

AW: Vielen Dank! Funktionieren alle 3. owT.
10.12.2014 19:18:25
Matze
Hi Andreas,
danke für die Rückmeldung.
Die Codezeilen kannst du dann einsparen da ja kein Fehler mehr angezeigt wird :-)
Gruß Matze

AW: Vielen Dank! Funktionieren alle 3. owT.
10.12.2014 19:32:16
Daniel
Hi
noch ne einfache Variante wäre, wenn du den Bezugfehler nicht in der Textbox haben willst:
Textbox15.Text = Replace(Sheets("Übersicht").Range("AX19").Text, "#BEZUG!", "")

passt als Einzeiler dann gut in deinen restlichen Code

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige