Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Daten in passwortgeschützes Workbook einfügen

Betrifft: Daten in passwortgeschützes Workbook einfügen von: Andre
Geschrieben am: 13.10.2014 21:11:47

Guten Abend,

ich hoffe ihr könnt mir ein wenig helfen.Ich habe hier im Forum die Datei 69694.zip
an meine Bedürfnisse angepasst. (Dank an die Ersteller). Ich bin Dank eurer Hilfe mittlerweile gut vorwärts gekommen und die Tabelle an meine Bedürfnitte angepasst(Habe eigentlich keine VBA Kenntnisse)
Sinn ist es die Daten einer Userform in eine Externe Datei zu Übertragen, wobei jeder Datensatz in die nächste freie Zeile geschrieben wird. Das Prozedere geht durch öffnen/einfügen/Speichern/schließen der Datei
Um die "Empfängerdatei" zu schützen, würde ich diese gern durch "Speichern unter" mit einem Passwort versehen. So das diese Datei nur mittels Passwort "XYZ" geöffnet werden kann. (Also die gesamte Datei und nicht nur ein Tabellenblatt oder Zelle schützen).
Derzeit ist diese noch ungeschützt.

Wie oder was muss ich wo eingeben, um zu gewährleisten das die Empfängerdatei entsperrt und geöffnet/beschrieben/gespeichert/geschlossen und gesperrt wird.

Ich hab mal den Code angeführt wo ich glaube, das es eingebaut werden muß.
Sollte noch/oder etwas anders von Nöten sein bitte um Info. Vielen Dank. Hab versucht das zu ergooglen, aber es liest sich alles irgenwie anders und ich wüsste nicht wo ich das gelesene bei mir einfügen soll.

Private Sub Workbook_Open()
  Dim wb As Workbook
  Dim sFile As String, arrKunden, vAuswahl
  On Error GoTo Fehler
  Application.ScreenUpdating = False
  Application.StatusBar = "Kundenauswahl für Combobox wird geladen"
  'Dateiname  der Kundenliste - wird auch im Userform-Modul genutzt
  sFile_Kundenliste = "I:\VBAEngine\Code\2014\Nov\Kundenliste1.2.xls"      'anpassen !!!
  Set wb = Application.Workbooks.Open(Filename:=sFile_Kundenliste, ReadOnly:=True)
  With wb.Worksheets("Kundenliste")
    arrKunden = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp))
  End With
  wb.Close savechanges:=False
  Application.ScreenUpdating = True
  Application.StatusBar = False
Fehler:
  With Err
    Select Case .Number
      Case 0 'Alles OK
      
      Case Else
        Application.StatusBar = False
        Application.ScreenUpdating = False
        MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
    End Select
  End With
  Set wb = Nothing: arrKunden = Null
End Sub

  

Betrifft: AW: Daten in passwortgeschützes Workbook einfügen von: Andre
Geschrieben am: 14.10.2014 05:26:33

Sorry hab vergessen mich zu bedanken und zu verabschieden. War schon Spät und ein langer Tag

Also vielen Dank füreure Hilfe

André


  

Betrifft: AW: Daten in passwortgeschützes Workbook einfügen von: fcs
Geschrieben am: 14.10.2014 08:04:15

Hallo Andre,

in deinem geposteten Makro werden ja "nur" Daten eingelesen und die Datei ohne Speichern wieder geschlossen.

Das Makro zum Speichern der Userformdaten muss ein anderes sein.

Bei einer Datei die mit Kennwort zum Ändern gespeichert wurde hast du folgende Varianten zum Öffnen:

  'Datei wird nur zum Lesen schreibgeschützt geöffnet
  Set wb = Application.Workbooks.Open(Filename:=sFile_Kundenliste, ReadOnly:=True, _
      writeresPassword:="XYZ")
  'Datei wird zum Lesen und Schreiben zum Lesen geöffnet
  Set wb = Application.Workbooks.Open(Filename:=sFile_Kundenliste, ReadOnly:=False, _
      writeresPassword:="XYZ")

Beim Speichern der Datei brauchst du nichts besonderes zu beachten. Du muss einfach nur Speichern, wie im Handbetrieb auch.

Gruß
Franz


  

Betrifft: AW: Daten in passwortgeschützes Workbook einfügen von: Andre
Geschrieben am: 14.10.2014 15:10:56

Hallo Franz,

Danke für deine Hilfe. Ich werde mal die Datei hochladen. Vielleicht kannst Du mir helfen.
Ein gültiger Datensatz für die Arbeitszeiterfassung ist Ma Nummer 111, Code 1111, Sollschicht F.

Mein ansinnen ist es also die Empfängerdatei über Speicher unter -Extras -allgemeine Optionen Lese-/Schreibzugriff zu sperren. Bei der Übertragung soll der Schutz vorrübergehend für die Eintragung aufgehoben werden. Ein nicht befugter Mitarbeiter soll diese Datei nicht öffnen können.

https://www.herber.de/bbs/user/93165.zip

Vielleicht siehst du oder Ihr liebe Excelspezialisten an welcher stelle der Code hingehört.

Vielen Dank Andre


  

Betrifft: AW: Daten in passwortgeschützes Workbook einfügen von: fcs
Geschrieben am: 15.10.2014 12:45:21

Hallo Andre,

es gibt in dem VBA-Projekt der Datei 2 Stellen an den die Kundenliste kurzzeitig geöffnet wird.
- unter DieseArbeitsmappe
- Userform Kundeneingabe - CommandButton1_Click

Hier muss du für Workbooks.Open den Parameter WriteResPassword wie von mir bereits erläutert ergänzen.

    Set wb = Application.Workbooks.Open(Filename:=sFile_Kundenliste, _
       WriteResPassword:="myPassword")
Das kann doch nicht so schwer sein.
Vorher öffnest du deine Kundenliste manuell und speicherst sie via "Speichern unter" und den Passwordoptionen mit dem Kennwort, dass du im Code verwenden willst.

Gruß
Franz


  

Betrifft: AW: Daten in passwortgeschützes Workbook einfügen von: Andre
Geschrieben am: 19.10.2014 14:41:29

vielen Dank für eure Hilfe ;-)

Gruß André


 

Beiträge aus den Excel-Beispielen zum Thema "Daten in passwortgeschützes Workbook einfügen"