WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Software (http://www.wcm.at/forum/forumdisplay.php?f=5)
-   -   excel und blattschutz (http://www.wcm.at/forum/showthread.php?t=175351)

hoshibrother 04.10.2005 13:37

excel und blattschutz
 
hallo leute!

gibt es im excel folgende möglichkeit: ich möchte zuerst das blatt schützen und dann soll ein anderer user die möglichkeit haben, im geschützten blatt einige zellen mit füllfarbe auszufüllen.

thx

wbendl 04.10.2005 14:21

Hi!

Ich würde sagen mit VBA.

Der User gibt seine Wünsche über eine UserForm ein.
Der Code hebt den Schutz auf, setzt die Änderung uns aktiviert den Schutz wieder.


mfg

WB

hoshibrother 04.10.2005 14:28

das ganze hat nur 1 haken: ich kenn mich mit vba nicht aus.

Al_Bundy99 04.10.2005 16:42

Zellschutz
 
Hallo hoshibrother,

Vielleicht hilft Dir diese Möglichkeit:

Für die Zellen die Du freigegeben haben willst, den Befehl Format -> Zellen -> Schutz -> das Häckchen "Gesperrt" herausnehmen.

Anschliessend unter Menü -> Extras -> Blatt schützen kannst Du die verschiedenen Aktionen für Deine User hinterlegen was sie dürfen.

Passwort vergeben und das war es dann. Aber Vorsicht wenn Deine User diese Tabelle speichern, werden die Änderungen in den freigegebenen Zellen mitgespeichert. :aio:

Grüße vom Schuhverkäufer


P.S. Es ist sehr ratsam das Passwort zu merken, sonst ist die Tabelle im A..ploing-zensur..sch :D

testi 04.10.2005 16:59

In VBA würde es so aussehen:
Code:

Sub Makro()
'Blattschutz aufheben
ActiveSheet.Protect Password:="test", DrawingObjects:=False, Contents:=False, Scenarios:=False
'Dialog zur Farbwahl anzeigen
Application.Dialogs(xlDialogPatterns).Show
'Nach beendigen des Dialogs Blattschutz wieder aktivieren
ActiveSheet.Protect Password:="test", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub


hoshibrother 04.10.2005 17:21

@ Al_Bundy99

deinen rat habe ich ,ehrlich gesagt, schon vorher ausprobiert, bevor ich mein problem gepostet habe.

@ testi

werde dein vba gleich ausprobieren.

Christoph 04.10.2005 20:57

Hallo hoshibrother,
hier ein Tip:

Ungeschuetzte Zellen in Tabellen aufspueren
Versionen: Excel 97, 2000, 2002/XP und 2003
In der heutigen Kolumne geht es um das Thema, wie Sie freie Zellen in einer Tabelle kennzeichnen und einfaerben koennen. Wenn Sie standardmaessig den Tabellenschutz einstellen, dann sind alle Zellen der Tabelle schreibgeschuetzt, es sei denn, Sie haben zuvor ueber den Menuebefehl FORMAT-ZELLEN auf der Registerkarte "Schutz" das Kontrollkaestchen GESPERRT deaktiviert. Zellen, die so definiert sind, koennen auch in geschuetzten Tabellen ueberschrieben werden. Um herauszufinden, welche Zellen in einer Tabelle nicht gesperrt sind, werden zwei unterschiedliche Loesungsansaetze vorgestellt. Bei beiden Varianten muss der Tabellenschutz vorher entfernt werden.
A. BEDINGTE FORMATIERUNG Um mithilfe der bedingten Formatierung von Excel alle freien Zellen einzufaerben, gehen Sie folgendermassen vor:
1. Druecken Sie die Tastenkombination Strg+Umschalt+*, um den verwendeten Bereich einer Tabelle zu markieren. Waehlen Sie aus dem Menue FORMAT den Befehl BEDINGTE FORMATIERUNG.
2. Im Dialog "Bedingte Formatierung" waehlen Sie aus dem Kombinationsfeld BEDINGUNG 1 den Eintrag "Formel ist".
3. Erfassen Sie im Feld rechts daneben die Formel =ZELLE("Schutz";B2)=0 Dabei entspricht die Zelle B2 der ersten Zelle, die sich im markierten Bereich befindet.
4. Klicken Sie auf die Schaltflaeche FORMAT und wechseln Sie auf die Registerkarte "Muster".
5. Waehlen in der Farbpalette die gewuenschte Farbe aus und bestaetigen Sie mit OK.
6. Beenden Sie die bedingte Formatierung mit OK. Daraufhin werden alle Zellen im verwendeten Bereich der Tabelle, die die nicht gesperrt sind, wie gewuenscht eingefaerbt. B. SIE SETZEN EINE MAKROLOESUNG EIN
Im zweiten Loesungsansatz, der optisch das gleiche Ergebnis wie die bedingte Formatierung liefert, wird ein Makro angelegt. Druecken Sie dazu die Tastenkombination Alt+F11, um in die Entwicklungsumgebung von Excel zu gelangen. Waehlen Sie aus dem Menue EINFUEGEN den Befehl MODUL und erfassen Sie danach das folgende Makro: Sub FreieZellenKennzeichnen()

Dim Zelle As Range For Each Zelle In ActiveSheet.UsedRange
If Zelle.Locked = False Then
Zelle.Interior.ColorIndex = 3
End If
Next Zelle
End Sub
Das Makro arbeitet alle verwendeten Zellen der aktiven Tabelle ab und prueft ueber die Eigenschaft Locked, ob die jeweilige Zelle gesperrt ist. Ist das nicht der Fall, faerben Sie die Zelle, indem Sie den Befehl Zelle.Interior.ColorIndex = 3 einsetzen, der die Zelle rot eingefaerbt.

hoshibrother 05.10.2005 09:35

die bedingte formatierung fällt aus. verwende in der tabelle schon 3 bedingte foramtierungen um diverse entwicklungen / trends schon optisch (durch farbe) besser darzustellen.


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag