TkinterのウィジェットにExcelから読み込んだデータを表示させたい

python3.9

1 def save_data(self): 2 filename1 = filedialog.asksaveasfilename(title = "名前を付けて保存", filetypes =[("xlsxファイル", "*.xlsx")]) 3 print(filename1) 4 5 if not ".xlsx" in filename1: 6 self.get_val_all(filename1) 7 self.wb.save(filename1+".xlsx") 8 self.wb.close() 9 10 elif ".xlsx" in filename1: 11 self.get_val_all(filename1) 12 self.wb.save(filename1) 13 self.wb.close() 14 else: 15 pass 16 17 18 def import_excel(self): 19 20 filename = filedialog.askopenfilename(title = "データ選択", filetypes =[("xlsxファイル", "*.xlsx")]) 21 print(filename) 22 23 imp_wb = px.load_workbook(filename,data_only=True) 24 ws = imp_wb["一時保存"] 25 pile_values = [ws["C2"].value,ws["E2"].value,ws["G2"].value] 26 27 for i,j in enumerate(self.pile_entrys,0): 28 j.insert(0,pile_values[i]) 29 30 main_bar_values = [ws["C3"].value,ws["F3"].value] 31 self.main_bar_entry1.insert(0,main_bar_values[0]) 32 self.main_bar_entry2.set(main_bar_values[1]) 33 34 hoop_bar_values = [] 35 for rows in ws.iter_rows(min_row=17, min_col=3, max_row=17, max_col=10): 36 for cell in rows: 37 hoop_bar_values.append(cell.value) 38 for i,j in zip(range(len(hoop_bar_values)),range(0,7,1)): 39 self.hoop_bar_entrys[j].insert(0,hoop_bar_values[i]) 40 41 self.hoop_bar_entry2.set(hoop_bar_values[-1]) 42 43 entry_boxs6 = [] 44 for rows in ws.iter_rows(min_row=32, min_col=3, max_row=32, max_col=8): 45 for cell in rows: 46 entry_boxs6.append(cell.value) 47 for i,j in zip(range(0,3,1),range(0,3,1)): 48 self.basket_entrys1[j].insert(0,entry_boxs6[i]) 49 self.basket_entrys1[2].set(entry_boxs6[2]) 50 for i,j in zip(range(3,6),range(4,7)): 51 self.basket_entrys1[j].insert(0,entry_boxs6[i]) 52 53 values=[] 54 sliced_values1=list() 55 56 for rows in ws.iter_rows(min_row=5, min_col=2, max_row=14, max_col=8): 57 for cell in rows: 58 values.append(cell.value) 59 60 for v in range(0,len(values),7): 61 sliced_values1.append(values[v:v+7]) 62 remove_01 = [x for x in sliced_values1 if x[1] != 0] 63 64 for i in range(len(remove_01)): 65 self.tree1.insert(parent='', index='end', iid=i ,values=remove_01[i]) 66 67 values2=[] 68 sliced_values2=list() 69 for rows in ws.iter_rows(min_row=20, min_col=2, max_row=24, max_col=7): 70 for cell in rows: 71 values2.append(cell.value) 72 73 for v in range(0,len(values2),6): 74 sliced_values2.append(values2[v:v+6]) 75 remove_02 = [x for x in sliced_values2 if x[1] != 0] 76 77 for j in range(len(remove_02)): 78 self.tree2.insert(parent='', index='end', iid=j ,values=remove_02[j]) 79

コメントを投稿

0 コメント