AW: Userform Textbox Value speichern
14.03.2024 10:01:44
Alwin Weisangler
Hallo Ben,
was stellst du dir unter beim "nächsten Mal" vor.
Ich gehe mal davon aus, dass du beim erneuten Öffnen des Userforms den letzten Wert in die Textbox haben willst.
Da gibt es diverse Wege:
Der simpelste ist beim Schließen des Userforms, den Inhalt der Textbox in eins der möglichen Kommentarfelder zu packen und beim Start des Userforms diesen auszulesen.
Ein weiterer etwas tiefer gehender Weg wäre es mit .CustomDocumentProperties zu erledigen.
Es gibt auch noch externe Wege, wie schreiben/lesen in eine Textdatei usw.
Beispiele für diese Möglichkeiten gibt es mi Netz jede Menge.
Anbei mal die Möglichkeit mit .CustomDocumentProperties es zu erledigen.
Option Explicit
Private Sub EinstellungenSetzen()
delProperties
CustomDocumentPropertyErzeugen "WertTextbox", TextBox1, msoPropertyTypeString
End Sub
Private Sub EinstellungenLaden()
On Error Resume Next
TextBox1 = ActiveWorkbook.CustomDocumentProperties("WertTextbox")
End Sub
Public Sub CustomDocumentPropertyErzeugen(p_strName As String, _
p_Value As Variant, docType As Office.MsoDocProperties)
On Error Resume Next
ActiveWorkbook.CustomDocumentProperties(p_strName).Value = p_Value
If Err.Number > 0 Then
ActiveWorkbook.CustomDocumentProperties.Add Name:=p_strName, LinkToContent:=False, Type:=docType, Value:=p_Value
End If
End Sub
Sub delProperties()
On Error Resume Next
ActiveWorkbook.CustomDocumentProperties("WertTextbox").Delete
End Sub
Private Sub CommandButton1_Click()
EinstellungenSetzen
Me.Hide
End Sub
Private Sub UserForm_Initialize()
EinstellungenLaden
End Sub
Private Sub UserForm_Terminate()
EinstellungenSetzen
End Sub
Gruß Uwe