Dapatkah Anda menggunakan rumus excel dengan python?

Sebagian besar dunia saat ini mengandalkan Excel untuk banyak proses. Kita semua tahu Excel digunakan untuk mengatur data, melakukan perhitungan, analisis keuangan, visualisasi, dll. Namun, terkadang ada kebutuhan untuk mengotomatiskan beberapa tugas berulang yang sulit dilakukan secara manual. Dan inilah Python untuk menyelamatkan kita dari tugas-tugas monoton dan membantu mengotomatisasi. Salah satu pustaka Python yang bermanfaat adalah Openpyxl yang akan kita pelajari di artikel ini

Openpyxl

Openpyxl adalah pustaka Python yang digunakan untuk membaca dari file Excel atau menulis ke file Excel. Ilmuwan data menggunakan Openpyxl untuk analisis data, penyalinan data, penggalian data, menggambar bagan, lembar gaya, menambahkan rumus, dan banyak lagi

Buku kerja. Spreadsheet direpresentasikan sebagai buku kerja di openpyxl. Buku kerja terdiri dari satu atau lebih lembar

Lembaran. Sheet adalah satu halaman yang terdiri dari sel-sel untuk mengatur data

Sel. Perpotongan antara baris dan kolom disebut sel. Biasanya diwakili oleh A1, B5, dll

Baris. Baris adalah garis horizontal yang diwakili oleh angka (1,2, dst. )

Kolom. Kolom adalah garis vertikal yang diwakili oleh huruf kapital (A, B, dst. )

Openpyxl dapat diinstal menggunakan perintah pip dan disarankan untuk menginstalnya di lingkungan virtual

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
_6

Buat buku kerja baru

Kita mulai dengan membuat spreadsheet baru, yang disebut workbook di Openpyxl. Kami mengimpor modul buku kerja dari Openpyxl dan menggunakan

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
7 yang membuat buku kerja baru

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from openpyxl
import Workbook
#creates a new workbook
wb = Workbook()
#Gets the first active worksheet
ws = wb.active
#creating new worksheets by using the create_sheet method

ws1 = wb.create_sheet("sheet1", 0) #inserts at first position
ws2 = wb.create_sheet("sheet2") #inserts at last position
ws3 = wb.create_sheet("sheet3", -1) #inserts at penultimate position

#Renaming the sheet
ws.title = "Example"

#save the workbook
wb.save(filename = "example.xlsx")

Membaca data dari buku kerja

Kami memuat file menggunakan

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
_8 yang menggunakan nama file sebagai argumen. File harus disimpan di direktori kerja yang sama

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")

Mendapatkan lembar dari buku kerja yang dimuat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#getting sheet names
wb.sheetnames
result = ['sheet1', 'Sheet', 'sheet3', 'sheet2']

#getting a particular sheet
sheet1 = wb["sheet2"]

#getting sheet title
sheet1.title
result = 'sheet2'

#Getting the active sheet
sheetactive = wb.active
result = 'sheet1'

Mengakses sel dan nilai sel

1
2
3
4
5
6
7
8
9
10
11
#get a cell from the sheet
sheet1["A1"] <
  Cell 'Sheet1'.A1 >

  #get the cell value
ws["A1"].value 'Segment'

#accessing cell using row and column and assigning a value
d = ws.cell(row = 4, column = 2, value = 10)
d.value
10
_

Iterasi melalui baris dan kolom

1
2
3
4
5
6
7
8
9
10
11
12
13
#looping through each row and column
for x in range(1, 5):
  for y in range(1, 5):
  print(x, y, ws.cell(row = x, column = y)
    .value)

#getting the highest row number
ws.max_row
701

#getting the highest column number
ws.max_column
19

Ada dua fungsi untuk iterasi melalui baris dan kolom

1
2
3
4
5
Iter_rows() => returns the rows
Iter_cols() => returns the columns {
  min_row = 4, max_row = 5, min_col = 2, max_col = 5
} => This can be used to set the boundaries
for any iteration.
_

Contoh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#iterating rows
for row in ws.iter_rows(min_row = 2, max_col = 3, max_row = 3):
  for cell in row:
  print(cell) <
  Cell 'Sheet1'.A2 >
  <
  Cell 'Sheet1'.B2 >
  <
  Cell 'Sheet1'.C2 >
  <
  Cell 'Sheet1'.A3 >
  <
  Cell 'Sheet1'.B3 >
  <
  Cell 'Sheet1'.C3 >

  #iterating columns
for col in ws.iter_cols(min_row = 2, max_col = 3, max_row = 3):
  for cell in col:
  print(cell) <
  Cell 'Sheet1'.A2 >
  <
  Cell 'Sheet1'.A3 >
  <
  Cell 'Sheet1'.B2 >
  <
  Cell 'Sheet1'.B3 >
  <
  Cell 'Sheet1'.C2 >
  <
  Cell 'Sheet1'.C3 >
