nomor urut otomatis

  1. 7 tahun lalu

    misi agan-agan aku mau tanya
    gimana caranya bikin nomor dokumen otomatis
    contoh terlampir

    Jika menggunakan formula, bisa menggunakan formula:

    =CONCATENATE(LEFT(B2;3);"/";RIGHT(ROMAN(YEAR(A2));4);"-";RIGHT(ROMAN(MONTH(A2));4);"/";TEXT(ROW()-ROW($C$1);"000"))

    atau cukup

    =LEFT(B2;3)&"/"&RIGHT(ROMAN(YEAR(A2));4)&"-"&RIGHT(ROMAN(MONTH(A2));4)&"/"&TEXT(ROW()-ROW($C$1);"000")

    Jika maunya menggunakan macro, tinggal dikonversikan saja formula tersebut di atas.

  2. Caton

    19 Jul 2017 Terverifikasi Jawaban Terpilih Indonesia + 20.101 Poin
    Di sunting 7 tahun lalu oleh Caton

    Jika menggunakan formula, bisa menggunakan formula:

    =CONCATENATE(LEFT(B2;3);"/";RIGHT(ROMAN(YEAR(A2));4);"-";RIGHT(ROMAN(MONTH(A2));4);"/";TEXT(ROW()-ROW($C$1);"000"))

    atau cukup

    =LEFT(B2;3)&"/"&RIGHT(ROMAN(YEAR(A2));4)&"-"&RIGHT(ROMAN(MONTH(A2));4)&"/"&TEXT(ROW()-ROW($C$1);"000")

    Jika maunya menggunakan macro, tinggal dikonversikan saja formula tersebut di atas.

  3. Caton

    19 Jul 2017 Terverifikasi Indonesia + 20.101 Poin

    Maaf, contoh kode VBA-nya telat... :) Silahkan dicoba file terlampir.

  4. mas @Caton makasih buat sample nya saya jadi bisa bedah lagi,
    cuma 1 yang aku bingung, kalau itu kan nomoratornya berdasarkan row
    nah kalo nomoratornya berdasakan kertas yang sudah di print gimana ya
    jadi ketika saya print nomor itu akan bertambah sendiri, mungkin contohnya seperti file barcode ini, Cell E1 itu akan bertambah seiring kita print

  5. Caton

    3 Agu 2017 Terverifikasi Indonesia + 20.101 Poin

    Mbak @Novi, dalam kasus ini, ada dua hal pokok. Pertama, bagaimana bentuk atau format dari nomor Invoice yang akan kita buat. Kedua, darimana kita mendapatkan variabel-variabel yang akan kita masukkan ke dalam format nomor Invoice tersebut.

    Untuk hal pertama, sudah didiskusikan sebelumnya di atas. Sedangkan hal kedua, agar mudah dipahami, kita ubah menjadi fungsi sebagai berikut (buat kode program berikut dalam objek Standard Module) :

    Public Function BuatNomorInvoice(Tanggal As Date, Pemasok As String, Nomor As Long) As String
        Dim sInvoice As String
        
        sInvoice = UCase$(Left$(Pemasok, 3))
        sInvoice = sInvoice & "/" & Right$(Application.Roman(Year(Tanggal)), 4)
        sInvoice = sInvoice & "-" & Right$(Application.Roman(Month(Tanggal)), 4)
        sInvoice = sInvoice & "/" & Format$(Nomor, "000")
        BuatNomorInvoice = sInvoice
    End Function

    Fungsi di atas merupakan fungsi inti untuk membuat nomor invoicenya. Terlihat, tidak ada numerator untuk membuat teks nomornya. Jika dibandingkan dengan kode program pada file sebelumnya, lRow hanyalah sebagai variabel yang saya gunakan gunakan untuk membuat teks nomor, dan pada dasarnya bisa berasal dari mana saja (contohnya, pada kode program di atas, variabel lRow saya ganti dengan variabel Nomor).

    Pertanyaannya, dari fungsi BuatNomorInvoice di atas, parameter Tanggal, Pemasok dan Nomor berasal darimana? Sebagai referensi, oleh karena fungsi BuatNomorInvoice tersebut sifatnya global (public), maka fungsi tersebut dapat dipanggil pada worksheet, misalnya pada sel E2 sheet Tes diisi formula:

    =BuatNomorInvoice(A2;B2;1)

    atau bisa juga parameternya diisi langsung:

    =BuatNomorInvoice(DATEVALUE("01/08/2017");"KIRANA, PT.";2)

    Dengan VBA, fungsi tersebut dapat dipanggil misalnya dengan kode berikut:

        Dim lValue As Long
    
        ...    
        Sheet1.Range("F1").Value = Sheet1.Range("F1").Value + 1
        lValue = CLng(Sheet1.Range("F1").Value)
        Sheet2.Range("F1").Value = BuatNomorInvoice(#1/8/2017#, "ABADI, CV.", lValue)
        ...

    Oleh karena saya tidak tahu darimana parameter Tanggal, Pemasok dan Nomor akan diambil, maka saya serahkan hal tersebut kepada mbak @Novi. Mungkin itu dulu yang bisa saya jelaskan. Jika ada kesulitan nanti bisa didiskusikan kembali... :)

 

atau Mendaftar untuk ikut berdiskusi!