Durch Makro erstellte Excel-Datei mit Kennwort speichern
#1
Hallo zusammen,

ich habe nachfolgendes Makro aufgezeichnet und möchte beim Speichern
der Datei automatisch ein Kennwort vergeben lassen.

Ich freue mich auf Unterstützung.

MfG
Gerhard



Code:
Sub Serienbrief_Jubiläum()
'
' Serienbrief_Jubiläum Makro
'

'
    Cells.Select
    Selection.Copy
    Workbooks.Add
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Rows("1:3").Select
    Application.CutCopyMode = False
    Selection.Delete Shift:=xlUp
    Columns("G:J").Select
    Selection.Delete Shift:=xlToLeft
    Cells.Select
    Cells.EntireColumn.AutoFit
    ActiveWorkbook.SaveAs Filename:= _
        "C:\MEGA\Dokumente\Serienbriefe\Excel-Tabellen\Vereinsjubiläum.xlsx", _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
    Range("K4").Select
End Sub
Top
#2
Moin Gerhard!
Warum suchst Du nicht einfach nach der Workbook.SaveAs-Methode, landest auf der offiziellen MS-Hilfeseite und schaust Dir die Parameter an?
https://docs.microsoft.com/de-de/office/...ook.saveas

Und bezüglich Deines Rekorder-Codes empfehle ich, dass Du Dir folgende Seite mal durchliest:
https://www.online-excel.de/excel/singsel_vba.php?f=78

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#3
Hallo Ralf,
ich bin hier und auch im Thema VBA Anfänger.
Gibt es eine Möglichkeit mein Makro so anzupassen, dass
die erstellte Datei automatisch mit einem Kennwort versehen wird ?

MfG
Gerhard
Top
#4
Hast Du Dir denn den ersten Link mal durchgelesen?
Dort gibt es die benannten Parameter Password:= und WriteResPassword:=

Der Rekorder hat Dir doch bereits Filename:= und FileFormat:= aufgezeichnet.
Was hindert Dich daran, mal meinen Tipp auszuprobieren?
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#5
Hallo Ralf,

Ok vielen Dank, werde ich ausprobieren.

MfG
Gerhard

Hallo Ralf,
ich habe mir die Links angesehen, gelesen und ausprobiert.
Leider komme ich hier nicht weiter, weil ich mich nicht auskenne.
Ich bin Vorstandsmitglied in einem Verein und benötige den entsprechenden
Code für unsere Mitgliederdatei.




MfG
Gerhard
Top
#6
Ich habe Dir den Code mal komplett überarbeitet.
Außerdem habe ich ein Schreibschutzkennwort RPP63 gesetzt:
PHP-Code:
Sub SB_RPP()
ActiveSheet.Copy
With ActiveSheet
.UsedRange
  
.Copy
  
.PasteSpecial xlPasteValues
End With
Range
("1:3").Delete
Range
("G:J").Delete
Cells
.EntireColumn.AutoFit
ActiveWorkbook
.SaveAs "C:\MEGA\Dokumente\Serienbriefe\Excel-Tabellen\Vereinsjubiläum"xlOpenXMLWorkbook, , "RPP63"
ActiveWindow.Close
End Sub 

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#7
Hallo Ralf,

vielen, vielen Dank funktioniert perfekt !!!
Hätte ich so niemals hinbekommen, möchte aber trozdem lernen und ausprobieren.

MfG
Gerhard
Top
#8
Gern geschehen, Gerhard!
Wenn Du lernen willst, solltest Du häufiger die mittlerweile sehr gute Online-VBA-Hilfe in Anspruch nehmen.


Und gegen Rückfragen hat hier niemand etwas, auch wenn das (bei mir) manchmal so rüberkommt.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#9
Hallo Ralf,

habe jetzt doch noch etwas festgestellt beim Ausprobieren:

Beim Öffnen der erstellten Datei erfolgt die Passwortabfrage. Wenn ich diese Abfrage mit "Enter" bestätige wird
die Datei ohne Eingabe eines Passwortes geöffnet.

MfG
Gerhard
Top
#10
Ja klar!
Es ist ja auch "nur" ein Schreibschutzkennwort.
Wenn das Kennwort nicht eingegeben wird kann man nur lesen, aber nichts geändert speichern!

Wenn Du nicht willst dass jemand die Datei öffnet, ohne das Kennwort zu kennen, dann brauchst Du ein Arbeitsmappenkennwort!
Dazu brauchst Du nur ein Komma vor "RPP63" entfernen:
PHP-Code:
ActiveWorkbook.SaveAs "C:\MEGA\Dokumente\Serienbriefe\Excel-Tabellen\Vereinsjubiläum"xlOpenXMLWorkbook"RPP63" 
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste