AW: range und Global = fehler 1004
16.05.2015 12:32:27
VBA
Im Modul steht :
Global zeile As Integer
Sub mdl_Mitglieder()
frm_MitgliederVerwalten.Show
End Sub
Und in den Userforms dafür :
Private Sub CommandButton1_Click()
temp = MsgBox("Soll das Mitglied wirklich gelöscht werden?", vbYesNo)
If temp = vbYes Then
Sheets("Mitgliederdaten").Rows(zeile).Delete
Unload Me
End If
End Sub
Private Sub CommandButton2_Click()
Sheets("Mitgliederdaten").Cells(zeile, 1) = TextBox1
Sheets("Mitgliederdaten").Cells(zeile, 2) = TextBox2
Sheets("Mitgliederdaten").Cells(zeile, 3) = TextBox3
Sheets("Mitgliederdaten").Cells(zeile, 5) = cbo_Geschlecht
Sheets("Mitgliederdaten").Cells(zeile, 4) = cbo_Nation
Sheets("Mitgliederdaten").Cells(zeile, 6) = TextBox4
Sheets("Mitgliederdaten").Cells(zeile, 7) = TextBox5
Sheets("Mitgliederdaten").Cells(zeile, 8) = TextBox6
Sheets("Mitgliederdaten").Cells(zeile, 9) = TextBox7
Sheets("Mitgliederdaten").Cells(zeile, 10) = TextBox8
Sheets("Mitgliederdaten").Cells(zeile, 11) = TextBox9
Sheets("Mitgliederdaten").Cells(zeile, 15) = TextBox10
Sheets("Mitgliederdaten").Cells(zeile, 12) = cbo_AktivPassiv
Sheets("Mitgliederdaten").Cells(zeile, 13) = cbo_Trainingstage
Sheets("Mitgliederdaten").Cells(zeile, 14) = cbo_Spieltage
Sheets("Mitgliederdaten").Cells(zeile, 16) = TextBox11
Unload Me
End Sub
Private Sub CommandButton3_Click()
Unload Me
End Sub
Private Sub UserForm_Initialize()
With Me
TextBox1 = Sheets("Mitgliederdaten").Cells(zeile, 1)
TextBox2 = Sheets("Mitgliederdaten").Cells(zeile, 2)
TextBox3 = Sheets("Mitgliederdaten").Cells(zeile, 3)
cbo_Geschlecht = Sheets("Mitgliederdaten").Cells(zeile, 5)
cbo_Geschlecht.AddItem "maennlich"
cbo_Geschlecht.AddItem "weiblich"
cbo_Nation = Sheets("Mitgliederdaten").Cells(zeile, 4)
cbo_Nation.AddItem "GER"
cbo_Nation.AddItem "NL"
cbo_Nation.AddItem "andere Nationen"
TextBox4 = Sheets("Mitgliederdaten").Cells(zeile, 6)
TextBox5 = Sheets("Mitgliederdaten").Cells(zeile, 7)
TextBox6 = Sheets("Mitgliederdaten").Cells(zeile, 8)
TextBox7 = Sheets("Mitgliederdaten").Cells(zeile, 9)
TextBox8 = Sheets("Mitgliederdaten").Cells(zeile, 10)
TextBox9 = Sheets("Mitgliederdaten").Cells(zeile, 11)
TextBox10 = Sheets("Mitgliederdaten").Cells(zeile, 15)
cbo_AktivPassiv = Sheets("Mitgliederdaten").Cells(zeile, 12)
cbo_AktivPassiv.AddItem "AKTIV"
cbo_AktivPassiv.AddItem "PASSIV"
cbo_Trainingstage = Sheets("Mitgliederdaten").Cells(zeile, 13)
cbo_Trainingstage.AddItem "DI"
cbo_Trainingstage.AddItem "FR"
cbo_Trainingstage.AddItem "DI + FR"
cbo_Spieltage = Sheets("Mitgliederdaten").Cells(zeile, 14)
cbo_Spieltage.AddItem "in der Woche"
cbo_Spieltage.AddItem "FR abends"
cbo_Spieltage.AddItem "SA"
cbo_Spieltage.AddItem "SO"
cbo_Spieltage.AddItem "SA + SO"
cbo_Spieltage.AddItem "Kein Interesse"
TextBox11 = Sheets("Mitgliederdaten").Cells(zeile, 16)
End With
End Sub
und :
Private Sub CommandButton1_Click()
If ComboBox1.ListIndex >= 0 Then
zeile = ComboBox1.ListIndex + 6
Unload Me
frm_MitgliederBearbeiten.Show
End If
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub UserForm_Initialize()
ComboBox1.RowSource = "A6:A" & Sheets("Mitgliederdaten").Cells(Cells.Rows.Count, 1).End( _
xlUp).Row
ComboBox1.ListIndex = 0
End Sub
und das ist der code bei dem ich die Fehlermeldung bekomme :
Private Sub cmd_Abbruch_Click()
'Schließt das Formular frm_Terminhinzufügen
Unload frm_Terminhinzufügen
End Sub
Private Sub cmd_Termineingabesave_Click()
'Fügt die eingetragenen Werte ins Tabellenblatt und schließt das Formular frm_Terminhinzufügen
Dim intErsteLeereZeile As Long
intErsteLeereZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
ActiveSheet.Cells(intErsteLeereZeile, 1).Value = Me.txt_Datum.Value
ActiveSheet.Cells(intErsteLeereZeile, 7).Value = Me.cbo_ArtdesTermins
ActiveSheet.Cells(intErsteLeereZeile, 2).Value = Me.cbo_Uhrzeit.Value
ActiveSheet.Cells(intErsteLeereZeile, 3).Value = Me.txt_Veranstaltung
ActiveSheet.Cells(intErsteLeereZeile, 4).Value = Me.txt_Ort
ActiveSheet.Cells(intErsteLeereZeile, 5).Value = Me.txt_Helfer1
ActiveSheet.Cells(intErsteLeereZeile, 6).Value = Me.txt_Helfer2
ActiveSheet.Cells(intErsteLeereZeile, 8).Value = Me.cbo_Prio
Unload frm_Terminhinzufügen
End Sub
'Bestimmte sachen in der Userform (bzw cbo txt)schon als Auswahl zu Verfügung stellen
Private Sub UserForm_Initialize()
'Dim rngArtdesTermins As Range
With Me
.txt_Datum.Value = Date
' hier beschwert excel sich nicht über die range "Uhrzeit"
'aber er zeigt mir das in kommazahlen an und nicht z.B 18:00
.cbo_Uhrzeit.List = Range("Uhrzeit").Value
' End With
' For Each rngArtdesTermins In Range("ArtdesTermins")
' With Me.cbo_ArtdesTermins
' .AddItem rngArtdesTermins.Value
' .List(.ListCount - 1, 1) = rngArtdesTermins.Offset(0, 1).Value
' End With
' Next rngArtdesTermins
'Auf die add.item hier drunter würde ich gerne verzichten und stattdessen den oben _
auskommentierten code nutzen
'bekomme aber immer den Fehler
.cbo_ArtdesTermins.AddItem "Punktspiel"
.cbo_ArtdesTermins.AddItem "Sperrtermine Mitglieder"
.cbo_ArtdesTermins.AddItem "Sperrtermin"
.cbo_ArtdesTermins.AddItem "außer Sportlich"
.cbo_ArtdesTermins.AddItem "Veranstaltung"
.cbo_ArtdesTermins.AddItem "Jährlich"
.cbo_ArtdesTermins.AddItem "Feiertag"
.cbo_ArtdesTermins.AddItem "Frist"
End With
End Sub
Danke
https://www.herber.de/bbs/user/97668.xlsm