Problem mit Code
#1
Finde den Fehler nicht im Code bei in UserForm_Initialize()
Code kann Geändert werden 
Habe Das Beispiel Hochgeladen


Angehängte Dateien
.xlsm   UserForm Daten In Tabelle.xlsm (Größe: 51,81 KB / Downloads: 19)
Antworten Top
#2
Hallöchen,

da geht wohl einiges durcheinander Sad

hier mal der erste Fehler:

Code:
Dim ws As Worksheet
Dim tbl_Manuela As ListObject

Set ws = Worksheets("Januar")
---> Set ws = tbl_Manuela.ListObjects("Tabelle1")

Da sollte besser
Set tbl_Manuela = ws.ListObjects("Ttbl_Manuela")
stehen ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#3
Ich komm nicht weiter nur noch Fehlermeldungen.
Antworten Top
#4
Hallo Molle,

ins Modul des Userform:

Code:
Option Explicit
Option Base 1

Private Sub btnAnlegen_Click()
    Dim arr(): arr = Array(txtDatum.Value, CBMonat.Value, CbName.Value, txtGewicht.Value)
    Sheets(CBMonat.Text).ListObjects("tbl_" & CbName.Text).ListRows.Add.Range.Resize(1, UBound(arr)) = arr
End Sub

Private Sub btnSchließen_Click()
Unload UfPersonal
End Sub

Private Sub CBMonat_Change()
    Dim i&
    With Sheets(CBMonat.Text)
        For i = 1 To .ListObjects.Count
            CbName.AddItem Replace(.ListObjects(i).Name, "tbl_", "")
        Next i
    End With
End Sub

Private Sub CbName_Change()
    ListboxLaden
End Sub

Private Sub ListboxLaden()
    If CBMonat.ListIndex = -1 Or CbName.ListIndex = -1 Then Exit Sub
    ListBox1.List = Sheets(CBMonat.Text).ListObjects("tbl_" & CbName.Text).DataBodyRange.Value
End Sub

Private Sub UserForm_Initialize()
   Dim i&
  'Combobox befüllen
  For i = 1 To 10
    CBMonat.AddItem Sheets(i).Name
  Next i
      ' Setzt das aktuelle Datum in TextBox1
    Me.txtDatum.Value = Format(Date, "dd.mm.yyyy")
End Sub

Gruß Uwe
Antworten Top
#5
Erstmal vielen Dank
Da hat sich ja alles geändert außer das Datum.
Grus Molle
Antworten Top
#6
ja, wie sollen sonst die Werte der Controls in die passende Tabelle der Person zum passenden Monat kommen.
Ebenso die passende Tabelle in die Listbox geladen werden. 
 
Das ist aber nur ein rudimentärer Entwurf mehr nicht.
Da braucht es noch das Leeren der Combobox mit den Namen und der Listbox.
Des Weiteren fehlt noch die Prüfung auf leeren DataBodyRange und eine boolsche Variable um einen Fehler beim Laden der Listbox zu verhindern beim Wechsel der Namenliste entsprechend der vorhandenen Tabellen im jeweiligen Tabellenblatt.

Gruß Uwe
Antworten Top
#7
Hallo Molle,
 
ich hatte gestern Besuch und da blieb nicht viel Zeit zu mehr. Jetzt habe noch schnell den Rest + rudimentäre Fehlerbehandlung eingebaut.
Ich kann erst gegen Abend nachschauen, ob es da noch Probleme gibt. Ich bin die nächsten beiden Tage tagsüber mit JuMu beschäftigt.

.xlsm   UserForm Daten In Tabelle.xlsm (Größe: 58,03 KB / Downloads: 3)
 
Gruß Uwe
Antworten Top
#8
Hallo

interessant, jetzt funktioniert die ListBox Liste. gute Arbeit!!  Aber wie wird die UserForm aktiviert??
Ich sehe keine Button, bei 12 Tabellen zu aufwendig.  Ich hatte es zum  testen so gemacht, s.unten.
Damit wird die UF in jedem Monat durch Doppelklick im Sheet gestartet.

mfg Gast 123

Code:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
   UfPersonal.Show
End Sub
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste