Office: (Office 2016) [VBA] temporäre Kopie Blattschutz aktivieren

Helfe beim Thema [VBA] temporäre Kopie Blattschutz aktivieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe folgendes Problem: Ich habe ein Makro, welches die Arbeitsblätter nach Mailadressen in einer bestimmten Zelle durchsucht,... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Craysee, 9. März 2023.

  1. Craysee Neuer User

    [VBA] temporäre Kopie Blattschutz aktivieren


    Hallo zusammen,

    ich habe folgendes Problem:

    Ich habe ein Makro, welches die Arbeitsblätter nach Mailadressen in einer bestimmten Zelle durchsucht, dieses Arbeitsblatt dann in einer neuen Datei zwischenspeichert und dann versendet. Wie kann ich da jetzt noch einbauen, dass diese Kopie mit einem Blattschutz versehen wird? Er sperrt mir immer die Originaldatei. Die Datei und das Blatt haben immer andere Namen.

    Code:
    For Each sh In ThisWorkbook.Worksheets
            If sh.Range("A1").Value Like "?*@?*.?*" Then
                
                          
                sh.Copy
                Set wb = ActiveWorkbook
                Range("E9:E20").Value = Range("E9:E20").Value
                Range("E23:E26").Value = Range("E23:E26").Value
                Range("D2").Value = Range("D2").Value
                Range("B1").ClearContents
                
                          
                TempFileName = "Belegungsmeldung " & sh.Name & " " _
                             & Range("A3") & " "
    
                Set OutMail = OutApp.CreateItem(0)
    
                With wb
                    
                    .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
                
    Danke und Gruß

    Cray
     
    Craysee, 9. März 2023
    #1
  2. DIZA
    DIZA hat Ahnung
    Hallo, so?
    Code:
                
    Range("B1").ClearContents
    
    Sheets("Tabelle1").Protect "Passwort"
                          
    TempFileName = "Belegungsmeldung " & sh.Name & " " _
                             & Range("A3") & " "
     
  3. Craysee Neuer User
    Hallo Dirk,

    danke für die schnelle Antwort. Klappt leider nicht, es kommt die Meldung "Index außerhalb des gültigen Bereichs". Das erstellte Blatt wird daraufhin nicht mehr verschickt, sondern geöffnet, ist aber ohne Blattschutz.

    Gruß

    Cray
     
    Craysee, 9. März 2023
    #3
  4. DIZA
    DIZA hat Ahnung

    [VBA] temporäre Kopie Blattschutz aktivieren

    hmm... bei mir hat es geklappt (test)

    kannst du evtl., abgespeckt, eine Beispieldatei hochladen, aus der das Makro in Gänze erkennbar ist?
     
  5. d'r Bastler
    d'r Bastler Erfahrener User
    Moin!
    und wenn Du das temporäre Sheet nach der Kopie aktivierst und dann den .protect über ActiveSheet auslöst?
    Grüße
     
    d'r Bastler, 9. März 2023
    #5
  6. Craysee Neuer User
    Hallo,

    ich habe nochmals getestet, ich bin nun soweit, dass er die Tabelle in der Originaldatei schützt, aber die Kopie, die versendet wird, nicht. (musste statt sheets die Variable "sh" nehmen) Erstellt er die Kopie nicht mit "sh.copy"? Danach erfolgt "activate.workbook", welches dann aber wohl nicht die Kopie aktiv setzt, sondern das Original? Hatte danach dann eingesetzt "Tabelle1.Activate". Da aber anscheinend das falsche Workbook aktiv war, hat das nicht geklappt.

    Sorry, mein VBA ist im Anfängerstatus, ich suche, kopiere, versuche zu verstehen und baue dann zusammen.

    Ich werde mal versuchen, die Datei abzuspecken und hochzuladen, das klappt aber heute wahrscheinlich nicht mehr.

    Danke und Gruß
    Cray
     
    Craysee, 9. März 2023
    #6
  7. HKindler
    HKindler Erfahrener User
    Hi,

    die Kopie des Blatts heißt doch so wie das Original. Daher musst du statt
    Code:
    Sheets("Tabelle1").Protect "Passwort"
    Code:
    Sheets("DeinBlattName").Protect "Passwort"
    verwenden.
    Da dein erzeugtes Workbook sowieso nur ein Blatt hat, reicht auch
    Code:
    Sheets(1).Protect "Passwort"
     
    HKindler, 9. März 2023
    #7
Thema:

[VBA] temporäre Kopie Blattschutz aktivieren

Die Seite wird geladen...
  1. [VBA] temporäre Kopie Blattschutz aktivieren - Similar Threads - VBA temporäre Kopie

  2. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  3. Listbox wird nicht breiter, Schriftgrösse ändert sich

    in Microsoft Excel Hilfe
    Listbox wird nicht breiter, Schriftgrösse ändert sich: Hallo, ich habe ein Formular dessen Breite ich mit der Maus ändern kann. Im Formular habe ich einen Rahmen und darin eine Listbox deren Breite an die Formularbreite angepasst wird....
  4. Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch

    in Microsoft Excel Hilfe
    Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch: Hallo zusammen, erstmal danke für all die Tipps und Kniffe, die ich ohne eigenen Thread gefunden und gelernt habe. Leider finde ich mein Thema nirgendwo... Aktuell habe ich zwei Spalten mit...
  5. Per Hyperlink ausgeblendetes Blatt einblenden

    in Microsoft Excel Hilfe
    Per Hyperlink ausgeblendetes Blatt einblenden: Hola ins Forum, ich bräuchte mal wieder eure Hilfe. Ich habe ein Tabellenblatt das mir als Register dient und wo Hyperlinks eingefügt sind um auf das dazugehörige Blatt zu springen. Diese Blätter...
  6. Bilder über VBA Größe und DPI ändern für Webshop

    in Microsoft Excel Hilfe
    Bilder über VBA Größe und DPI ändern für Webshop: Hallo Excel Spezialisten, Ich habe mir eine recht aufwendige Tabelle gebastelt, aus der ich Daten für meinen Webshop generiere und in einer .csv bereitstelle. Es werden neue Preislisten...
  7. Temporäre Symbolleiste mit VBA erstellen

    in Microsoft Excel Hilfe
    Temporäre Symbolleiste mit VBA erstellen: Hallo, ich möchte gerne in Excel für eine bestimmte Arbeitsmappe eine Symbolleiste mit VBA erstellen, welche nur für diese Arbeitsmappe gelten soll. Sie soll in allen Tabellenblättern sichtbar...
  8. Temporäre Abfrage per VBA erstellen

    in Microsoft Access Hilfe
    Temporäre Abfrage per VBA erstellen: Hallo zusammen in einer größeren Datenbank werden die Daten auf Plausibilität geprüft. Die einzelnen Abteilungen bekommen dann Listen zur Überprüfung. Für jeden check habe ich eine Abfrage...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden