Ich arbeite an einer Anwendung, die dem Benutzer das dynamische Hinzufügen und Entfernen von Elementen aus einer Excel-Datei ermöglicht. Die Anzahl der Artikel ist unbegrenzt.Elemente aus einer Datei dynamisch zu einer ComboBox hinzufügen
Ich bin auf der Suche nach einer Möglichkeit, die Elemente aus der Excel-Datei zu greifen und sie auf die ComboBox zu übertragen.
Um mich klarer zu machen: Das Problem besteht nicht darin, Zellen durchzulaufen, sondern Zellenwerte in die ComboBox zu bekommen. Ich brauche eine Methode, die den Inhalt aller Zellen mit Werten in einer bestimmten Spalte erfasst, wobei das Ende des Bereichs unbekannt ist, und dann die Werte in eine ComboBox übertragen.
Die Combobox akzeptiert nur Werte, keine leeren Zellen. Ich will auch keine Felder in der ComboBox, die "Kein Wert" sagen.
Ich habe versucht, durch Zellen und Bereich Methoden Itering, aber das bringt nicht die Werte in die ComboBox.
Was ich habe, so weit ist:
wb = load_workbook (source_file)
ws = wb.active
self.value_1 = ws['B2'].value
self.value_2 = ws['B3'].value
self.value_3 = ws['B4'].value
self.value_4 = ws['B5'].value
self.value_5 = ws['B6'].value
self.value_6 = ws['B7'].value
self.value_7 = ws['B8'].value
self.value_8 = ws['B9'].value
self.value_9 = ws['B10'].value
self.value_10 = ws['B11'].value
stock_items = [ self.value_1 , self.value_2 , self.value_3 , self.value_4 , self.value_5 ,
self.value_6 , self.value_7 , self.value_8 , self.value_9 , self.value_10 ]
self.combo_items_list = [ ]
for stock_item in stock_items :
if stock_item != None :
self.combo_items_list.append (stock_item)
self.combo.addItems(self.combo_items_list)
Dies funktioniert wie erwartet, aber was mich stört ist, dass ich für jedes Element eine Codezeile hinzuzufügen habe ich aus der Excel-Datei packen, außer mit zu Fügen Sie einen zusätzlichen Eintrag in die Liste "stock_items" ein. Wenn in der Datei 5.000 Elemente vorhanden wären, würden 5.000 Zeilen Code und 5000 Einträge in der Liste angezeigt.
Gibt es eine effizientere und elegantere Art, das Problem mit "Counter" oder Pandas zu lösen?
Vielen Dank im Voraus.
danke, aber nicht funktioniert .... Keine Methode UsedRange ou Ähnliches in openpyx – rainer
wahrscheinlich hat dies von der Excel-Website .. Ich bin mir nicht sicher, wie es funktioniert .. – rainer