Kurs di SpreadsheetPengembangan & Kustomisasi

Google Apps Script yang memuat kurs yang Anda butuhkan ke Google Spreadsheet dari sumber pilihan Anda

Biasanya selesai dalam 15 menitTermasuk revisiPemeriksaan kualitas
Paket
Perlindungan pembayaranSelengkapnya
  • Revisi dalam batas paket tidak dikenai biaya.
  • Jika Anda tidak merespons dalam 3 hari setelah penyerahan hasil, hasil kerja diterima secara otomatis.

Uang ditahan saat Anda membayar dan diteruskan hanya setelah Anda menerima hasil kerja.

Google Apps Script yang memuat kurs yang Anda butuhkan ke Google Spreadsheet dari sumber pilihan Anda

Contoh hasil

Contoh untuk paket Standar

Menggabungkan file penjualan bulanan 9 toko menjadi satu laporan Excel

Cara menjalankannya

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Folder: sales/2026-10, ditemukan 9 file
2026-11-02 09:14:03 INFO  shop-01.csv: 1.284 baris
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 baris
2026-11-02 09:14:04 WARN  shop-07.csv: 3 baris tanpa harga dilewati (baris 88, 412, 913)
2026-11-02 09:14:05 INFO  Selesai: 10.412 baris -> report-2026-10.xlsx (sheet "Penjualan" dan "Total")

Pengaturan, bukan kode

Nama kolom setiap toko disimpan di settings.ini, jadi toko baru atau kolom yang berganti nama cukup ditambahkan satu baris di sana:

[columns]
date = Tanggal, Tanggal penjualan, Hari
product = Produk, Barang, Nama
quantity = Qty, Jumlah, Pcs
price = Harga, Harga satuan

Sebagian kode

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Membaca file satu toko dan memberinya nama kolom laporan."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: tidak ada kolom untuk '{name}' (dicari: {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

File: arsip ZIP berisi merge_sales.py (310 baris), settings.ini, requirements.txt, dan README tentang cara memasang Python, menjalankan skrip, dan arti setiap pesan di log. Klien menjalankannya di komputernya sendiri.

Klien: jaringan kecil 9 toko alat tulis; setiap toko mengirim penjualan bulanannya sebagai file CSV atau Excel, dengan nama kolom yang sedikit berbeda. Tugas: satu skrip yang membaca setiap file di sebuah folder, menyeragamkan kolomnya, dan menulis satu laporan Excel berisi semua penjualan serta sheet total per toko.

Klien dan semua datanya fiktif.

Tentang layanan ini

Jika harga, faktur, atau laporan Anda bergantung pada kurs, mengetiknya setiap pagi mudah terlupa. Google Apps Script ini membaca kurs dari sumber publik pilihan Anda, seperti kurs yang diterbitkan bank sentral Anda atau layanan kurs tempat Anda mendapat kunci API sendiri, dan menuliskan mata uang yang Anda butuhkan ke Google Spreadsheet beserta tanggalnya. Mulai Standar, skrip menyimpan tab riwayat dengan satu baris per hari, sehingga rumus Anda bisa mencari kurs untuk tanggal mana pun; Premium menambahkan sumber kedua jika sumber pertama tidak merespons dan mengisi tanggal-tanggal lampau. Google Spreadsheet punya fungsi GOOGLEFINANCE sendiri untuk sebagian mata uang; skrip ini untuk saat Anda membutuhkan sumber tertentu atau riwayat yang tersimpan. Kursnya berasal dari sumber tersebut; kami tidak memberi saran keuangan.

Yang termasuk

  • Yang Anda dapatkanArsip ZIP berisi kode Apps Script dan README yang menunjukkan cara menambahkannya ke spreadsheet, memberi izin akses, dan mengaturnya agar berjalan setiap hari; kodenya juga ditampilkan di halaman pesanan.
  • Sumber AndaKurs resmi atau dari layanan pilihan Anda
  • Mata uang AndaHanya yang Anda butuhkan, terhadap mata uang dasar Anda
  • Riwayat bertanggalMulai Standar, satu baris per hari untuk pencarian
  • Kunci tidak ada di kodeJika sumbernya membutuhkan kunci, Anda sendiri yang memasukkannya
  • Kode yang mudah dibacaDengan komentar, mudah menambah mata uang nanti

Cara kerja

  1. 1
    SumberAnda menyebutkan mata uang dan sumber yang Anda percayai
  2. 2
    KodeKami menulis skrip sesuai dokumentasi sumber dan panduan pemasangannya
  3. 3
    CobaAnda menjalankannya di salinan spreadsheet dan membandingkannya dengan situs sumber
  4. 4
    RevisiAnda meminta revisi sesuai paket dan mengirim pesan error jika ada

Yang kami butuhkan dari Anda

Mata uang yang Anda butuhkan dan mata uang dasar Anda, sumber yang ingin dipakai (tautan ke halaman atau dokumentasi tempat kurs diterbitkan, atau biarkan kami menyarankan sumber publik untuk Anda pilih), seberapa sering Anda membutuhkan kurs dan pada jam berapa, serta di mana kurs ditempatkan di spreadsheet Anda. Jika Anda membutuhkan tanggal lampau (Premium), mulai dari tanggal berapa. Jika sumbernya meminta kunci API, buat di akun Anda; jangan pernah mengirimkannya kepada kami.

Kami akan menanyakan:

  • Mata uang apa saja yang Anda butuhkan?
  • Sumber mana yang dipakai?
  • Seberapa sering dan paling lambat kapan?
  • Apakah Anda membutuhkan tanggal lampau?

Bandingkan paket

PaketDasarKurs hari iniRp 272.000StandarKurs dengan riwayatRp 561.000PremiumAlat kursRp 1.139.000
Tenggat1 hari2 hari3 hari
Revisi123
Kodehingga 150 barishingga 400 barishingga 1.000 baris
File kode1hingga 3hingga 8
File pengaturanTidakYaYa
Pesan error yang jelas dan logTidakYaYa
Opsi menjalankan dan panduan menjalankannya terjadwalTidakTidakYa
Panduan instalasi dan menjalankan (README)YaYaYa
BahasaGoogle Apps ScriptGoogle Apps ScriptGoogle Apps Script
Pesan DasarPesan StandarPesan Premium

Perlindungan pembayaran

Anda membayar saat memesan, tetapi uangnya diteruskan hanya untuk hasil kerja yang diterima.

  • Harga pastiHarga paket tidak berubah setelah Anda membayar.
  • Uang ditahanSaat Anda membayar, jumlahnya hanya ditahan. Dana diteruskan ke Dleex setelah Anda menerima hasil kerja.
  • Diperiksa sebelum penyerahanSetiap hasil melewati pemeriksaan kualitas sebelum sampai kepada Anda, dan Anda dapat melihatnya di halaman pesanan sebelum menerimanya.
  • Revisi gratisMinta revisi sesuai brief Anda sebanyak yang diizinkan paket.
  • Diterima setelah 3 hariJika dalam 3 hari setelah penyerahan hasil Anda tidak menerima hasil kerja maupun meminta revisi, hasil kerja diterima secara otomatis. Jika Anda menulis di chat pesanan setelah penyerahan hasil, pesanan akan menunggu; setelah kami menjawab, kami dapat memulai ulang hitungan 3 hari dan akan memberitahukannya di chat.
  • Dikerjakan ulang atau pengembalian dana penuhJika hasilnya tidak sesuai brief Anda dan revisi tidak memperbaikinya, atau pengerjaan memakan waktu lebih dari dua kali tenggatnya, tulis di chat pesanan: kami akan mengerjakan ulang atau mengembalikan pembayaran secara penuh.
Cara kerjanya →

Tanya jawab

Apakah kursnya akurat?

Kursnya persis seperti yang diterbitkan sumber pilihan Anda. Kurs resmi biasanya ditetapkan sekali setiap hari kerja, dan skrip tidak bisa lebih mutakhir daripada sumbernya.

Bisakah diperbarui setiap menit untuk trading?

Skrip ini dibuat untuk kurs harian atau per jam untuk harga, faktur, dan laporan, bukan untuk trading. Kami tidak memberi saran keuangan.

Apa yang terjadi di akhir pekan dan hari libur?

Banyak sumber resmi tidak menerbitkan apa pun di hari-hari itu. Mulai Standar, Anda memilih apakah riwayat mengulang kurs terakhir atau membiarkan hari itu kosong.

Apakah Anda mendapat akses ke spreadsheet saya?

Tidak. Anda menambahkan skrip ke spreadsheet Anda sendiri dan memberi izin aksesnya sendiri. Kami tidak pernah masuk ke akun Google Anda.

Tidak menemukan jawabannya?

Paket