from openpyxl import load_workbook
Ubah lokasi file dari /home/aan/basangdata_excel/python_menjumlahkan_baris/contoh_output_formula.xlsx menjadi lokasi yang sesuai, misal d:\latihan_excel_python\contoh_output_formula.xlsx
wb = load_workbook('/home/aan/basangdata_excel/python_menjumlahkan_baris/contoh_output_formula.xlsx', data_only = True)
Di tiap sheet, baca semua baris pada kolom B, jika menemukan kata Jumlah Periode Ini simpan nama sheet dan nomor baris ke dalam variable row_numbers
row_numbers = {}
for ws in wb.worksheets:
if 'Total' not in ws.title:
max_row_b = ws.max_row + 1
for row_b in range(2, max_row_b):
if ws['B' + str(row_b)].value == 'Jumlah Periode Ini':
row_numbers[ws.title] = row_b
Variable ws_total adalah worksheet Total
ws_total = wb['Total']
formula = '='
berdasarkan semua nama sheet dan baris dimana ditemukan teks Jumlah Periode Ini
for rn in row_numbers:
formula = formula + rn + '!H' + str(row_numbers[rn]) + '+'
di sheet Total sel B2 dengan teks seperti variable formula namun dikurangi 1 karakter terakhir (tanda +)
ws_total['B2'].value = formula[:-1]
Dengan nama contoh_output_formula_hasil.xlsx, silahkan ubah lokasi file agar sesuai
wb.save('/home/aan/basangdata_excel/python_menjumlahkan_baris/contoh_output_formula_hasil.xlsx')