Wie bekomme ich den Wert derzeit in einer verbundene Zelle
Möchte ich, um den Wert einer zusammengeführten Zelle im Bereich von D3 H3 mit openpyxl Bibliothek.
Gemäß meinem Verständnis die meisten Bibliotheken Lesen von Daten von der 1. Zelle selbst. So werden die zusammengeführten Inhalte in es aber ich bekomme keine Wert, wenn ich es lese.
Folgendes ist mein code:
wb = load_workbook(work_directory_path+'/outputs/report_vap.xlsx')
ws = wb.get_sheet_by_name("Summary")
suite_path = ws.cell('D3').value
if not isinstance(suite_path, unicode):
value=unicode(suite_path)
value=value.encode('utf8')
print "Suite Location is "+value;
Die Ausgabe ist :
Suite Lage ist Keine
Den Wert in Zelle D3, H3 :
c:\users\xyz\desktop\abc\c++\events\comevents
Ich habe sogar versucht den Druck aller Werte in der Platte, aber außer für integer-Werte werden alle Werte zurückgegeben Keiner.
Folgenden ist der geänderte code:
wb = load_workbook(work_directory_path+'/outputs/report_vap.xlsx')
ws = wb.get_sheet_by_name("Summary")
for row_index in range (ws.get_highest_row()):
for col_index in range (ws.get_highest_column()):
print ws.cell(row=row_index, column=col_index).value
suite_path = ws.cell('A11').value
print suite_path
if not isinstance(suite_path, unicode):
value=unicode(suite_path)
value=value.encode('utf8')
print "Suite Location is "+value;
Ausgabe:
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keine
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keine
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
1
1
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
9
1106
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
10
1107
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Keiner
Suite Lage ist Keines
Suite Lage ist Keines
12
Die Excel-Datei hat folgenden Inhalt
Projekt - /Modul-ID Projekt/Modul zu Bauen Analysis Language Compiler Source File Source File
1_1 HTMLEdit.vcxproj Erfolg C++ Microsoft Visual Studio 2010 ( version 10.0 ) 1 1
1_2 HTMLEdit.vcxproj Erfolg C++ Microsoft Visual Studio 2010 ( version 10.0 ) 9 1106
Insgesamt 10 1107
- Ohne Zugriff auf die original-Dateien ist es schwierig, viel zu sagen, aber es kann ein problem sein, wenn hyperlinks werden überall eingesetzt. openpyxl entfernt alle Zellen aus einer zusammengeführten anderen Bereich als die Zelle oben Links.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sobald die einzige Antwort, die falsch ist (es ist nicht mehr cells_from_range Funktion in openpyxl) ich schlage vor, auf alternative Weise. Ich habe versucht und es funktionierte für meinen Fall:
Input sheet und Zelle. Aber wenn Sie brauchen, es kann leicht geändert werden, um zu akzeptieren, string-Zelle Darstellung, wie 'A3'.
Hier ist eine Annäherung an die Funktion, die ich für diese:
Nur wirklich heikel dort etwas ist, wo ich extrahieren Sie die Liste der Zellen innerhalb der Reichweite zu suchen gegen. Das gibt einen generator, so warf ich es in eine Liste (weil
in
funktioniert nicht auf Generatoren, offenbar), das ergibt ein Tupel mit einem einzigen element in der Liste, die ich extrahieren mit dem 0-index.Für meine Zwecke ist das schnell genug-ich benutze es, durch Durchlaufen die Zellen die ich testen möchte. Wenn Sie wollte, um diese leistungsfähiger, könnte es sich lohnen, kehrt die Schleife, die die Iteration der Seriendruck reicht, wie Ihre äußere Schleife, so dass Sie nur zu tun haben, dass die Umstellung einmal.
if idx in sheet.merged_cells
als schnelle überprüfung, ob eine Zelle übertragen wurde oder nicht. Diese verwendet Generatoren für Flexibilität.Sollte es tun, für aktuelle openpyxl version (2.6.3)