unser VBA-Projekt ist in den letzten Zügen - soweit funktioniert nun alles.
Wir befüllen eine OPL (Offene-Punkte-Liste) über ein Userform mit Aufbaben, um diese in unseren täglichen Meetings zu tracken.
Jetzt möchte ich natürlich, dass jeder mit dieser Liste arbeitet - jedoch nicht auf die Idee kommt, gewisse Dinge zu ändern oder zu löschen.
So möchten wir die OPL mit einem Blattschutz versehen und nur bestimmte Spalten zur Bearbeitung freigeben. Wie bekomme ich in meinen Code die Befehle rein, um den Blattschutz beim Aufruf der Maske zu deaktivieren und nach Füllung über die Userform wieder zu aktivieren? Habe schon etwas herumprobiert - schaffe es aber nicht wirklich.
Hier mal der Codeabschnitt zum Befüllen meiner OPL (ich gehe davon aus, hier muss vorne dran die Deaktivierung / dahinter die Aktivierung des Schutzes, oder?) Wo/wie muss ich das einbauen? - Gruß Stefan
[code]
Private Sub cmdEingabe_Click()
'Fügt eingetragene Werte in Tabellenblatt und schließt das Formular frmMaske
If txtTermin = "" Then
MsgBox ("Bitte Termin zur Fertigstellung eintragen")
txtTermin.SetFocus
Exit Sub
End If
Dim intErsteLeereZeile As Long
intErsteLeereZeile = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row + 1
ActiveSheet.Cells(intErsteLeereZeile, 2).Value = Me.txtLfdNr.Value
ActiveSheet.Cells(intErsteLeereZeile, 3).Value = CDate(Me.txtDatum.Value)
ActiveSheet.Cells(intErsteLeereZeile, 4).Value = Me.txtKW.Value
ActiveSheet.Cells(intErsteLeereZeile, 5).Value = Me.cboVerantwortlich.Value
ActiveSheet.Cells(intErsteLeereZeile, 6).Value = Me.cboKategorie.Value
ActiveSheet.Cells(intErsteLeereZeile, 10).Value = Me.cboPrio.Value
ActiveSheet.Cells(intErsteLeereZeile, 13).Value = Me.cboStatus.Value
ActiveSheet.Cells(intErsteLeereZeile, 7).Value = Me.txtThema.Value
ActiveSheet.Cells(intErsteLeereZeile, 8).Value = Me.txtBezeichnung.Value
ActiveSheet.Cells(intErsteLeereZeile, 9).Value = Me.txtMaßnahmen.Value
ActiveSheet.Cells(intErsteLeereZeile, 12).Value = Me.cboFortschritt.Value
ActiveSheet.Cells(intErsteLeereZeile, 11).Value = Me.txtTermin.Value
ActiveSheet.Cells(intErsteLeereZeile, 14).Value = Me.cboHerkunft.Value
Unload frmMaske
End Sub
[code]Das die Codeabschnitte für den Blattschutz:
[/code]Sub Blattschutz_deaktiverien()
'
' Blattschutz_deaktiverien Makro
'
'
ActiveSheet.Unprotect
End Sub
Sub Blattschutz_aktivieren()
'
' Blattschutz_aktivieren Makro
'
'
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowSorting:=True, AllowFiltering:=True
End Sub [/code]