_

Untuk mendapatkan semua baris lembar kerja kita menggunakan metode lembar kerja. baris dan untuk mendapatkan semua kolom lembar kerja kita menggunakan metode lembar kerja. kolom. Demikian pula, untuk mengulang hanya melalui nilai-nilai kita menggunakan lembar kerja metode. nilai-nilai

Contoh

1
2
3
for row in ws.values:
  for value in row:
  print(value)

Menulis ke buku kerja dapat dilakukan dengan banyak cara seperti menambahkan rumus, menambahkan bagan, gambar, memperbarui nilai sel, menyisipkan baris dan kolom, dll… Kami akan membahas masing-masing dengan sebuah contoh

Membuat dan menyimpan buku kerja baru

1
2
3
4
5
#creates a new workbook
wb = openpyxl.Workbook()

#saving the workbook
wb.save("new.xlsx")

Menambahkan dan menghapus lembar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#creating a new sheet
ws1 = wb.create_sheet(title = "sheet 2")

#creating a new sheet at index 0
ws2 = wb.create_sheet(index = 0, title = "sheet 0")

#checking the sheet names
wb.sheetnames['sheet 0', 'Sheet', 'sheet 2']

#deleting a sheet
del wb['sheet 0']

#checking sheetnames
wb.sheetnames['Sheet', 'sheet 2']

Menambahkan nilai sel

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
0

Menambahkan formula

Kami sering meminta rumus untuk disertakan dalam lembar data Excel kami. Kami dapat dengan mudah menambahkan rumus menggunakan modul Openpyxl seperti Anda menambahkan nilai ke sel
Sebagai contoh

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
_1

Program di atas akan menambahkan rumus (=SUM(A2. A8)) di sel A9. Hasilnya akan seperti di bawah ini

Dapatkah Anda menggunakan rumus excel dengan python?

Menggabungkan/memisahkan sel

Dua atau lebih sel dapat digabungkan ke area persegi panjang menggunakan metode merge_cells(), dan demikian pula, mereka dapat dipisahkan menggunakan metode unmerge_cells()

Sebagai contoh
Menggabungkan sel

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
_2

Menambahkan kode di atas ke contoh sebelumnya akan menggabungkan sel seperti di bawah ini

Dapatkah Anda menggunakan rumus excel dengan python?

Pisahkan sel

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
_3

Kode di atas akan memisahkan sel dari B2 ke C9

Menyisipkan gambar

Untuk menyisipkan gambar, kami mengimpor fungsi gambar dari modul openpyxl. menggambar. gambar. Kami kemudian memuat gambar kami dan menambahkannya ke sel seperti yang ditunjukkan pada contoh di bawah ini

Contoh

1
2
#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")
_4

Hasil

Dapatkah Anda menggunakan rumus excel dengan python?

Membuat bagan

Grafik sangat penting untuk menunjukkan visualisasi data. Kita dapat membuat grafik dari data Excel menggunakan modul grafik Openpyxl. Berbagai bentuk bagan seperti bagan garis, bagan batang, bagan garis 3D, dll. , dapat dibuat. Kita perlu membuat referensi yang berisi data yang akan digunakan untuk bagan, yang tidak lain adalah pilihan sel (baris dan kolom). Saya menggunakan data sampel untuk membuat diagram batang 3D pada contoh di bawah ini

Bisakah saya menjalankan rumus Excel dengan Python?

xlcalculator adalah pustaka Python yang membaca file MS Excel dan, sejauh fungsi yang didukung, dapat menerjemahkan fungsi Excel ke dalam kode Python dan selanjutnya mengevaluasi kode Python yang dihasilkan. Pada dasarnya melakukan perhitungan Excel tanpa perlu Excel

Bagaimana cara memasukkan rumus Excel ke dalam Python?

Rumus Excel umum dengan Python .
1 Membaca File. Kita dapat membaca file excel di library pandas menggunakan fungsi pandas read_excel. .
2 Pemeriksaan Data. .
Vlookup. .
2 Tabel Pivot. .
3 Fungsi String — menggabungkan, len, trim, kiri, tengah, kanan. .
4 Sumif. .
5 Countifs , Averageifs. .
6 Jumlah, Maks, Min, Rata-rata

Bisakah Anda mengontrol Excel dengan Python?

Pengembang Python telah menerapkan cara untuk membaca, menulis, dan memanipulasi dokumen Excel . Kursus Pemrograman Python yang dipandu instruktur adalah cara yang baik untuk mendapatkan pengalaman langsung dalam menggunakan excel dalam Python.

Bisakah panda membaca rumus Excel?

Kita dapat menggunakan fungsi read_excel() modul pandas untuk membaca data file excel menjadi objek DataFrame .