Help,, Invoice yang ada rumus masuk ke record data

  1. ‹ Older
  2. 6 tahun lalu

    @Aribowo Yth Para master dan para suhu Excel,mohon advis invoice yang ada formula masuk ke record data dengan nilai 0,bagaimana supaya tidak ikut masuk ke record data tsb y..sama bagaimana cara load record data ke invoice tsb dengan kunci no.invoice,harus pakai form invoice yang ada si sheet nota atau buat 1 lagi yg sama y?Terimakasih

    Filex..

  3. Adakah yang bisa bantu..?

  4. Mungkin sedang diusahakan mas bro... sabar aja... ;)
    Sayangnya saya nubi... jadi kurang bisa bantu... maaf :D

  5. Caton

    16 Jan 2018 Terverifikasi Indonesia + 20.101 Poin

    @Aribowo ...

    ...invoice yang ada formula masuk ke record data dengan nilai 0,bagaimana supaya tidak ikut masuk ke record data tsb y...

    Maksudnya hasil yang masuk ke sheet Invoice Data yang ada kelebihan baris (dari contoh file yang mas lampirkan, seharusnya hanya ada 3 baris saja, namun yang terjadi malah 7 baris dengan nilai 4 baris terakhir Jumlah Harga = 0) ya? Saya asumsikan saja demikian.

    [1]. Kita bahas sedikit script yang mas gunakan.

    Set rng_dest = Sheets("Invoice data").Range("F:ak")

    Jumlah kolom dari Range("F:AK") adalah 32 kolom. Sedangkan jumlah kolom dari script:

    Set rng = Sheets("nota").Range("C14:AE20")

    adalah 29 kolom. Ketika script berikut:

    rng_dest.Rows(i).Value = rng.Rows(a).Value

    dieksekusi, maka akan ada 3 kolom yang kosong (Empty), sehingga akan menampilkan nilai #N/A. Untuk masalah ini, perbaiki Range("F:AK") menjadi:

    Set rng_dest = Sheets("Invoice data").Range("G:AI")

    [2]. Kemudian untuk masalah munculnya baris-baris lain yang tidak ada Kode Parts-nya (baris kosong), terjadi karena script berikut:

    If WorksheetFunction.CountA(rng.Rows(a)) <> 0 Then

    tidak hanya menghitung nilai pada satu sel saja (misalnya sel C14), namun juga menghitung apakah ada nilai pada kolom-kolom lainnya pada variabel rng. Ini dikarenakan range pada variabel tersebut mencakup kolom C sampai dengan AE sesuai script:

    Set rng = Sheets("nota").Range("C14:AE20")

    sehingga jika variabel a = 1, maka notasi rng.Rows(a) sama saja dengan merujuk ke range C14:AE14. Notasi CountA(rng.Rows(a)) <> 0 akan terus bernilai TRUE dikarenakan kolom AE berisi formula, yang oleh fungsi COUNTA tetap dihitung sebagai 1 sel berisi. Dengan demikian, meskipun range C17:C20 kosong, namun karena range AE17:AE20 berisi formula, fungsi COUNTA akan menghasilkan nilai 1 (yang tentunya <> 0). Solusinya, modifikasi notasi CountA(rng.Rows(a)) <> 0 menjadi:

    If WorksheetFunction.CountA(rng.Cells(a, 1)) <> 0 Then

    Demikian... ;)

  6. Caton

    16 Jan 2018 Terverifikasi Indonesia + 20.101 Poin

    @Aribowo ...

    ...sama bagaimana cara load record data ke invoice tsb dengan kunci no.invoice,harus pakai form invoice yang ada si sheet nota atau buat 1 lagi yg sama y?...

    Terlampir, ada 2 file. Konsep dan alur proses kedua file tersebut hampir serupa, hanya saja untuk file yang pertama menggunakan range biasa, sedangkan yang kedua menggunakan Table Object. Solusi untuk masalah pertama di atas (nilai baris 0) dapat juga dilihat pada file pertama. Sedangkan file yang kedua juga untuk menjawab pertanyaan pada diskusi Search Data Dengan 3 Criteria.

    Silahkan dipelajari dan dimodifikasi. Demikian... ;)

  7. @Caton @Aribowo ...
    Dear Master @Caton mantapp..telah bersusah susah meluangkan waktunya..terimakasih ya..tapi u OS sm Office 64 bit ada error he..codenya diganti apa y mas?maklum sy masih cupu nih...

    Terlampir, ada 2 file. Konsep dan alur proses kedua file tersebut hampir serupa, hanya saja untuk file yang pertama menggunakan range biasa, sedangkan yang kedua menggunakan Table Object. Solusi untuk masalah pertama di atas (nilai baris 0) dapat juga dilihat pada file pertama. Sedangkan file yang kedua juga untuk menjawab pertanyaan pada diskusi Search Data Dengan 3 Criteria.

    Silahkan dipelajari dan dimodifikasi. Demikian... ;)

  8. Caton

    16 Jan 2018 Terverifikasi Indonesia + 20.101 Poin
    Di sunting 6 tahun lalu oleh Caton

    Masih ada masalah yang ingin didiskusikan mas @Aribowo ...? Yang mana ada errornya? File Tes - Search n Invoice.xlsm? Terlampir updatenya...

  9. @Caton Masih ada masalah yang ingin didiskusikan mas @Aribowo ...? Yang mana ada errornya? File Tes - Search n Invoice.xlsm? Terlampir updatenya...

    Masih muncul debug di mesin 64 bit:
    Private Sub UserForm_Initialize()
    With lstResult
    .ColumnCount = 5
    .ColumnWidths = "100, 160, 55, 95, 40"
    End With

    m_lhWnd = FindWindow("ThunderDFrame", Me.Caption)

    End Sub

    Kalu di 32 bit sudah ok..hanya yg add
    Selected item blm ada codex y master?bs PM ke saya codex?

  10. Caton

    16 Jan 2018 Terverifikasi Indonesia + 20.101 Poin

    Hmm... deklarasi variabelnya ada yang kurang. Dicoba kembali revisi file terlampir... ;)

    ... Selected item blm ada codex y master ...

    Untuk tombol Add Selected Item ... memang tidak saya buat scriptnya agar mas @Aribowo bisa mencobanya sendiri. Coba dipelajari script pada file yang sudah saya lampirkan di atas, tepatnya pada proses memuat data dari sheet Invoice Data ke sheet Nota. Konsepnya hampir sama... ;)

  11. @Caton Hmm... deklarasi variabelnya ada yang kurang. Dicoba kembali revisi file terlampir... ;)

    Untuk tombol Add Selected Item ... memang tidak saya buat scriptnya agar mas @Aribowo bisa mencobanya sendiri. Coba dipelajari script pada file yang sudah saya lampirkan di atas, tepatnya pada proses memuat data dari sheet Invoice Data ke sheetk Nota. Konsepnya hampir sama... ;)

    Ok sudah siip master @Caton ,btw script untuk cari perlu ditambah apa y,supaya kita tidak perlu ketik lengkap lengkap key wordnya di code,model dan descnya

  12. Caton

    16 Jan 2018 Terverifikasi Jawaban Terpilih Indonesia + 20.101 Poin

    ... script untuk cari perlu ditambah apa y,supaya kita tidak perlu ketik lengkap lengkap key wordnya di code,model dan descnya...

    Maksudnya bagaimana? Bukankah pada form yang saya buat tersebut, bisa digunakan untuk mencari berdasarkan Kode saja, Model saja, Deskripsi saja, Kode + Model saja, Kode + Deskripsi saja, Model + Deskripsi saja atau hanya Deskripsi saja. Pilihannya pencarian juga bisa menggunakan Wildcard atau Non Wildcard. Untuk pencarian, tidak harus benar-benar lengkap teks yang dicari....

    Search-Form.gif

    Demikian...

  13. Di sunting 6 tahun lalu oleh Vei-Rid

    @Caton
    keren ini, bagi filenya bang :D

  14. Caton

    16 Jan 2018 Terverifikasi Indonesia + 20.101 Poin

    Silahkan mas bro... :) Jika bisa, dikembangkan kembali, dan hasilnya dibagi di forum ini kembali... ;)

  15. @Caton Maksudnya bagaimana? Bukankah pada form yang saya buat tersebut, bisa digunakan untuk mencari berdasarkan Kode saja, Model saja, Deskripsi saja, Kode + Model saja, Kode + Deskripsi saja, Model + Deskripsi saja atau hanya Deskripsi saja. Pilihannya pencarian juga bisa menggunakan Wildcard atau Non Wildcard. Untuk pencarian, tidak harus benar-benar lengkap teks yang dicari....

    [attachment:5a5e06f5cdfbc]

    Demikian...

    @Caton Maksudnya bagaimana? Bukankah pada form yang saya buat tersebut, bisa digunakan untuk mencari berdasarkan Kode saja, Model saja, Deskripsi saja, Kode + Model saja, Kode + Deskripsi saja, Model + Deskripsi saja atau hanya Deskripsi saja. Pilihannya pencarian juga bisa menggunakan Wildcard atau Non Wildcard. Untuk pencarian, tidak harus benar-benar lengkap teks yang dicari....

    [attachment:5a5e06f5cdfbc]

    Demikian...

    Ok master..setelah lihat demo jadi ngerti saya..thanks a lot..y.nanti sy pelajari cara masukkan data di script vbanya,u buat yg add selected to invoice..kalu kesulitan bs tanya lagi y master..maklum masih cupu saya..bisax copas s j.he..he..

  16. Assalamualaikum
    saya rizky. ingin bertanya mengenai soal excel
    yang saya ingin tanya kan bagaimana menggabungkan berbagai fungsi DATEDIF
    berikut saya lampirkan screenshot contoh excelny
    Kolom | Start date | End date | Interval Bulan

    kondisi pertama jika jangka kerja waktu ditulis dengan lengkap yaitu tanggal,bulan,tahun maka akan dihitung secara penuh

    kondisi kedua jika jangka waktu ditulis dengan bulan dan tahun ny saja tanpa tanggal maka pengalaman kerja yang dihitung adalah total interval bulanya dikurangi 1

    kondisi ketiga jika jangka waktu kerja ditulis tahunnya saja tanpa tanggal dan bulan
    maka pengalaman kerja yang dihitung hanya 25% dari total bulanny
    rumus yg sudah gunakan seperti ini hehe
    =IF(ISBLANK(B15);TEXT(B15;"mmm-yy");DATEDIF(B15;C15;"m")-1);IF(ISBLANK(B15);TEXT(B15;"dd-mmm-yy");DATEDIF(B15;C15;"m"))
    mohon dibantu ya ...

  17. Caton

    17 Jan 2018 Terverifikasi Indonesia + 20.101 Poin

    @Aribowo ... Sama-sama mas. Silahkan dicoba menyusun scriptnya sendiri, pelajari dahulu dari script-script yang sudah ada. Jika kesulitan, baru didiskusikan kembali... ;)

  18. @Caton @Aribowo ... Sama-sama mas. Silahkan dicoba menyusun scriptnya sendiri, pelajari dahulu dari script-script yang sudah ada. Jika kesulitan, baru didiskusikan kembali... ;)

    Dear mas @Caton sudah saaya coba pelajari malah bingung saya, scriptnya tingkat tinggi gak ada petunjuk bahasa manusianya.. hh..bisa minta buatkan script yang add selected to inv mas, please y..thanks alot

  19. @Caton nnya pencarian juga bisa menggunakan Wil

    Mohon izin download filenya mas.
    Ohiya, jika ingin menambahkan data yang tampil pada listbox gimana mas? Karena saya lihat data yang tampil pada listbox dari sheet4 . Ketika saya menambahkan tabel pada sheet4 dan mengubah kode

    ....
        With lstResult
            .ColumnCount = 6
            .ColumnWidths = "100, 160, 55, 95, 40, 30"
        End With
    ....

    Namun, hasilnya tetap sama atau tidak ada perubahan mas .
    Gimana solusinya ?

  20. Caton

    30 Agu 2018 Terverifikasi Indonesia + 20.101 Poin
    Di sunting 6 tahun lalu oleh Caton

    @Evan D. Nugraha ... Mohon izin download filenya mas ...

    Silahkan mas Evan ... :)

    @Evan D. Nugraha ... jika ingin menambahkan data yang tampil pada listbox gimana ...

    Ada beberapa cara untuk menambahkan data ke dalam kontrol Listbox. Antara lain dengan:

    [1]. Menggunakan prosedur AddItem dari kontrol ListBox. Contoh script:

    With ListBox1
        .AddItem "Data Ke-1"
        .AddItem "Data Ke-2"
        .AddItem "Sekarang ini menjadi data Ke-1", 0
        .AddItem "Dan ini menjadi data Ke-3", 2
    End With

    Script di atas biasanya digunakan untuk menambahkan item pada Single Column ListBox, atau pada kolom pertama untuk Multiple Column ListBox. Pada Multiple Column ListBox, apabila ListBox sudah terisi data, maka item data dapat diakses dengan menggunakan property List dari kontrol ListBox. Contoh script:

    With ListBox1
        .ColumnCount = 3
        .ColumnWidths = "50, 90, 130"
        
        .AddItem "Data Ke-1"
        .AddItem "Data Ke-2"
        .AddItem "Data Ke-3"
        
        .List(0, 1) = "Contoh isi ke-1"
        .List(1, 1) = "Contoh isi ke-2"
        .List(2, 1) = "Contoh isi ke-3"
    
        .List(0, 2) = "Tambahan isi ke-1"
        .List(1, 2) = "Tambahan isi ke-2"
        .List(2, 2) = "Tambahan isi ke-3"
    End With

    [2]. Menggunakan properti List dari kontrol ListBox. Contoh script:

    Dim xArray()
    
    ReDim xArray(2, 1)
    
    xArray(0, 0) = 1
    xArray(0, 1) = "Ini Satu"
    xArray(1, 0) = 2
    xArray(1, 1) = "Ini Dua"
    xArray(2, 0) = 3
    xArray(2, 1) = "Ini Tiga"
    
    With ListBox1
        .ColumnCount = 2
        .ColumnWidths = "30, 90"
        .List = xArray
    End With

    [3]. Menggunakan properti RowSource dari kontrol ListBox. Contoh script:

    With ListBox1
        .ColumnCount = 3
        .ColumnWidths = "30, 90, 120"
    
        .RowSource = Sheet2.Range("A2:D7").Address
    End With

    @Evan D. Nugraha ... Ketika saya menambahkan tabel pada sheet4 dan mengubah kode ... Namun, hasilnya tetap sama atau tidak ada perubahan mas. Gimana solusinya ...

    Maaf mas Evan, saya tidak tahu bagaimana tabel data yang dimaksud. Kalau hanya menggunakan script seperti yang mas gunakan:

    With lstResult
        .ColumnCount = 6
        .ColumnWidths = "100, 160, 55, 95, 40, 30"
    End With

    jelas tidak akan menampilkan apapun karena pada script tersebut tidak ada perintah untuk mengisi data ke dalam kontrol ListBox. Script tersebut hanya akan mengatur tampilan dari kontrol ListBox. Coba gunakan dan kembangkan contoh script yang saya berikan di atas:

    With ListBox1
        .ColumnCount = 3
        .ColumnWidths = "30, 90, 120"
    
        .RowSource = Sheet2.Range("A2:D7").Address
    End With

    jika sumber data akan diambil dari range tertentu pada Worksheet.

    Sangat saya sarankan, lebih baik mas Evan membuat diskusi baru jika pertanyaan yang ingin disampaikan tidak berkaitan dengan topik dari diskusi yang sudah ada, meskipun hal yang ditanyakan berawal dari diskusi yang sudah ada.

    Demikian.

  21. @Caton Silahkan mas Evan ... :)

    Ada beberapa cara untuk menambahkan data ke dalam kontrol Listbox. Antara lain dengan:

    [1]. Menggunakan prosedur AddItem dari kontrol ListBox. Contoh script:

    With ListBox1
        .AddItem "Data Ke-1"
        .AddItem "Data Ke-2"
        .AddItem "Sekarang ini menjadi data Ke-1", 0
        .AddItem "Dan ini menjadi data Ke-3", 2
    End With

    Script di atas biasanya digunakan untuk menambahkan item pada Single Column ListBox, atau pada kolom pertama untuk Multiple Column ListBox. Pada Multiple Column ListBox, apabila ListBox sudah terisi data, maka item data dapat diakses dengan menggunakan property List dari kontrol ListBox. Contoh script:

    With ListBox1
        .ColumnCount = 3
        .ColumnWidths = "50, 90, 130"
        
        .AddItem "Data Ke-1"
        .AddItem "Data Ke-2"
        .AddItem "Data Ke-3"
        
        .List(0, 1) = "Contoh isi ke-1"
        .List(1, 1) = "Contoh isi ke-2"
        .List(2, 1) = "Contoh isi ke-3"
    
        .List(0, 2) = "Tambahan isi ke-1"
        .List(1, 2) = "Tambahan isi ke-2"
        .List(2, 2) = "Tambahan isi ke-3"
    End With

    [2]. Menggunakan properti List dari kontrol ListBox. Contoh script:

    Dim xArray()
    
    ReDim xArray(2, 1)
    
    xArray(0, 0) = 1
    xArray(0, 1) = "Ini Satu"
    xArray(1, 0) = 2
    xArray(1, 1) = "Ini Dua"
    xArray(2, 0) = 3
    xArray(2, 1) = "Ini Tiga"
    
    With ListBox1
        .ColumnCount = 2
        .ColumnWidths = "30, 90"
        .List = xArray
    End With

    [3]. Menggunakan properti RowSource dari kontrol ListBox. Contoh script:

    With ListBox1
        .ColumnCount = 3
        .ColumnWidths = "30, 90, 120"
    
        .RowSource = Sheet2.Range("A2:D7").Address
    End With

    Maaf mas Evan, saya tidak tahu bagaimana tabel data yang dimaksud. Kalau hanya menggunakan script seperti yang mas gunakan:

    With lstResult
        .ColumnCount = 6
        .ColumnWidths = "100, 160, 55, 95, 40, 30"
    End With

    jelas tidak akan menampilkan apapun karena pada script tersebut tidak ada perintah untuk mengisi data ke dalam kontrol ListBox. Script tersebut hanya akan mengatur tampilan dari kontrol ListBox. Coba gunakan dan kembangkan contoh script yang saya berikan di atas:

    With ListBox1
        .ColumnCount = 3
        .ColumnWidths = "30, 90, 120"
    
        .RowSource = Sheet2.Range("A2:D7").Address
    End With

    jika sumber data akan diambil dari range tertentu pada Worksheet.

    Sangat saya sarankan, lebih baik mas Evan membuat diskusi baru jika pertanyaan yang ingin disampaikan tidak berkaitan dengan topik dari diskusi yang sudah ada, meskipun hal yang ditanyakan berawal dari diskusi yang sudah ada.

    Demikian.

    Terima kasih penjelasannya mas. :)

 

atau Mendaftar untuk ikut berdiskusi!