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

Fehler im Code?

Forumthread: Fehler im Code?

Fehler im Code?
15.10.2008 14:02:00
Urmila
Hallo,
folgenden Code habe ich erstellt, welcher dazu dienen soll, die Tabellenblätter 2 bis 5 abzupsiechern, taucht aber immer Fehler auf:
Kann einer mir sagen was ich da falsch mache?
Dim a As String
Dim b As Integer
For b = 2 To 5
a = MsgBox("Sollen alle HTML-Sites aktualisiert abgespeichert werden?", vbYesNo, "Achtung")
If a = vbNo Then
ActiveSheet.Range("a1").Select
Else
With Sheets(b)
Sheets(b).Select
ActiveWorkbook.PublishObjects.Add(xlSourceSheet, _
"C:Test\qm_" & Sheets(b) & ".htm", "", xlHtmlStatic, _
"QM-SQL_AllinOne_22669", "").Publish (True)
End With
End If
Next b
LG
Urmila
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler im Code?
15.10.2008 16:58:21
Erich
Hallo Urmila,
da stimmten einige Parameter beim Add nicht.
MsgBox lisgfert ein Integer zurück, keinen String, also
Dim a As Integer, b As Integer
Sheets(b).Select ist überflüssig.
Sheets(b) ist ein Worksheet-Objekt - du willst hier aber den Namen des Blattes, also Sheets(b).Name.
Probier mal

With Sheets(b)
ActiveWorkbook.PublishObjects.Add(xlSourceSheet, _
"C:Test\qm_" & .Name & ".htm", _
.Name, , xlHtmlStatic, _
"QM-SQL_AllinOne_22669", "").Publish True
End With

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Fehler im Code?
16.10.2008 08:23:00
Urmila
Hallo Erich,
habe nun deinen Code eingebette, sieht Komplett so aus:
Dim a As Integer, b As Integer
For b = 2 To 5
a = MsgBox("Sollen alle HTML-Sites aktualisiert abgespeichert werden?", vbYesNo, "Achtung")
If a = vbYes Then
With Sheets(b)
ActiveWorkbook.PublishObjects.Add(xlSourceSheet, _
"C:Test\QM_" & .Name & ".htm", .Name, , xlHtmlStatic, _
"QM-SQL_AllinOne_22669", "").Publish True
End With
Else
Sheets("set").Select
End If
Next b
ActiveSheet.Range("A1").Select
Sheets("set").Select
MsgBox ("Alle Tabellenblätter wurden abgespeichert")
Da kommt aber immer eine Fehlermeldung, Fehler 1004
Die Publish-Methode wurde fehlegeschlagen sowas....
Was stimmt da nicht?
LG Urmila
Anzeige
AW: Fehler im Code?
16.10.2008 09:04:11
Erich
Hallo Urmila,
nei mir läuft der Code - angepasst - fehlerfrei.
Zwei mögliche Fehlerquellen:
- Hast du das Schreibrecht für das Verzeichnis C:\Test ?
- Wie heißen deine Tabellenblätter? Enthalten die Blattnamen vielleicht Zeichen, die in Dateinamen unzulässig sind?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Fehler im Code?
16.10.2008 09:20:19
Urmila
Hi Erich,
weder noch, Pfad existiert, keine Sonderzeichen
Könntest du mal deine Mappe uploaden, kann sein dass dann geht, wäre echt nett von dir...
Lg
Urmila
AW: Fehler bei PublishObjects
16.10.2008 16:43:04
Erich
Hallo Urmila,
jetzt hab ich das mal - nicht angepasst - mit C:\Test versucht, und bekam: Fehler 1004.
Die Ursache ist recht banal:
Das Verzeichnis, in das du die htm-Dateien schreiben willst, heißt C:\Test - nicht C:Test -,
im Code fehlt umgekehrte Schrägstrich nach dem Doppelpunkt.
Ich denke, eine Beispielmappe ist jetzt nicht mehr nötig... ;-))
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort und: Schönes Wochenende!
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige