Meinews.de  


Zurück   Meinews.de > Forum > Newsgroups microsoft.public.de.* 1 Forum > Newsgroup microsoft.public.de.excel
Registrieren FAQ Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren

Newsgroup microsoft.public.de.excel Forum microsoft.public.de.excel

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 11-02-2009, 08:27 AM
Charly Pruemm
 
Beiträge: n/a
Standard Zellschutz

Hallo,

wie kann ich per Makro alle Zellen in der gesamten Arbeitsmappe die eine
Formel enthalten schützen und alle anderen Zellen freischalten?

Gruss
Charly Prümm


Mit Zitat antworten
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Meinews.de
Standard Sponsored Links

  #2  
Alt 11-02-2009, 10:42 AM
michlchen
 
Beiträge: n/a
Standard Re: Zellschutz

servus.

hier mal n beispielcode. alle anderen zellen werden freigegeben und
nur die mit formel (kennzeichen "=") werden gesperrt und die formeln
ausgeblendet. danach wird das ganze blatt mit "abc" gesperrt.

Sub formeln_sperren()
ActiveSheet.UsedRange.Select
selection.Locked = False
' Befehl für Formel anzeigen ist FormulaHidden
selection.FormulaHidden = False
For Each Zelle In Selection
If InStr(1, CStr(Zelle.Formula), "=") <> 0 Then
Zelle.Locked = True
Zelle.FormulaHidden = True
End If
Next Zelle
ActiveSheet.Protect ("abc")
End Sub
Mit Zitat antworten
  #3  
Alt 11-03-2009, 11:04 AM
Andreas Killer
 
Beiträge: n/a
Standard Re: Zellschutz

On 2 Nov., 09:27, "Charly Pruemm" <kpru...*t-online.de> wrote:

> wie kann ich per Makro alle Zellen in der gesamten Arbeitsmappe die eine
> Formel enthalten schützen und alle anderen Zellen freischalten?

Ich weiß nicht ob Du mit dem Beispielcode klarkommst, der zudem nicht
ganz das macht was Du möchtest, daher biete ich mal eine fertige
Alternative an.

Andreas.

Sub SetzeFormelschutz()
'Setzt in der ganzen Mappe den Zellschutz bei allen Zellen _
mit Formeln, gibt alle anderen frei
Dim S As Worksheet, Pwd As String
Dim SaveProtectContents As Boolean, SaveEnableEvents As Boolean

'Ereignis-Status sichern und aus, sonst laufen ggf. riesige _
Schleifen in den SelectionChange-Ereignissen ausgelöst _
durch SpecialCells!
SaveEnableEvents = Application.EnableEvents
Application.EnableEvents = False

'Durchlaufe alle Blätter
For Each S In Sheets
'Schutzstatus sichern
SaveProtectContents = S.ProtectContents

'Ist das Blatt geschützt?
If S.ProtectContents Then
'Versuche Schutz zu entfernen
Pwd = ""
On Error Resume Next
Do
S.Unprotect Pwd
'Erfolgreich?
If S.ProtectContents Then
'Nein, Passwort abfragen
S.Activate
Pwd = InputBox("Passwort für " & S.Name, _
"Blattschutz aufheben")
End If
'Wiederhole bis Abbruch oder Blatt ungeschützt
Loop Until Len(Pwd) = 0 Or Not S.ProtectContents
'Fehler an
On Error GoTo 0
End If

'Blatt ungeschützt?
If Not S.ProtectContents Then
'Gebe Zellen frei
S.Cells.Locked = False
'Fehler aus, evt. keine Formeln vorhanden
On Error Resume Next
'Setze Schutz bei Formeln
S.Cells.SpecialCells(xlCellTypeFormulas).Locked = True
'Fehler an
On Error GoTo 0
'Ggf. Schutz wieder setzen
If SaveProtectContents Then S.Protect Pwd
End If
Next

'Ggf. Ereignisse an
Application.EnableEvents = SaveEnableEvents
End Sub

Mit Zitat antworten
 
Antwort


Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen
Es ist dir nicht erlaubt, auf Beiträge zu antworten
Es ist dir nicht erlaubt, Anhänge anzufügen
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten

vB Code ist An
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Zellschutz Franz Hansen Newsgroup microsoft.public.de.excel 1 02-23-2009 03:01 PM
Zellschutz Berthold Alt Newsgroup microsoft.public.de.excel 1 02-12-2009 01:23 PM
Zellschutz karmin Newsgroup microsoft.public.de.excel 0 11-02-2008 08:01 AM
Zellschutz-Markierung verschieben Martin B. Newsgroup microsoft.public.de.excel 6 08-14-2008 04:05 PM
Zellschutz Seppeline Newsgroup microsoft.public.de.excel 1 08-06-2008 01:34 PM


Alle Zeitangaben in WEZ. Es ist jetzt 01:01 PM Uhr.





Powered by: vBulletin Version 3.6.7 (Deutsch)
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Forum SEO by Zoints