Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

wie altes Passwort auf Datenbank ändern

Forumthread: wie altes Passwort auf Datenbank ändern

wie altes Passwort auf Datenbank ändern
23.08.2025 18:41:28
wolfgang
Hallo zusammen,
ich habe alte Rechnungen, die mit einem Tabellen und VbA Projekt Passwort versehen sind.
Ich habe dazu eine Datenbank die mit einem Tabellen Passwort und die neuen Rechnungen gleich gestellt
bzw. verändert habe.
Wenn ich nun eine alte Rechnung öffne und die geänderten Daten wieder neu in die Datenbank speichern möchte,
bleibt mein Makro für die Übertragung natürlich am alten Passwort hängen, z. b. hier: "wksZ.Unprotect tk" stehen.
Meine Datenbank hat natürlich das neue Passwort , das gleich wie die neuen Rechnungen.
Mitarbeiter kennen natürlich nicht das neue Passwort und es sollte auch nicht zugänglich sein.
Gibt es eine Lösung für mein Problem ?
gruß wolfgang
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: wie altes Passwort auf Datenbank ändern
23.08.2025 20:30:31
daniel
Hi

Wenn du eine geschützte Datei mit Makro bearbeiten willst, dann musst du das Passwort haben. Makros dürfen nur das tun, was Anwender auch können.

Eine Anleitung zum Knacken der Passwörter wirst du hier vermutlich nicht erhalten.
Da musst du dich selber auf die Suche in den Tiefen des WWW machen.
In den älteren Excelversionen war das noch Recht simpel, ich meine aber, dass MS das geändert hat, bin mir aber nicht sicher.

Gruß Daniel
Anzeige
Ich weiss meine Passwörter ! Will hier nichts kräcken
23.08.2025 20:51:53
wolfgang
Hallo Daniel,
vielleicht hast Du meine Frage nicht Richtig gelesen, ich habe nur ein Problem bei einer alten Datei,
natürlich kann ich das Passwort und des VBA-Makros sagen. Das ist nicht das Problem, das Problem ist
von der alten Rechnung Daten in die aktuelle Datenbank zu kopieren.
Sag mir wie es geht, dann nehme ich meine Passwörter.

mfg
wolfgang
Anzeige
AW: Ich weiss meine Passwörter ! Will hier nichts kräcken
23.08.2025 21:56:06
daniel
Wenn du das Passwort hast, dann kannst du es einfach beim Unprotect-Befehl als Parameter mit angeben.

wksZ.Unprotect "Passwort"

Oder
wksZ.Unprotect Password:="Passwort"


Zur genauen Parametrisierung kannst du auch Mal in der Hilfe nachlesen.

Wenn du in dieser Zeile einen Fehler bekommst:
wksZ.Unprotect tk


Dann ist tk die falsche Variable oder du hast sie mit dem falschen Wert befüllt.
Da du müsstest dort nachschauen wo tk seinen Wert erhält.
Wenn du alles richtig gemacht hast und den Fehler trotzdem bekommst, dann kennst du das Passwort nicht.

Gruß Daniel.

Anzeige
AW: Ich weiss meine Passwörter ! Will hier nichts kräcken
23.08.2025 22:46:14
Wolfgang
Guten Abend Daniel,
wenn eine Mitarbeiterin ein ALTE Datei öffnet, weiß sie nicht was sie machen soll und
sie soll nicht das aktuelle Passwort erfahren.
Gedanklich hab ich gedacht, beim öffnen der Datenbank kann diese die alte
geöffnete Datei prüfen, wenn das hinterlegte Passwort der alten Datei nicht mit dem
aktuellen neuen Passwort stimmt, irgendwie prüfen etc. anpassen.

Gruß Wolfgang
Anzeige
AW: Ich weiss meine Passwörter ! Will hier nichts kräcken
23.08.2025 23:49:14
Daniel
das ist schlecht.
was in diesem Fall passieren soll, müsstest du schon wissen, und zwar möglichst genau. (Computer sind doof, die brauchen exakte Anweisungen, damit sie funktionieren, wenn die Beschreibung "irgendwie" enthält, dann ist das für die Programmerstellung ungünstig, weil in der Regel auch die Programmierer dahingehend "doof" sind, dass sie von deiner Aufgabenstellung keine Ahnung haben und nur das wissen, was du ihnen sagst)

also wie gesagt: ist das alte Passwort bekannt und hinterlegt, wenn ja wo und wie kann man es dort abgreifen?

ansonsten, wenn du die alte Datei nur lesen willst, musst du sie dann überhaupt entsperren?
das Lesen sollte auch bei einer geschützten Seite funktionieren und dann kannst du ggf die Werte dann einfach in ein neues Blatt übernehmen und dann dieses mit bekanntem neuen Passwort speichern.

Gruß Daniel
Anzeige
Nicht lesen sondern ändern…
24.08.2025 00:46:59
Wolfgang
Guten Abend Daniel,
wenn die alte Rechnung geöffnet wurde / musste, da geht es evtl. um Adressenänderungen etc. .
Dann sollen die geänderten Daten der alten Rechnung wieder in die Datenbank gespeichert werden.
Es wurde die aktuelle Datenbank automatisch geöffnet und wie im Makro beschrieben
soll die geänderte alte Rechnung neu abgespeichert werden.
Da aber in der alten Rechnung wie im Makro enthalten das alte Passwort „tt“ steht, entspricht es nicht
dem neuen Passwort in der aktuellen Datenbank.
Ich glaube die Beschreibung war etwas genauer ?
Gruß wolfgang

Anzeige
AW: Nicht lesen sondern ändern…
24.08.2025 01:45:18
Daniel
ähm nein, es ist mir noch nicht klarer.
Wenn das alte Passwort "tt" ist, dann müsste doch das Makro funktionieren?
wenn du jetzt nicht weißt, ob das alte oder das neue Passwort gültig ist, kannst du auch beide ausprobieren:

On Error Resume Next

wksz.Unprotect "altes Passwort"
wksz.Unprotect "neues Passwort"
On error Goto 0

if wksZ.ProtectContents = True then
Msgbox "Datei konnte weder mit alten noch mit neuen Passwort geöffnet werden"
Exit sub
End if
Anzeige
AW: wie altes Passwort auf Datenbank ändern
23.08.2025 20:35:53
AlterDresdner
Hallo Wolfgang;
ein möglicher Weg wäre:
Bei Entsperren mit Unprotect den Fehler abfangen und im Fehlerfall das Blatt mit dem alten Passwort entsperren, Das Protect wird ja dann eh mit dem neuen Passwort durchgeführt...
Gruß derALteDresdner
Entsperren mit Unprotect den Fehler abfangen
23.08.2025 21:12:17
wolfgang
Guten Abend alte Dresdner,
vielleicht hast Du ein Beispiel.
Ich sende mal mein Makro, welches überall gleich aber in der neuen Rechnung
verändert und in der Datenbank ebenso hinterlegt ist.
Ich hatte vorhin mal gesucht und dies gefunden:
Public Const STANDARD_PASSWORT As String = "war"   

Public Function GetPasswort() As String
On Error Resume Next
GetPasswort = ThisWorkbook.Names("AktuellesPasswort").RefersToRange.Value
If Err.Number > 0 Or GetPasswort = "" Then
GetPasswort = STANDARD_PASSWORT
End If
On Error GoTo 0
End Function

Aber nichts verstanden.

Das ist mein Kopier-Makro:
Public Sub In_Rechnungs_Datenbank_kopieren()


Dim wksQ As Worksheet 'Quell-Worksheet
Dim wksZ As Worksheet 'Ziel-Worksheet
Dim wkbZ As Workbook, wkbQ As Workbook
Dim rngZIEL As Range
'Dim strSUCH As String
Const cstr_wkbQ = "Rg_Datenbank.xlsm"
Const cstr_wksQ = "Adressen"
Const pw = "tt"
Dim ze As Long, RDat As Date, RNr As String, lboOK As Boolean
Set wkbQ = ThisWorkbook
Set wksQ = ActiveSheet
Application.ScreenUpdating = False
On Error Resume Next
Set wkbZ = Workbooks(cstr_wkbQ)
On Error GoTo 0
If wkbZ Is Nothing Then
Set wkbZ = Workbooks.Open("D:\" & cstr_wkbQ)
End If
Set wksZ = wkbZ.Worksheets(cstr_wksQ)
With wksQ 'ActiveSheet
RDat = .Range("H29").value
RNr = .Range("H24").value ' & " - " & Format(.Range("J23").value, "0000")
End With

wkbZ.Activate
With Sheets("Adressen") ' wkbZ.("Adressen")
For ze = 3 To .Cells(.Rows.Count, 14).End(xlUp).Row ' 9 ist Datum gleich i
' If .Range("N" & ze).value = RDat Then
If InStr(.Range("O" & ze).value, RNr) > 0 Then ' J = Rechnungsnummer nach Ablauf
lboOK = True
Exit For
'End If
End If
Next ze

If lboOK Then
MsgBox "Vorhandener Datensatz wurde aktualisiert !"
Else
MsgBox "Datensatz wurde hinzugefügt !"
End If
wksZ.Unprotect "tt" ' bleibt immer hier stehen, da natürlich neues Passwort für die neue Datenbank benötigt wird
wksQ.Range("O11:O24").Copy 'Datensatz
.Cells(ze, 1).PasteSpecial Paste:=xlPasteValues, Transpose:=True
'----- hier Rechnungs-Korrektur in Zelle LAND -----
If wksQ.Range("P34") = "_Rg.-Korrektur - " Then
.Cells(ze, 12) = "_Rg.-Korrektur - "
Else
wksQ.Range("O22").Copy 'sonst kopiere Land
.Cells(ze, 12).PasteSpecial Paste:=xlPasteValues
End If
'---------------------------------------------------
wksQ.Range("E371").Copy ' Rechnungsbetrag Netto
.Cells(ze, 13).PasteSpecial Paste:=xlPasteValues
wksQ.Range("H29").Copy 'DATUM
.Cells(ze, 14).PasteSpecial Paste:=xlPasteValues
wksQ.Range("H24").Copy 'Rg Nr.
.Cells(ze, 15) = RNr
wksQ.Range("P31").Copy 'FIRMA
.Cells(ze, 16).PasteSpecial Paste:=xlPasteValues
wksQ.Range("e23").Copy 'USER
.Cells(ze, 17).PasteSpecial Paste:=xlPasteValues
wksQ.Range("i1").Copy 'eRechnung
.Cells(ze, 18).PasteSpecial Paste:=xlPasteValues
wksZ.Protect DrawingObjects:=True, Password:="tt"
Application.CutCopyMode = False
wkbQ.Activate 'Datei
wksQ.Activate 'Sheet
Range("O12").Select
End With
Application.ScreenUpdating = True
Application.DisplayAlerts = False
wkbZ.Close SaveChanges:=True
End Sub


ich hoffe Du hast mein Problem verstanden für dein Beispiel,
danke im Voraus
gruß wolfgang
Anzeige
AW: Entsperren mit Unprotect den Fehler abfangen
23.08.2025 23:02:23
Daniel
wksZ.Unprotect "tt"                                    '  bleibt immer hier stehen, da natürlich neues Passwort für die neue Datenbank benötigt wird


hier ist das Passwort immer der Text "tt"

wenn die Seite ein anderes Passwort hat, als "tt", dann bekommst du den Fehler.
Wenn "tt" nicht das Passwort dieser Seite ist, dann musst du erstmal die Frage klären wo dieses Passwort stet und dann dieses Passwort hier einsetzen.


und nur so also Tipp: Wenn du im Internet Sachen findest, die du nicht verstehts, dann lass die Finger davon.
Verwende Netzfunde nur dann, wenn du weißt was sie machen und wie sie funktionieren (es ist nicht erforderlich, dass du jetzt ab sofort selber schreiben könntest, aber du musst verstehen, wie es arbeitet).
Ansonsten lass die Finger davon und kopiere nicht wild irgendwelche Codes zusammen, in der Hoffnung dass es funktionieren wird, das tut es nämlich meistens nicht.
Es ist auch nicht zu erwarten, dass irgendjemand haargenau dein Problem hatte und einen für dich passenden Code erstellt hat, den du ohne Änderung übernehmen kannst. Anpassungen sind meistens erforderlich und man sollte den Code soweit kennen, dass man diese Änderungen auch durchführen kann.
Ich kenne die Forenteilnehmer auch eher so, dass sie bereitwillig dir helfen, bei dem was du programmierst. Aber wenn wir dann Dinge zurechtbiegen sollen, die gar nicht du selbst erstellt hast, dann sinkt zumindest bei mir die Hilfsbereitschaft, weil ich der Meinung bin, denn du Probleme mit Code von dritten hast, dann solltest du auch diesen dritten um Hilfe bitten, oder jemanden, den du für seinen Aufwand, den er für dich betreibt, auch entsprechend bezahlst.

Gruß Daniel
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18