Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Blattschutz aufheben vor - und aktivieren nach - makro

839 views
Skip to first unread message

Tobias Harnegg

unread,
Feb 2, 2009, 4:45:13 AM2/2/09
to
Hallo allerseits,

ich habe 3 Makros, möchte diese aber trotz Blattschutz ausführen
(gewisse zellbereiche bleiben ungesperrt,
aber die makros beziehen sich tw. auf die gesperrten.

Bin leider kein grosser VBA-Mann, bisher gescheitert.
Vielleicht kann irgendwer die Relevanten Zeilen einfügen, so das es
funkioniert ?
Das Blattschutz-Passwort wäre "unp".

Meine Makros:

IM ARBEITSBLATT:

' Für automatische Höhe
Private Sub Worksheet_Autofit(ByVal Target As Range)
Rows.EntireColumn.AutoFit
End Sub
' Für Datumsstempel
Private Sub Worksheet_Change(ByVal Target As Range)
For Each Cell In Target
If Cell.Column <= 3 Then
If Cells(Cell.Row, 1) <> "" Or Cells(Cell.Row, 2) <> "" Or Cells
(Cell.Row, 3) <> "" Then Cells(Cell.Row, 4) = Now
If Cells(Cell.Row, 2) = "" And Cells(Cell.Row, 3) = "" Then Cells
(Cell.Row, 4) = ""
End If
Next Cell
End Sub

IN DER MAPPE:

' Datum d. letzten Änderung
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Target As Excel.Range)
Dim Datumszelle As Range
Application.EnableEvents = False
If TypeName(Sh) = "Worksheet" Then
Set Datumszelle = Sh.Range("Z1")
Datumszelle = Date & ", " & Time
End If
Application.EnableEvents = True
End Sub

Vielen Dank für Hilfe!

Werner P. Schulz

unread,
Feb 2, 2009, 6:20:37 AM2/2/09
to
Am Mon, 02 Feb 2009 01:45:13 -0800 schrieb Tobias Harnegg:


> ich habe 3 Makros, möchte diese aber trotz Blattschutz ausführen
> (gewisse zellbereiche bleiben ungesperrt,
> aber die makros beziehen sich tw. auf die gesperrten.
>
> Bin leider kein grosser VBA-Mann, bisher gescheitert.
> Vielleicht kann irgendwer die Relevanten Zeilen einfügen, so das es
> funkioniert ?
> Das Blattschutz-Passwort wäre "unp".

... baue in deine Makros
ActiveSheet.Unprotect Password:="unp"
bzw am Ende wieder
ActiveSheet.Protect Password:="unp"
ein

--
Gruss Werner
mail nur an => nospam0601 at wp-schulz.de

Google fuer Linux-Fragen => http://www.google.de/linux <=

Eberhard Funke

unread,
Feb 2, 2009, 9:54:38 AM2/2/09
to
Am Mon, 2 Feb 2009 01:45:13 -0800 (PST) schrieb Tobias Harnegg:

> ich habe 3 Makros, möchte diese aber trotz Blattschutz ausführen
> (gewisse zellbereiche bleiben ungesperrt,
> aber die makros beziehen sich tw. auf die gesperrten.

> Das Blattschutz-Passwort wäre "unp".


>
> Meine Makros:
>
> IM ARBEITSBLATT:
>
> ' Für automatische Höhe
> Private Sub Worksheet_Autofit(ByVal Target As Range)
> Rows.EntireColumn.AutoFit
> End Sub

Hallo Tobias,

Aus Deinem Ansatz ist mir ist nicht ganz klar, ob das Autofit für die Zeile
oder die Spalte durchgeführt werden soll.

die Ereignisprozedur


Private Sub Worksheet_Autofit(ByVal Target As Range)

kennt meine Excelversion nicht, aber vielleicht hilft Dir das hier weiter:

Sub TabSchutz()
ActiveSheet.Protect password:="unp", userinterfaceonly:=True
End Sub

Schützt das aktive Tabellenblatt, lässt aber Änderungen per Makro zu.
---------------------------------------

Private Sub Worksheet_BeforeRightClick(ByVal _
Target As Range, Cancel As Boolean)
Cancel = True
Target.EntireColumn.AutoFit
End Sub

Führt AutoFit für eine *Spalte* durch. Einzukopieren in das Modul des
Tabellenblattes.
Mit Rechtsklick auf eine Zelle wird das Autofit dieser Spalte ausgeführt.

--
Mit freundlichen Grüssen Eberhard
XP home XL 2000
Eberhard(punkt)W(punkt)Funke(at)t-online.de

Tobias Harnegg

unread,
Feb 3, 2009, 3:39:36 PM2/3/09
to
On 2 Feb., 15:54, Eberhard Funke <nomail@invalid> wrote:
> Am Mon, 2 Feb 2009 01:45:13 -0800 (PST) schrieb Tobias Harnegg:
>
> > ich habe 3 Makros, möchte diese aber trotz Blattschutz ausführen
> > (gewisse zellbereiche bleiben ungesperrt,
> > aber die makros beziehen sich tw. auf die gesperrten.
> > Das Blattschutz-Passwort wäre "unp".
>
> > Meine Makros:
>
> > IM ARBEITSBLATT:
>
> > ' Für automatische Höhe
> > Private Sub Worksheet_Autofit(ByVal Target As Range)
> > Rows.EntireColumn.AutoFit
> > End Sub
>
> Hallo Tobias,
>
> Aus Deinem Ansatz ist mir ist nicht ganz klar, ob das Autofit für die Zeile
> oder die Spalte durchgeführt werden soll.
>
> die Ereignisprozedur
> Private Sub Worksheet_Autofit(ByVal Target As Range)
> kennt meine Excelversion nicht, aber vielleicht hilft Dir das hier weiter:
>
> Sub TabSchutz()
> ActiveSheet.Protect password:="unp", userinterfaceonly:=True
> End Sub
>
> Schützt das aktive Tabellenblatt, lässt aber Änderungen per Makro zu.

klappt ausgezeichnet, besten dank!

0 new messages