Ich möchte alle Daten (alle Zeilen) einer bestimmten Spalte in Python mit openpyxl
Ich arbeite auf diese Weise;Iteration über Arbeitsblätter, Zeilen, Spalten
from openpyxl import load_workbook
workbook = load_workbook('----------/dataset.xlsx')
sheet = workbook.active
for i in sheet:
print(sheet.cell(row=i, column=2).value)
Aber es gibt
if row < 1 or column < 1: TypeError: unorderable types: tuple() < int()
Weil ich in row=i
bin iterieren. Wenn ich sheet.cell(row=4, column=2).value
verwende, wird der Wert der Zelle ausgegeben. Aber wie kann ich über alle Dokumente iterieren?
Edit 1
Auf einigen Untersuchungen wurde festgestellt, dass die Daten sein kann mit Blattname erhalten. Die Datei Sheet 1
existiert in der Datei .xlsx
, aber ihre Daten werden nicht gedruckt. Irgendein Problem in diesem Code?
workbook = load_workbook('---------------/dataset.xlsx')
print(workbook.get_sheet_names())
worksheet =workbook.get_sheet_by_name('Sheet1')
c=2
for i in worksheet:
d = worksheet.cell(row=c, column=2)
if(d.value is None):
return
else:
print(d.value)
c=c+1
Lesen Sie die Antwort von dieser Frage, um einen Hinweis zu erhalten, wie es funktioniert: http://stackoverflow.com/questions/42777213/how-doi-i-use-openpyxl-and- still-instandhaltung-oop-struktur – stovfl
@stovfl Es funktioniert nicht. – Humty
um über alle Zeilen zu iterieren, können Sie 'iter_rows' wie' sheet.iter_rows (row_offset = 1) ' –