Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
992to996
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
992to996
992to996
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Aus Userform Register erstellen

Aus Userform Register erstellen
09.07.2008 09:08:39
Martin
Hallo zusammen.
Ich habe eine Userform, die mir als Eingabemaske dient.
Dort habe ich eine TexBox1, in die ein Name eingetragen wird. Wird mit Enter die Eingabe beendet,
so soll mir ein neues Registerblatt erstellt werden und der eingetragene Name als Registername verwendet werden.
Des weitern habe ich eine TextBox2, mit der der Name des aktuellen Registerblattes geändert werden kann.
Beide Programmteile funktionieren.
Nun das Problem. Wenn ich das neue Registerblatt erstellt habe oder den Namen geändert habe, möchte ich das die UF geschlossen und nicht versteckt wird. Genau das geht aber nur, wenn ich den Button Abbrechen (den ich ebenfalls im UF habe) drücke. Habe es mit dem unten angefügten Code versucht. Sobal der Befehl unload Me oder unload Userform2 vor End Sub steht, bekomme ich den netten Laufzeitfehler / Automatisierungsfehler (Fehler 440), Das aufgerufene Objekt wurde von den Clients getrennt.
Fehlt unload Me oder unload Userform2 vor End Sub wird das UF nicht geschlossen.
Hier mein Code für ein neues Registerblatt in der UF:

Private Sub TextBox2_AfterUpdate()
Dim eingabe As String
Dim namen_flag, i As Byte
namen_flag = 0
eingabe = LTrim(StrConv(UserForm2.TextBox1, vbProperCase))
Sheets(TEMPLATE_PERSON).Visible = xlSheetVisible                      'Zu kopierendes  _
Stammblatt das versteckt ist
If StrPtr(eingabe) = 0 Then
Exit Sub
End If
If eingabe = "" Then
MsgBox "Add new Name !", vbCritical, "No name entered"
namen_flag = 0
Exit Sub
End If
For i = 1 To Worksheets.Count
If Sheets(i).name = eingabe Then
namen_flag = 1
End If
Next
If namen_flag = 0 Then
Sheets(TEMPLATE_PERSON).Copy After:=Sheets(OVERVIEW)
ActiveSheet.name = eingabe
Cells(NAMENS_ZEILE, NAMENS_SPALTE) = eingabe
ActiveSheet.Tab.ColorIndex = M_REG_COLOR
Else
MsgBox "Add new Name !", vbCritical, "Name exists"
namen_flag = 0
End If
Sheets(TEMPLATE_PERSON).Visible = xlVeryHidden
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True
ActiveWorkbook.Protect Structure:=True, Windows:=True
Unload Me
End Sub


3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aus Userform Register erstellen
09.07.2008 19:57:03
K.Rola
Hallo,
schreib ins Exit-Ereignis der Textbox:
Commandbutton1 = True
...wobei du den Namen deines Schließen-Button verwenden musst.
Gruß K.Rola

AW: Aus Userform Register erstellen
10.07.2008 11:25:00
Martin
Hallo,
doch so einfach. Vielen Dank dafür.

AW: Aus Userform Register erstellen
15.07.2008 07:45:00
Martin
Hallo K.Rola
habe ich, doch auch das Funktioniert nicht. nach wie vor der gleiche Fehler.
Habe mich jetzt damit arrangiert.
mfg
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige