Lompat ke konten utama
←

Otomasi Excel dengan Python

Pelajaran 8 dari 18

Menulis dan memformat

Huruf tebal, warna isi, lebar kolom, dan freeze panes

Setelah pelajaran ini kamu bisa menebalkan dan mewarnai baris judul, mengatur lebar kolom, dan membekukan baris judul serta kolom nama.

±13 menitDiperiksa 2 Okt 2026

Latihan di pelajaran ini butuh akun gratis. Progres, kode, dan catatanmu hanya tersimpan di browser ini. Masuk untuk menyimpannya

Materi

Gaya dipasang per sel. cell.font = Font(bold=True) menebalkan huruf, dan cell.fill = PatternFill("solid", fgColor="DDEBF7") memberi warna isi biru muda. Warna ditulis sebagai heksadesimal merah-hijau-biru; openpyxl menambahkan 00 di depannya, sehingga saat dibaca kembali fill.fgColor.rgb berisi "00DDEBF7". Kedua kelas diimpor dari openpyxl.styles. Untuk satu baris judul, ulangi setiap sel di ws[1].

Gaya sel tidak bisa diubah sebagian: ws["A1"].font.bold = True berhenti dengan AttributeError: Style objects are immutable and cannot be changed. Pasang objek Font yang baru ke selnya. Memasang gaya pada ws.column_dimensions hanya berlaku untuk sel yang dibuat kemudian di Excel, bukan untuk sel yang sudah berisi.

from openpyxl.styles import Font, PatternFill

for sel in ws[1]:
    sel.font = Font(bold=True)
    sel.fill = PatternFill("solid", fgColor="E2EFDA")
ws.column_dimensions["A"].width = 30
ws.freeze_panes = "A2"

Lebar kolom diatur lewat ws.column_dimensions["A"].width; lebar bawaannya 13. Freeze panes mengikuti aturan Excel: sel yang disebut adalah sel pertama yang ikut bergulir, sehingga baris di atasnya dan kolom di kirinya tetap terlihat. ws.freeze_panes = "A2" membekukan baris 1, "B2" membekukan baris 1 dan kolom A, dan None melepasnya.

Kapan dipakai: laporan yang dibaca orang lain di layar. Judul yang tetap terlihat saat menggulir dan kolom yang cukup lebar untuk nama lengkap menghemat pertanyaan "kolom ini apa?" setiap bulan.

Latihan

0/3 lulus

Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Latihan 3 dari 3

Kode ws["A1"].font.bold = True berhenti dengan AttributeError: Style objects are immutable and cannot be changed. Perbaikan yang sesuai dokumentasi openpyxl?

Pilih satu jawaban

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke

Tampilkan 2 lagi