Exportieren Sie eine Python-Liste in Excel

Ich versuche, eine Liste zu exportieren, um über den Win32COM-Client zu extrahieren, den ich im Header importiert habe. Das Objekt, das ich erstellt habe, ist wie unten codiert, aber ich kann es nicht scheinen, es zu exportieren, um jeden Wert in seine eigene Zeile in der Kalkulationstabelle zu exportieren. Wenn ich einen guten Zeiger bekommen kann (; sonst gebe ich Python !!), würde ich es schätzen.

class XcelExport(): def excel(self): app = 'Excel' xl = win32.gencache.EnsureDispatch('%s.Application' % app) ss = xl.Workbooks.Open(r'C:\MyFile.xls') sh = ss.ActiveSheet xl.Visible = True sleep(.1) sh.Cells(1,1).Value = 'Export-to-%s : Items' % app sleep(.1) for i in EventTableRFT: sh.Range("A").Value = i sh.Cells(i+2,1).Value = "End of the List!" xprt = XcelExport() xprt.excel() 

2 Solutions collect form web for “Exportieren Sie eine Python-Liste in Excel”

Da schien deine Antwort / Kommentar zu sein, hier ist eine Antwort richtig:

Python Excel hat fast alles, was du jemals brauchen würdest. Wenn Sie etwas mehr integriert haben wollen, aber begrenzt scheint, gibt es IronSpread . XLRD und XLWT sind tolle Pakete, aber sie unterstützen keine * .xlsx Dateien. IronSpread ist nur Windows und unterstützt nur '07 und '10 Versionen von Excel. Jeder hat seine Vorbehalte. Am Ende können Sie beide verwenden (bearbeiten Sie als * .xlsx, dann speichern Sie an * .xls (ich hatte jemanden, der Geschwindigkeitsprobleme mit großen * .xls Dateien hatte, aber mein Skript schrieb 200mb von Text von diesem Ding in wie 1 Minute.)).

Oh, und ich würde definitiv lesen (skim) die Dokumentation für interessante Features wie das Erhalten der Zelltypen usw. von xlrd / xlwt. Es lohnt sich, wenn auch nur, weil es kurz ist und sparen Sie die Lernkurve des Experimentierens.

Super kurzes Beispiel von xlwt:

 import xlwt from tempfile import TemporaryFile book = xlwt.Workbook() sheet1 = book.add_sheet('sheet1') supersecretdata = [34,123,4,1234,12,34,12,41,234,123,4,123,1,45123,5,43,61,3,56] for i,e in enumerate(supersecretdata): sheet1.write(i,1,e) name = "random.xls" book.save(name) book.save(TemporaryFile()) 

Super kurzes Beispiel von xlrd:

 import xlrd from xlrd import open_workbook book = open_workbook('random.xls') sheet1 = book.sheet_by_index(0) data = [] for i in xrange(sheet1.nrows): data.append(sheet1.cell(i,1).value) 

Sie fehlen sowohl die Zellenzeilennummer im Bereich als auch die Zellenreihe nach jeder Iteration der Schleife.

 sh.Range("A1").Offset(0,x).Value = i 

Diese Änderung sollte funktionieren.

 class XcelExport(): def excel(self): app = 'Excel' xl = win32.gencache.EnsureDispatch('%s.Application' % app) ss = xl.Workbooks.Open(r'C:\MyFile.xls') sh = ss.ActiveSheet xl.Visible = True sleep(.1) sh.Cells(1,1).Value = 'Export-to-%s : Items' % app sleep(.1) x=0 for i in EventTableRFT: sh.Range("A1").Offset(0,x).Value = i #You need to increment the cell row x+=1 sh.Cells(i+2,1).Value = "End of the List!" xprt = XcelExport() xprt.excel() 
  • Wie kann ich drei Excels-Dateien xlsx mit Python verketten?
  • Python win32 COM schließt Excel-Arbeitsmappe
  • Wie kann man Python Xlsx-Dateien ändern, wenn Excel App geöffnet ist?
  • Wie erkennt man, wenn eine Zelle beim Lesen von Excel-Dateien mit der xlrd-Bibliothek leer ist?
  • Excel-Python-API
  • Win32com + Excel + Django + Apache = Problem
  • Wie passiere ich von Python zu VBA Sub
  • Rufen Sie ein Makro mit Parametern auf: Python win32com API
  • Leere Werte in Excel-Datei aus CSV (nicht nur Zeilen)
  • .xlsx und xls (neueste Versionen) bis pdf mit python
  • Zufällige Erzeugung von einzigartiger Kombination aus zwei Spalten
  • Python ist die beste Programmiersprache der Welt.