Excel, Schreibschutz auf einzelne Zellen

Dieses Thema Excel, Schreibschutz auf einzelne Zellen im Forum "Microsoft Office Suite" wurde erstellt von PhantomLord, 2. Feb. 2006.

Thema: Excel, Schreibschutz auf einzelne Zellen Moin Leutz Hab da mal ne Frage zu Excel 2003: wie kann ich in einem Arbeitsblatt nur einzelne Zellen zum...

  1. Moin Leutz

    Hab da mal ne Frage zu Excel 2003: wie kann ich in einem Arbeitsblatt nur einzelne Zellen zum Beschreiben zulassen? Die Sache mit dem Blattschutz ist ziemlich kompliziert und nervt außerdem jedesmal mit Paßwortanfrage, wenn ich in Zellen des geschützten Bereichs reinschreiben will. Gibt es da irgendeine Funktion für, wo ich sowas einfach einstellen kann?
     
  2. Hallo PhantomLord,

    eigentlich geht das mit dem Blattschutz einfach.

    Vorbereitung1: - Zellen pauschal gesperrt setzen -
    a) mit Srtg+A alle Zellen des Blattes selektieren
    b) Format-> Zellen -> Reiter Schutz-> Haken in->Gesperrt'
    Vorbereitung2: - Zellen entsperren -
    c) Zellen, die nicht geschützt werden solllen, markieren
    d) Format-> Zellen -> Reiter Schutz-> Haken in->Gesperrt' rausnehmen

    Blattschutz (betrifft die gesperrten Zellen) setzen
    Extras->Schutz->Blatt...-> Haken in->Inhalte',->Objekte',->Szenarios', Kennwort leer lassen (ist sinnlos, da knackbar   ;) , dann gibt es auch keine PW-Nachfrage)

    Gruß Matjes :)
     
  3. Hallo Matjes

    danke dir, werd ich sofort mal testen. Aber geht sowas nich einfacher? So in der Art zugelassene Zellen markieren, Rest auf Knopfdruck sperren oder so ähnlich...? Aber so einfach macht es Microsoft ja den Leuten leider net.
     
  4. Hi Matjes, hab grade mal probiert, aber funzt leider net ganz so wie gewünscht: zwar kann ich jetzt nicht mehr ohne weiteres in die gesperrten Zellen reinschreiben, sobald ich irgendwas eingebe kommt aber sofort die Paßwortabfrage, obwohl ich keins vergeben habe. Kann dieser Effekt damit zusammenhängen, daß kein aktuelles SP2 für O2K3pro installiert ist?

    Nachtrag: die Paßwortabfrage kommt nur, wenn Zellen angewählt werden, die innerhalb des Druckbereiches liegen. Bei Zellen unterhalb davon kommt ne Meldung Die Zelle oder das Diagramm, das Sie ändern möchten, ist schreibgeschützt
     
  5. @ Matjes
    mir fällt grad noch was ein: gibt es in Excel und auch in Word 2k3 eine Möglichkeit, einzelnen Arbeitsblättern bzw. Dokumenten einen bestimmten Drucker fest zuzuweisen, unabhängig vom Standarddrucker des Betriebssystems?
    Einzelne xls und doc sollen auf einen Nadeldrucker ausgegeben werden und der ist eben nicht Standarddrucker; der Druckerauswahldialog soll dabei nicht erscheinen (so mancher ist leider zu blöd, den richtigen Drucker einzustellen). Ich hab mich heut schon den ganzen Tag durch die Einstellungen durchgewühlt aber nix passendes gefunden.

    Oder ist es vielleicht möglich, einer Verknüpfung von Word und Excel einen Drucker zuzuweisen?
     
  6. zu
    Ist mir so noch nicht untergekommen. Werd es am Montag in der Firma auf Excel 2003 ausprobieren.

    Hier hab ich nur Excel 97, und dem ist Wurst, ob ich im oder ausserhalb des Druckbereichs versuche etwas in eine Zelle einzugeben. Da gibt es immer die normale Antwort : ... Zelle gesperrt ... 

    zu Drucken:
    das Druckereignis kann man abfangen, den Drucker einstellen und ausdrucken, aber nur mit Makro  ;D

    Gruß Matjes :)
     
  7. jo, danke ersma, sowas hab ich mir schon gedacht.
     
  8. Hallo PhantomLord,

    für Excel hab ich dir mal ein Makro zusammengestellt, mit dem du das Gewünschte realisieren kannst.

    Im Array BlaetterAufDrucker gibts du paarweise den Blattnamen/den gewünschten Druckernamen an.

    Den Druckenamen kannst du mit dem Makro DruckernamenAusgeben  feststellen.
    - Drucker im Druckdialog einstellen
    - Makro DruckernamenAusgeben aufrufen
    - aus der Inputbox den Druckernamen kopieren.

    Der Makro Workbook_BeforePrint muß in der Code-Seite der Arbeitsmappe liegen (Diesearbeitsmappe).

    Gruß Matjes :)

    Code:
    Private Sub Workbook_BeforePrint(Cancel As Boolean)
      
      Dim ws As Worksheet, s_Blattname As String, x As Long
      Dim BlaetterAufDrucker As Variant
      Dim Old_Drucker As String, Spezieller_Drucker As String
      
     ->*** paarweise Angabe Blatt/Drucker,
     ->*** wenn Blatt nur auf einem bestimmten Drucker ausgegeben werden soll
     ->*** in diesem Fall nur Blatt->Tabelle1' und->Tabelle3'
      BlaetterAufDrucker = Array( _
                              Tabelle1, Druckername1, _
                              Tabelle3, Druckername2)
      
     ->*** Blattnamen des aktiven Blattes
      s_Blattname = ActiveSheet.Name
      
     ->*** Spezialbehandlung für Blatt?
      Spezieller_Drucker = 
      For x = LBound(BlaetterAufDrucker) To UBound(BlaetterAufDrucker) Step 2
        If s_Blattname = BlaetterAufDrucker(x) Then
          Spezieller_Drucker = BlaetterAufDrucker(x + 1)
          Exit For
        End If
      Next
      
      If Spezieller_Drucker <>  Then
        
        Old_Drucker = Application.ActivePrinter->alten Druckernamen sichern
        
       ->speziellen Drucker einstellen
        On Error Resume Next
        Application.ActivePrinter = Spezieller_Drucker
        If Err.Number <> 0 Then
          MsgBox (Err.Description & vbLf & _
            Drucker-> & Spezieller_Drucker &-> konnte nicht eingestellt werden.)
          Err.Clear
          On Error GoTo 0
          Exit Sub
        End If
        
        ws.PrintOut Copies:=1                   'Blatt ausdrucken
        Application.ActivePrinter = Old_Drucker->alten Druckernamen restaurieren
        Cancel = True                           'Druckdialog unterdrücken
      End If
      
    End Sub
    Code:
    Sub DruckernamenAusgeben()
      Dim s_tmp As String
      s_tmp = InputBox( _
        Name des aktiven Druckers, _
        Name des aktiven Druckers, _
        Application.ActivePrinter)
    End Sub 
     
  9. Hallo Matjes

    herzlichen Dank für deine Hilfe!!
    Habe grade dein Makro gesehen, da hast du ja richtig Arbeit reingesteckt. jetzt muß ich allerdings nur noch zusehen, wie ich das zum laufen kriege, bin in dieser Hinsicht leider noch sehr unwissend. Aber ich werd einfach mal ein bischen rumprobieren, mal sehen was dabei rumkommt :)

    Danke Danke Danke

    gruß Uli
     
  10. Hallo Uli,

    dann ein kleines Rezept  ;)

    Am besten machst du vorher eine Kopie deiner Datei und probierst mit dieser.

    ====================================
    Makro Workbook_BeforePrint
    in Excel-Datei speichern (DieseArbeitsmappe)
    ====================================
    a) betreffende Excel-Datei öffnen
    b) mit Alt+F11 VB-Editor öffnen
    c) im Projekt-Fenster
       unter VBAProject(betreffende Excel-Datei)
       mit einem Doppelklick auf->DieseArbeitsmappe'
       die Code-Seite der Arbeitsmappe öffnen
    d) Das Makro dort hineinkopieren
    e) Blattnamen/Druckernamen anpassen (siehe oben)
    f) mit Alt+S speichern
    g) mit Alt+Q VB-Editor schliessen
    h) ausprobieren


    ====================================
    Makro DruckernamenAusgeben
    in Excel-Datei speichern (Modul)
    ====================================
    a) betreffende Excel-Datei öffnen
    b) mit Alt+F11 VB-Editor öffnen
    c) mit rechter Maustaste im Projekt-Fenster  VBAProject(Dateiname) selektieren
       -> Einfügen -> Modul
      (es öffnet sich ein Modul-Fenster)
    d) den Makro per copy and paste in dieses Modulfenster kopieren
    e) Speichern mit Alt+S
    f) VB-Editor schliessen mit Alt+Q
    g) ausprobieren


    Gruß Matjes :)
     
Die Seite wird geladen...

Excel, Schreibschutz auf einzelne Zellen - Ähnliche Themen

Forum Datum
Schreibschutz in Winword/Excel dauerhaft entfernen Windows XP Forum 3. Nov. 2010
Excel Tabelle mit Schreibschutz Windows XP Forum 22. Mai 2008
Schreibschutz bei Excel im Office 2007 nur für bestimmte Zellen, nicht alles! Windows XP Forum 10. Jan. 2008
Excel 2000 Schreibschutz Windows XP Forum 19. Juli 2005
excel schreibschutz Microsoft Office Suite 1. Apr. 2004