Immer wenn ich diesen Code verwenden,ASP Excel.Application objExcel.Range ("range") Einfrieren
Set oExcel = CreateObject("Excel.Application")
Set oWorkbook = oExcel.Workbooks.Open(sPathToTemplate)
oExcel.Range("shipping_name").Value = strShippingName
oWorkbook.Close()
Set oWorkbook = Nothing
Set oExcel = Nothing
Der Excel-Prozess auf dem Server ist das Einfrieren, und die Zellen werden nie verändert. Oder zumindest scheint es so zu sein.
Die Arbeitsmappe öffnet sich einwandfrei, und wenn ich nicht versuche, Zelleninhalte zu ändern, wird der Code ohne Fehler abgeschlossen. Aber wenn ich die Änderung wieder hinzufüge und die Seite aktualisiere, wird der EXCEL.exe-Prozess im Task-Manager angezeigt und das Skript reagiert nicht mehr. Ich muss den Prozess manuell beenden, damit es ausläuft.
Alles was ich tun kann, damit der Code funktioniert?
Gleiche geschieht anrufen, wenn ich oExcel.Range verwenden („shipping_name“) – Dexter
Ich bin überrascht, dass Sie nicht bekommen, ein Parse-Fehler wegen der Klammern in Ihrer Subroutine Aufruf 'oWorkbook.Close()' –
Ich denke, oWorkbook.Close() gibt True oder etwas zurück, so dass möglicherweise warum. Ich weiß, dass oExcel.Open (file) die Arbeitsmappe zurückgibt, also frage ich mich, was .Close() zurückgibt. Was auch immer, ist die Klammerfunktion nicht nur ein Problem zwischen Funktionen und Unterroutinen und nicht Methoden? – Dexter