Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1480to1484
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Schutz entsperren

VBA Schutz entsperren
17.03.2016 12:27:21
Thomas
Hallo zusammen,
ich hab da mal ne Frage...
Ich möchte bei ca 400 Dokumenten ein Modul austauschen, da habe ich schon mal gemacht und hat damals super funktioniert, mit dem selben Code und der selben Excel Version geht es plötzlich nicht mehr :(
Hier erstmal ein Teil des Codes :
Option Explicit
Public ApplicationFileSearch As New FileSearch
Sub Testmakro()
Dim i As Integer
Dim intIndex As Integer
Dim obWorkbook As Workbook
Dim strPfad As String
strPfad = ActiveWorkbook.Path & "\"
With Application
.DisplayAlerts = False
'.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
.AskToUpdateLinks = False
.CalculateBeforeSave = False
End With
With ApplicationFileSearch
.NewSearch
.LookIn = "Dateipfad....." 'wird angepasst....
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
.Execute
For intIndex = 1 To .FoundFiles.Count
If .FoundFiles(intIndex)  ThisWorkbook.FullName Then
Set obWorkbook = Workbooks.Open(FileName:=.FoundFiles(intIndex))
'Versuch Nr.1
'                SendKeys "%{F11} %Xi{TAB 9}" & "Passwort" & "{ENTER}{TAB 6}{ENTER}" '%{F5}",  _
True
'Versuch Nr.2
'               SendKeys "%{F11}%xi" & "Passwort" & "{ENTER}{ENTER}", True
'Versuch Nr.3
'                SendKeys "%"
'                SendKeys "W"
'                SendKeys "V"
'                SendKeys "%Xi"
'                SendKeys "Passwort"
'                SendKeys "{ENTER 2}"
With obWorkbook.VBProject
.VBComponents.Remove .VBComponents("Modul1")
.VBComponents.Import strPfad & "Modul1.1.bas"
End With
End Sub

Ich bekomme immer einen Fehler, da das Passwort nicht entfernt wird.
Mal öffnet sich das "Recherchieren" Fenster ( als wenn man Alt+Klick im Office drücken würde )
Mal schreibt er das Passwort einfach in die Zelle.
Anscheinend will er das VBA Fenster nicht mehr öffnen, deshalb hab ich mit Versuch Nr 3 auch schon versucht die ALT+F11 kombi zu umgehen, klappt aber auch nicht.
Hat jemand Rat ?
Vielen dank

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Schutz entsperren
17.03.2016 18:28:17
Luschi
Hallo Thomas,
wenn "damals" bedeutet:
- Excel 2003 und
- WindowsXP
dann lief der o.g. Code sicher zu Deiner Zufriedenheit.
Inwzischen hat Microsoft aber (scharf) 'aufgerüstet' und
- Application.FileSearch gibt es seit Excel 2007 nicht mehr
- Vba.SendKeys wurde entschärft und seit
  Windows Vista können bestimmete vba-Tastenkombinationen so nicht mehr
  weitergeleitet werden (z.B: Alt+x)
- selbst wenn mit ein paar Tricks das entsperren des Vba-KW's gelingt, muß das Makro danach
  sofort beendet werden und erst
- mit den Start eines weiteren Makros der Vba-Code-Austausch vorgenommen werden
- ansonsten wird die Entsprerrung des KW's sofort zurückgenommen!
Gruß von Luschui
aus klein-Paris

Anzeige
AW: VBA Schutz entsperren
18.03.2016 07:53:18
Thomas
Moin Moin,
mit damals war "vor ca 3-4 Monaten" gemeint :) Sorry.
Also unter den selben Bedingungen wie jetzt auch, deshalb wundert mich das ja umso mehr :/
Filesearch funktioniert noch super, die Dokumente werden gefunden...
Selbst wenn ich nach "SendKeys Alt+F11" einen Break setze, sehe ich dass er bereit ist um das PW einzugeben, ohne Break macht es aber wieder nur Probleme, umso verwirrender für mich.

AW: VBA Schutz entsperren
18.03.2016 10:56:00
Luschi
Hallo Thomas,

Filesearch funktioniert noch super, die Dokumente werden gefunden...
Sorry, aber ab Excel 2007 gibt es Applicaton.FileSearch nicht mehr.
Du schreibst ja auch nicht, mit welchem Betriebssystem und mit welcher Excel-Version Du vor 3-4 Monaten gearbeitest hat.
Und eine kleine Google-Suche: vba Sendkeys Vista
zeigt Dir 1.000de Hilferufen zum Nichtfunktionieren von Vba-SendKeys-Befehlen, darunter auch:
- SendKeys "{Tab}"
Weil dieser Vba-Weg einfach nur Problebe bereitet, mache ich Folgendes:
- per C#-Programm tausche ich das Vba-Kennwort aus und rette die alte Signatur
- danach ist die Arbeitsmappe frei von 1 Vba-KW
- dann erfolgt die Vba-Manipulation
- zum Schluß wird die alte Vba-Signatur wieder gesetzt
- und dann fertig zum Jubeln.
Gruß von Luschi
aus klein-Paris
PS: Ich hatte ja schon geschrieben, sobald das Entsperren per Vba auf ein Hindernis stößt, wird die Aktion abgebrochen und das Vba-KW bleibt geschützt.
Wurde das Vba-KW erfolgreich entsperrt, darf keine weitere Aktion erfolgen:
- kein Speichern
- kein Zugriff auf das Vba-Projekt usw.
sonst war das Entsperren für die Katz und Alles bleibt geschützt.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige