Cara menggunakan Rumus Excel ke Python
- Tempel rumus Excel atau Google Sheets, atau pilih satu dari Contoh.
- Pilih bahasa target. Halaman ini dimulai dengan Python, dan kamu bisa menggantinya kapan saja.
- Ganti nama referensi sel yang terdeteksi dengan nama variabel yang bermakna, misalnya
B2→price. - Pilih fungsi lengkap atau ekspresi saja, lalu salin atau unduh kodenya. Fungsi pembantu ditambahkan otomatis jika rumus membutuhkannya.
Memindahkan logika spreadsheet ke Python
Tim data sering membangun ulang model Excel dengan Python, misalnya untuk mengotomatisasi laporan bulanan, mengisi pipeline pandas, atau memindahkan perhitungan ke belakang API. Mengetik ulang rumus itu lambat dan berisiko, karena Python dan Excel berbeda dalam detail seperti pembulatan dan perbandingan teks. Konverter ini membaca rumus dengan aturan prioritas operator milik Excel, lalu menghasilkan kode Python yang setara dan mudah dibaca.
=SUMIFS(D2:D100, B2:B100, "North", C2:C100, ">=1000")
def calculate(d2_d100, b2_b100, c2_c100):
return sum_ifs(d2_d100, b2_b100, 'North', c2_c100, '>=1000')
Fungsi pembantu sum_ifs() (beserta fungsi matches_criteria() yang dipakainya) disertakan di atas fungsi utama, sehingga keluarannya bisa langsung dijalankan.
Pemetaan fungsi Excel ke Python
| Excel | Python |
|---|---|
IF(c, a, b) | a if c else b |
IFS / SWITCH | chained conditional expressions |
AND, OR, NOT | and, or, not |
= and <> | == and != |
a & b | str(a) + str(b) |
a ^ b | a ** b |
SUM(A2:A10) | sum(a2_a10) |
ROUND(x, 2) | excel_round() helper — not round() |
MOD(a, b) | a % b |
SUMIFS / COUNTIF… | sum_ifs(), count_if() helpers |
VLOOKUP / XLOOKUP | vlookup(), xlookup() helpers |
IFERROR(x, y) | if_error(lambda: x, y) |
LEFT / MID / LEN | slicing, len() |
TODAY() / NOW() | date.today(), datetime.now() |
Jebakan yang ditangani konverter
- Pembulatan banker.
round(2.5)di Python menghasilkan 2 danround(0.125, 2)menghasilkan 0.12, sedangkan Excel menghasilkan 3 dan 0.13. Keluarannya memakai fungsi pembantuexcel_round()yang berbasisDecimaldenganROUND_HALF_UP. - Penggabungan teks.
"Total: " + 5memunculkanTypeErrordi Python, jadi setiap operand non-teks pada&dibungkus denganstr(). - IF adalah ekspresi.
IFmenjadi ekspresi kondisional Python (a if c else b), dan IF bersarang tersambung dengan alami. - Pembagian bilangan bulat. Operator
/di Python 3 selalu menghasilkan float, sama seperti Excel. - Error.
IFERRORmenjadiif_error(lambda: …, fallback), yang menangkapZeroDivisionError,LookupErrordari pencarian, dan exception lainnya. - Tanggal.
DATE,TODAY, danYEARdipetakan ke moduldatetime. Excel menggeser tanggal yang tidak valid (bulan 13), sedangkan Python memunculkan error, dan konverter akan memberi peringatan.
Bekerja dengan pandas
Fungsi yang dihasilkan bekerja pada nilai tunggal dan list. Untuk menerapkan rumus per baris pada DataFrame, panggil dengan df.apply(lambda r: calculate(r.price, r.qty), axis=1). Untuk agregat seperti SUMIFS, masker boolean pandas (df.loc[(df.region == 'North') & (df.total >= 1000), 'amount'].sum()) lebih cepat untuk data besar.
Fungsi yang didukung: IF, IFS, SWITCH, AND, OR, NOT, XOR, IFERROR, IFNA, ISBLANK, ISNUMBER, ISTEXT, SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, COUNTBLANK, PRODUCT, MEDIAN, ROUND, ROUNDUP, ROUNDDOWN, INT, TRUNC, ABS, SIGN, MOD, POWER, SQRT, EXP, LN, LOG, LOG10, PI, CEILING, FLOOR, RAND, RANDBETWEEN, SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF, AVERAGEIFS, SUMPRODUCT, VLOOKUP, XLOOKUP, MATCH, INDEX, CONCAT, CONCATENATE, TEXTJOIN, LEFT, RIGHT, MID, LEN, UPPER, LOWER, PROPER, TRIM, SUBSTITUTE, REPLACE, FIND, SEARCH, REPT, VALUE, EXACT, TEXT (format angka), TODAY, NOW, DATE, YEAR, MONTH, DAY. Muat file spreadsheet itu sendiri dengan Excel to JSON dan json.load().
Juga dicari sebagai: excel ke python, konversi excel ke python, rumus excel pandas, rumus google sheets ke python, ubah rumus spreadsheet ke python, vlookup di python, convert excel formula python.
Tool yang cocok dipakai bersama Rumus Excel ke Python
- Konverter Rumus Excel ke JavaScript — Tempel rumus spreadsheet dan dapatkan JavaScript yang mudah dibaca: fungsi dengan parameter bernama, urutan operator yang benar, dan fungsi bantu kecil untuk hal-hal yang belum ada di JavaScript, seperti SUMIFS dan VLOOKUP.
- Rumus Excel ke SQL — Tempel rumus Excel dan dapatkan ekspresi SQL atau query SELECT yang setara: IF dan IFS jadi CASE WHEN, SUMIFS dan COUNTIFS jadi agregat bersyarat, serta fungsi string dan tanggal yang tepat untuk database kamu.
- Rumus Excel ke PHP — Tempel rumus spreadsheet dan dapatkan fungsi PHP 8: ternary dalam kurung, fungsi string mb_*, serta helper untuk lookup, penjumlahan bersyarat, dan MOD ala Excel.
- CSV ke JSON — Tempel CSV atau TSV dan dapatkan array JSON berisi objek.
Pertanyaan yang sering diajukan
Mengapa keluarannya memakai excel_round() dan bukan round()?
round(2.5) menghasilkan 2. Excel membulatkan angka tengah menjauhi nol. Fungsi pembantu ini meniru perilaku Excel secara persis.Apakah bisa dipakai dengan DataFrame pandas?
.tolist(), atau terapkan fungsi per baris dengan df.apply(…, axis=1).Bagaimana VLOOKUP diterjemahkan?
vlookup(value, table, column, approximate), dengan tabel berupa list baris. Pencocokan persis (FALSE) membandingkan teks tanpa membedakan huruf besar-kecil seperti Excel, dan nilai yang tidak ditemukan memunculkan LookupError, yang ditangkap oleh IFERROR.