Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1372to1376
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

Textbox reagiert nicht

Textbox reagiert nicht
24.07.2014 15:35:52
Kurt
Hallo allerseits,
ich habe eine Textbox1 da ist der Name der aktuellen Datei
hinterlegt.
Ändere ich jetzt den Namen, dann reagiert die Textbox aber gibt
mir immer zurück, "Name vorhanden etc."
Was kann dies sein?
Habe alle Möglichkeiten getestet mit EXIT und auch AfterUpdate.
Private Sub TextBox1_Change()
'

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'

Private Sub TextBox1_AfterUpdate()
DIM OrdNam As Variant, Ord As Byte, Pfad As String
Dim tb As String
Dim strPath$
DateiNam = ActiveWorkbook.Name
If Dir(tb)  "" Then
MsgBox "Dateiname nicht vorhanden, jetzt erstellen "
' Workbooks.Add
' Application.DisplayAlerts = False
' ActiveWorkbook.SaveAs Filename:=tb, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False
' Application.DisplayAlerts = True
Else
MsgBox ("TEXTBOX!   Achtung die Datei mit dem NAMEN" & Chr(13) & Chr(13) _
& tb & Chr(13) & Chr(13) & _
"existiert schon !" _
& Chr(13) & Chr(13) & "Bitte ( NAMEN ) oder MMYYYY prüfen ! ")
End If
End Sub

würde mich freuen wenn jemand einen Tip hat,
danke im Voraus,
höflichst kurt

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbox reagiert nicht
24.07.2014 15:49:27
Oberschlumpf
Hi Kurt
du...
Dim tb As String
...deklarierst die Variable tb als String. tb erhält KEINEN Inhalt
dann prüfst du...
If Dir(tb) "" Then
...ob Dir(tb) NICHT leer ist
IST aber leer...(es könnte auch stehen Dir("")...ergibt auch = "")
Else
MsgBox ("TEXTBOX! Achtung die Datei mit dem NAMEN" & Chr(13) & Chr(13) _usw
...deswegen macht der Code das, was nach ELSE kommt
Welchen Wert/Inhalt soll tb denn erhalten? Den Inhalt aus der Textbox?
Dann vor der If-Zeile zuerst
tb = Textbox1.Text
noch einfacher:
vergiss tb, schreib doch
If Dir(TextBox1.Text) "" Then
allerdings macht diese If-Prüfung so auch keinen Sinn.
Denn wenn "", DANN IST Dateiname doch vorhanden.
besser ist vielleicht
If Dir(TextBox1.Text) = "" Then
Hilfts, oder hab ich was falsch verstanden?
Ciao
Thorsten

Anzeige
AW: Textbox reagiert nicht
24.07.2014 15:54:56
fcs
Hallo Kurt,
diese Prüfung ist nicht korrekt:
    If Dir(tb)  "" Then

Dir(tb) gibt einen Leerstring zurück, wenn der Dateinamen in der tb noch nicht existiert.
Ist der Dateiname vorhanden, dann wird der Dateiname als Wert zurückgegeben.
Du musst die Zeile also ändern in
    If Dir(tb) = "" Then

damit die Logik in deinem Ablauf stimmt.
Verwende hier nicht das Textbox_Change-Ereignis. Dieses reagiert auf jede Zeicheneingabe. Da der Dateiname erst mit dem letzten Zeichen komplett ist bekommst nach jedem Zeichen die unerwünschte Meldung.
Funktionieren sollte es mit dem EXIT-Ereignis, dazu muss aber auf dem Userform mindestens einweiteres aktives Steuerelement vorhanden sein.
Gruß
Franz

Anzeige
Hallo Torsten und Franz
24.07.2014 16:32:31
Kurt
Habe so geändert:
If Dir(TextBox1.Text) = "" Then
MsgBox "Dateiname nicht vorhanden, jetzt erstellen "
'Workbooks.Add
' Application.DisplayAlerts = False
' ActiveWorkbook.SaveAs Filename:=tb, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False
' Application.DisplayAlerts = True
Else
MsgBox ("TEXTBOX! Achtung die Datei mit dem NAMEN: " & Chr(13) & Chr(13) _
& tb & Chr(13) & Chr(13) & _
"existiert schon !" _
& Chr(13) & Chr(13) & " Bitte ( NAMEN ) oder MMYYYY prüfen ! ")
End If
es kommt jetzt direkt dateiname nicht vorhanden,
obwohl ich nichts geändert habe also der Dateiname mit der Textbox
stimmt überein.
gruß
kurt

Anzeige
Habe natürlich...
24.07.2014 16:36:01
Kurt
Hallo zusammen,
habe natürlich ext eingesetzt und
tb = Textbox1.Text
gruß
kurt

AW: Habe natürlich...
24.07.2014 16:58:33
UweD
Hallo
Ich denke du gibst NICHT den kompletten Pfad in die Textbox ein ?
Wenn nur der Namen eingetragen wird, dann den Pfad ggf vorher so festlegen.
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Pfad As String
Dim TB
Pfad = "C:\Temp\"
TB = TextBox1.Text
If Dir(Pfad & TB) = "" Then
MsgBox "Dateiname nicht vorhanden, jetzt erstellen "
Workbooks.Add
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=Pfad & TB, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False
Application.DisplayAlerts = True
Else
MsgBox ("TEXTBOX! Achtung die Datei mit dem NAMEN: " & Chr(13) & Chr(13) _
& TB & Chr(13) & Chr(13) & _
"existiert schon in " & Pfad _
& Chr(13) & Chr(13) & " Bitte ( NAMEN ) oder MMYYYY prüfen ! ")
End If
End Sub
Gruß UweD

Anzeige
Hallo zusammen -)
24.07.2014 17:05:45
Kurt
Hallo zusammen,
erst mal DANKE für die Unterstützung.
Habe die Lösung gefunden.
Habe xls noch angefügt, siehe unten meine Testzeilen
und siehe da alles ok !!!
DateiNam = ActiveWorkbook.Name 'ActiveSheet.Name
'MsgBox DateiNam
tb = TextBox1.Text
'MsgBox tb
If DateiNam = tb & ".xls" Then
MsgBox "sind gleich"
Else
MsgBox "falsch"
End If
Exit Sub
gruß kurt

Leider noch einkleines Problem...
24.07.2014 17:16:25
Kurt
Hallo,
ich habe gerade eine Datei erstellt also mit geänderten Namen,
nun soll er mir diese Datei im gesamten Verzeichnis
prüfen ?
Werde gleich mal von Uwe testen.
gruß kurt

Anzeige
habe gerade was im Forum endeckt -)
26.07.2014 15:26:27
walter
Hallo zusammen,
danke nochmals.
Im Forum habe ich was gefunden.
gruß kurt

AW: habe gerade was im Forum endeckt -)
26.07.2014 17:07:22
Oberschlumpf
Hey
bist du Walter oder bist du Kurt?
Wenn Walter + Kurt das Gleiche is, warum verwendest du unterschiedliche Aliase? :-/
Ciao
ICH

AW: habe gerade was im Forum endeckt -)
26.07.2014 22:13:05
Kurt
Sorry,
hatte das von Walter entdeckt.
Gruß kurt

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige