Arbeitsblätter ersetzen/austauschen
29.08.2007 09:43:00
Lexboro
folgendes Problem stellt sich mir unter Access:
Es existieren zwei Excel-Dateien.
In Datei D:\Formel.xls liegen die Formeln zur Berechnung.
Tabelle1 umbenannt in "F0",
Tabelle2 umbenannt in "F1" und
Tabelle3 umbenannt in "F2".
Die Formeln aus F1 und F2 nehmen Bezug auf die Werte in F0.
Datei D:\Werte.xls enthält die Werte zur Berechnung für Datei Formel.xls.
Tabelle1 umbenannt in "Daten".
Beide Dateien werden in die mdb geladen und als neue Datei D:\ERGEBNIS.xls ausgegeben. Der Code funktioniert zwar aber der Teufel steckt im Detail....
Dim objExcel As Object
Set objExcel = CreateObject("Excel.Application")
With objExcel
.DisplayAlerts = False
.Workbooks.Add Template:=1
.Workbooks(1).Sheets.Add Type:="D:\Formel.xls"
.Workbooks(1).Sheets.Add Type:="D:\Werte.xls"
.Workbooks(1).Sheets(.Workbooks(1).Sheets.Count).Delete
.Workbooks(1).Sheets("F0").Delete
.Workbooks(1).SaveAs "D:\ERGEBNIS.xls"
.DisplayAlerts = True
.Workbooks.Close
End With
Set objExcel = Nothing
Dadurch, dass Blatt F0 von "Formel.xls" gelöscht wird, gehen aber sämtliche Bezüge von F1 und F2 ins Leere. Deswegen muss der neue Lösungsansatz lauten:
Blatt "F0" von Datei D:\Formel.xls gegen Blatt "Daten" von D:\Werte.xls austauschen bzw überschreiben.
Hat da bitte jemand eine super Idee oder auch einen guten Link, wie das mit dem Austausch / Überschreiben zu bewerkstelligen ist ?
Viele Grüße