Wie öffnet man eine Arbeitsmappe mit einem Passwort, deaktivieren Ereignisse

Gewusst wie: öffnen Sie eine Arbeitsmappe mit einem Passwort, deaktivieren Ereignisse,
und dann ein Arbeitsblatt kopieren im hintergrund, die zweite Datei speichern.
Ich brauche in VBA, arbeiten in einer MS-Access-und Excel-Dateien

Habe ich dies getan, bis jetzt funktioniert.

Private Sub TestFunction()

'strPath = CurrentDb.Properties(0)
'strPath = Left(strPath, Len(strPath) - Len(Dir(strPath, vbNormal))) & "Temp\"
Dim CopyFrom As Object
Dim CopyTo As Object ''Early binding: Workbook
Dim CopyThis As Object
Dim xl As Object ''Early binding: New Excel.Application

Set xl = CreateObject("Excel.Application")
xl.Visible = True
Set CopyFrom = xl.Workbooks.Open("D:\A01.xls")
'CopyFrom.EnableEvents = False
Set CopyThis = CopyFrom.Sheets(1) ''Sheet number 1
Set CopyTo = xl.Workbooks.Open("D:\PM1.xls")
CopyThis.Copy After:=CopyTo.Sheets(CopyTo.Sheets.Count)
CopyFrom.Close
End Sub

Dieser öffnet die Excel, geben Sie mir den pass-Kopie der Platte zu der zweiten Datei.

Aber ich muss das Passwort weitergeben im hintergrund, löschen Sie die Tabelle und speichern Sie die zweite Datei, die alle im hintergrund.
Auch ich löschen müssen, um ein Blatt, ohne mich zu Fragen, wie :

CopyTo.Sheets("Sheet1").Delete

Danke

xl.Arbeitsmappen.Öffnen kann, das Passwort als parameter, sowie den Dateinamen
Set CopyFrom = xl.Arbeitsmappen.Open("D:\A01.xls", "admin") nicht funktioniert.
Die delete-Anweisung funktioniert nur, wenn der name der Platte ist tatsächlich "Tabelle1". Da Sie gerade beziehen sich auf das erste Blatt, sheets(1) Dies nur nebenbei.

InformationsquelleAutor Adrian | 2012-07-20

Schreibe einen Kommentar