Excels "SaveAs" über COM automatisch handeln

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
snakeseven
User
Beiträge: 408
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Hallo,
zwei Fragen zum Thema Excel + Python. Folgendes angepaßtes Script von
2bock http://www.python-forum.de/viewtopic.ph ... ight=excel ruft Excel auf, erzeugt eine Tabelle, schreibt was rein und speichert anschließend das Ganze ab. Die Tabelle soll ständig automatisch aktualisiert werden und da stört es, wenn Excel jedesmal beim ".SaveAs" fragt, ob es die alte Tabelle überschreiben soll. Nun kenne ich mich mit Excel und auch mit COM nicht so gut aus, das ich jetzt auf Anhieb wüßte, wie ich diese Frage aus Python heraus mit "ja" beantworten könnte ?
Auch stört es mich, daß die Tabelle von A-U geht. Mir würde A-E völlig reichen. Seven

Das Script:

Code: Alles auswählen

import win32com.client 
Report = win32com.client.Dispatch("Excel.Application")
Report.Visible = 1

workbook = Report.Workbooks.Add()
worksheet = workbook.Worksheets('Tabelle1')
worksheet.Name = 'Ausgang'

header = ["ID","Text","Name(n)","Musik ?","E-Mail"]
width = ['20','15','20','10','20']

for i in range(1,6):
    cell = worksheet.Cells(1,i)
    cell.ColumnWidth = width[i-1]
    cell.Font.Bold = 1
    cell.Font.Size = 12
    cell.Value = header[i-1]

workbook.SaveAs("G:/Automerge/Report.xls")
 
del(cell) 
del(worksheet) 
del(workbook) 
del(Report)
snakeseven
User
Beiträge: 408
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Hat sich erledigt. Geht mit 'SendKeys()': http://www.rutherfurd.net/python/sendkeys/#key-codes oder statt
workbook.SaveAs(), workbook.Save(). Seven
Antworten