Microsoft Excel

Herbers Excel/VBA-Archiv

geschützte Zellen nicht kopieren

Betrifft: geschützte Zellen nicht kopieren
von: Christoph
Geschrieben am: 14.04.2003 - 18:55:50

Hallo Forum,
ich möchte verhindern, dass in einem Tabellenblatt geschützte Zellen markiert und somit kopiert werden können. Wenn ich eine einzelne geschützte Zelle auswähle wird über:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target.Select = Locked Then
Cells(1, 1).Select
End If
End Sub

die Zelle A1 ausgewählt.
die Spalte A ist ebenfalls geschützt, jedoch auch ausgeblendet und über ein "Worksheet_BeforeDoubleClick" - Anweisung verhindere ich die Excelmeldung : Zelle ist geschützt...)
Soweit so gut. Wenn jedoch mit der Maus ein größerer Zellbereich markiert wird, der auch geschützte Zellen beinhaltet, dann soll nur der Bereich mit den ungeschützten Zellen markiert werden. Insbesondere soll auch durch Crtl+A nicht das ganze Blatt sondern ebenfalls nur die ungeschützten Zellen markiert werden können.
Ich möchte damit verhindern, dass jemand das ganze Blatt oder auch nur geschützte Teilbereiche kopieren kann.

Ich habe schon versucht, die geschützten und die ungeschützten Zellen als Variable zu definieren und mit der Schnittmenge operiert, aber über kläglich Ansätze bin ich nicht rausgekommen.
könnt ihr mir helfen?
Vielen Dank für eure Mühe
Gruß
Christoph


  

Re: geschützte Zellen nicht kopieren
von: L.Vira
Geschrieben am: 14.04.2003 - 19:59:38

Warum dürfen geschutzte Zellen nicht kopiert werden?

  

Lösung gefunden
von: Christoph
Geschrieben am: 14.04.2003 - 20:16:35

Hi L.Vira
ich hab mal wieder zu früh geschossen, nachdem ich im Archiv unter "Blattschutz" nichts gefunden habe.
Das gewünschte Ergebnis war unter dem Suchbegriff "geschützte Zellen" zu finden:

Private Sub Workbook_Open()
Worksheets("Tabelle1").EnableSelection = xlUnlockedCells
End Sub

Trotzdem Danke
Christoph



  

Re: Lösung gefunden
von: L.Vira
Geschrieben am: 14.04.2003 - 20:17:59

Freu dich nicht zu früh, das verhindert das auch nicht völlig.

  

Re: Lösung gefunden
von: Christoph
Geschrieben am: 14.04.2003 - 20:38:47

Hi L.Vira,
du verstehst es sehr gut, mich mit "Bröckchen" zu versorgen - smile.
Wie darf ich deinen Kommentar verstehen?
Wie müsste das Sub denn aussehn?
Durch welchen Kniff kann der Anwender meine Einschränkung umgehn?

Gruß
Christoph

  

Re: Lösung gefunden
von: L.Vira
Geschrieben am: 14.04.2003 - 20:47:30

Beantworte doch mal meine Frage, ggf. gibts ja eine andere Lösung.

  

Zurück zur Frage
von: Christoph
Geschrieben am: 14.04.2003 - 21:04:06

Hi - zum Dritten
ich will verhindern, dass der Anwender (jener, der da Daten eingibt) sich im geschützten Bereich aufhalten kann - sprich diesen markieren kann.
und des Weiteren will ich verhindern, dass der Anwender Kopien einzelner Bereiche oder der gesamten Tabelle erstellt und in diesen Kopien weiter arbeitet. (als Folge davon bekäme ich Meldungen wie: Das funktioniert alles gar nicht mehr - und gestern ging das noch...etc)
Als drittes soll dies auch ein Schutz meiner mühsam erstellten Formate etc. sein.

Gruß
Christoph

  

Re: Zurück zur Frage
von: L.Vira
Geschrieben am: 14.04.2003 - 21:21:35

Wie du ja sicher weißt, gibt es 100% in Excel fast nie, eigentlich bei keinem Programm. Mit UnlockedCells ist schon mal ein großer Schritt vollbracht, wenn das auch nicht verhindert, das unzusammenhängende Bereiche selektiert werden können. Am sichersten wäre es, die gesamte Bearbeitung über Dialoge zu machen, was aber auch die meiste Programmierarbeit erfordert.

  

Danke
von: Christoph
Geschrieben am: 14.04.2003 - 21:38:09

Hi L.Vira
das mit der gehaltener Shift-Taste ist mit zwischenzeitlich auch aufgefallen. Aber ich denke, ich komme damit ganz gut parat. Einen 100%-igen Schutz gibt es nicht, und bei Excel schon zweimal nicht, aber ich habe es an der Stelle nicht mit Crackern zu tun, sondern will die Anwender in die Bereiche zwingen, wo sie "spielen" dürfen.
schönen Dank
Christoph

 

Beiträge aus den Excel-Beispielen zum Thema "geschützte Zellen nicht kopieren"