unter https://www.herber.de/xldialoge/uf_cbo24.html habe ich eine Anleitung gefunden, wie man Daten in ein UserForm einlesen kann und nach Änderung wieder zurückschreiben kann.
https://www.herber.de/xldialoge/uf_cbo24.html
Eigendlich sollte ja die Textbox_Strasse bei Auswahl ComboBox_Mitglied gefüllt werden. Es passiert aber gar nichts.
Was habe ich falsch gemacht und wie muss es aussehen, wenn die anderen Textboxen auch gefüllt werden sollen?
Habe zur Sicherheit eine Datei angehängt.
https://www.herber.de/bbs/user/120489.xlsm
Den Code habe ich so umgesetzt:
Option Explicit
Private Sub UserForm_Initialize()
Dim ws As Worksheet
'Blatteintrag in Combobox_Aenderungsjahr
For Each ws In ThisWorkbook.Worksheets
If ws.Name Like "Mitglieder*" Then
If CLng(Right(ws.Name, 4)) = Year(Date) _
Or CLng(Right(ws.Name, 4)) = Year(Date) - 1 Or CLng(Right(ws.Name, 4)) = Year(Date) + 1 _
Then
Me.ComboBox_Aenderungsjahr.AddItem ws.Name
End If
End If
Next ws
End Sub
Private Sub ComboBox_Aenderungsjahr_Change()
'Application.DisplayAlerts = False
'Application.ScreenUpdating = False
'gewähltes Blatt aktivieren
Worksheets(CStr(Me.ComboBox_Aenderungsjahr)).Visible = True
Worksheets(CStr(Me.ComboBox_Aenderungsjahr)).Activate
' ComboBox_Mitglied füllen
ComboBox_Mitglied.List = Range("E9:E60").CurrentRegion.Value
ComboBox_Mitglied.ListIndex = -1
End Sub
Private Sub ComboBox_Mitglied_Change()
Dim rng As Range
Set rng = Columns(1).Find(ComboBox_Mitglied.Value, lookat:=xlPart, okIn:=xlValues)
If Not rng Is Nothing Then
TextBox_Strasse.Text = rng.Text
TextBox_Strasse.Tag = rng.Address
End If
End Sub
Private Sub CommandButton_Ja_Click()
Range(TextBox_Strasse.Tag).Value = TextBox_Strasse.Text
End Sub
Vielen Dank für die Hilfe.mfg, Andreas