ich habe ein Problem was für mich nicht nachvollziehbar ist und mich in den Wahnsinn treibt.
Ich habe eine Excel-Datei bei der mehrere Bearbeiter Daten eingeben sollen. Aus einer Personalliste erstelle ich über ein Makro Tabellenblätter für jeden Mitarbeiter nach einem Muster. Diese Tabellenblätter sind versteckt. Auf einem Übersichtsblatt werden die Daten aus den einzelnen Tabellenblättern zusammengerechnet und entsprechend dargestellt. Das funktioniert auch alles problemlos.
Auf dieser Übersichtsseite gibt es einen Button der eine UserForm mit einer ListBox lädt aus der der Anwender seinen Namen auswählen kann. Der Click in die ListBox soll dazu führen, dass das zugehörige Tabellenblatt sichtbar wird. Zudem soll es selektiert werden, damit der Anwender seine Eintragungen machen kann.
Der Code scheint auch zu funktionieren. Das Blatt wird sichtbar und der Cursor befindet sich auf diesem Blatt. Jetzt kommt aber folgendes Problem - Sobald man Eintragungen vornimmt, werden diese auf dem Übersichtsblatt vorgenommen. Das sieht man aber erst wenn man dorthin zurück wechselt. Erst ein händisches Klicken auf das Übersichtsblatt und dann zurück auf das Anwenderblatt beheben diese Problematik. Ich verstehe es einfach nicht. Vielleicht hat jemand eine Idee worin mein Fehler liegt.
Anbei der zugehörige Code:
Aufrufen der UserForm:
Dim Tabelle As Workbook
Dim BlattAnzahl As Integer
Dim BlattZaehler As Integer
Sub TabBlattAuswahl()
Set Tabelle = ThisWorkbook
BlattAnzahl = Tabelle.Worksheets.Count
Tabellenblätter.ListBoxSB.Clear
If BlattAnzahl
Klick auf den Namen in der UserForm
Private Sub ListBoxSB_Click()
Call DieseArbeitsmappe.BlattAktivieren(ListBoxSB.Value)
Tabellenblätter.Hide
End Sub
Code zum Aktivieren des Tabellenblatts:
Sub BlattAktivieren(Optional Blattname As String)
Dim BlattAktiv As Worksheet
Set BlattAktiv = ThisWorkbook.Worksheets(Blattname)
BlattAktiv.Visible = xlSheetVisible
BlattAktiv.Activate
BlattAktiv.Select
Set BlattAktiv = Nothing
End Sub
Über jede Hilfe wäre ich mehr als dankbar!!!