ich verzweifel langsam an einer eigentlich total banalen Aufgabe... Es gibt eine Arbeitsmappe mit 3 Tabellen, in denen gelegentlich Einträge geändert werden. Das ganze ohne Formeln oder so, also ganz billig.
Da diese Datei von Leuten bearbeitet wird, denen kein manuelles Verschieben von Dateien usw. zuzumuten ist, wollte ich ein paar Zeilen VBA einsetzen, daß beim Speichern oder Schließen der Excel-Datei automatisch eine HTML-Datei mit den Inhalt der Tabellen erzeugt, damit die "publizierte" Version einfach via Webbrowser angezeigt werden kann.
Also habe ich unter "DieseArbeitsmappe" folgende Code-Zeilen hinterlegt:
Private Sub MakeHTML()
Dim DateiName As String, PfadName As String, TempStr As String, Counter As Integer
DateiName = "\\3HN25902\CTTIMCP\IM Special\Aufgabenübersicht.htm"
PfadName = "\\3HN25902\CTTIMCP\IM Special\Aufgabenübersicht-Dateien"
On Error Resume Next
Application.AlertBeforeOverwriting = False
Application.DisplayAlerts = False
Counter = 0
TempStr = Dir(DateiName, vbNormal)
If TempStr "" Then
Kill DateiName
End If
TempStr = Dir(PfadName, vbDirectory)
If TempStr "" Then
TempStr = Dir(PfadName + "\*.*", vbNormal)
While TempStr "" And Counter
Die Geschichte mit Counter dient nur zum Abfangen von Endlosschleifen, weil evtl. irgendein Dussel eine Datei gelockt hat. Im Normalfall läuft MakeHTML problemlos durch. Beende ich Excel, gibt es keinen Absturz. Wähle ich jedoch "Speichern" im Dateimenü, so kommt es zum Absturz, Excel beendet sich dann.
Das 2. Problem ist auch, daß der Befehl "ThisWorkbook.SaveAs ..." damit auch den "Lageort" der eigentlichen Excel-Datei verändert, d.h. alle gemachten Änderungen sind nicht mehr in der ursprünglichen XLS-Datei... auch nicht schön.
Wie kann ich diese Probleme umgehen? Mit "ObjectsPublish" kann ich immer nur ein Sheet zur Zeit abspeichern und bekomme auch nicht so eine tolle Reiter-Wahl unterhalb der dargestellten Browserfensters.
Jede Hilfe ist willkommen.
Danke & Gruß, Jürgen