Cara Memisahkan Nilai sebagai Baris dan Kolom Baru

  1. 4 minggu lalu

    Halo rekan-rekan,

    Mohon bantuannya untuk case saya berikut

    Saya memiliki Raw Data dimana dapat berisi informasi invoice dan biaya, dimana datanya bisa lebih dari satu yang dipisahkan dengan tanda kurung. Berikut sampelnya:
    DJM001(37000.25)DJM002(10000)

    Untuk ilustrasi lebih jelas dapat cek di file terlampir.

    Ekspetasi hasil yang diinginkan dari sampel di atas yaitu terdiri dari dua baris yang berisi 2 invoice data DJM001 dan DJM002 dimana biaya invoice masing-masing dipisahkan sebagai kolom baru

    Mohon bantuan dan info nya ya rekan-rekan. Thank you!

    @kimbenz

    coba skrip berikut :

    Sub tes()
    Dim target As Range, sel As Range
    Set target = Range("G3:G6")
    r = 9
    For Each sel In target
        x = sel.Row
        inv = Replace(sel, "(", "#")
        inv = Split(inv, ")")
        For i = LBound(inv) To UBound(inv)
            If Len(Trim$(inv(i))) Then
                r = r + 1
                'mulai menulis di expectation
                Cells(r, 1) = Cells(x, 1)
                Cells(r, 2) = Cells(x, 2)
                Cells(r, 3) = Cells(x, 3)
                Cells(r, 4) = Cells(x, 4)
                Cells(r, 5) = Cells(x, 5)
                Cells(r, 6) = Cells(x, 6)
                Cells(r, 7) = Left(inv(i), InStr(1, inv(i), "#") - 1)
                Cells(r, 8) = Cells(x, 8)
                Cells(r, 9) = Mid(inv(i), InStr(1, inv(i), "#") + 1)
                End If
        Next i
    Next
    End Sub
    

  2. manweljs_

    Jun 17 Terverifikasi Jawaban Terpilih + 10.044 Poin

    @kimbenz

    coba skrip berikut :

    Sub tes()
    Dim target As Range, sel As Range
    Set target = Range("G3:G6")
    r = 9
    For Each sel In target
        x = sel.Row
        inv = Replace(sel, "(", "#")
        inv = Split(inv, ")")
        For i = LBound(inv) To UBound(inv)
            If Len(Trim$(inv(i))) Then
                r = r + 1
                'mulai menulis di expectation
                Cells(r, 1) = Cells(x, 1)
                Cells(r, 2) = Cells(x, 2)
                Cells(r, 3) = Cells(x, 3)
                Cells(r, 4) = Cells(x, 4)
                Cells(r, 5) = Cells(x, 5)
                Cells(r, 6) = Cells(x, 6)
                Cells(r, 7) = Left(inv(i), InStr(1, inv(i), "#") - 1)
                Cells(r, 8) = Cells(x, 8)
                Cells(r, 9) = Mid(inv(i), InStr(1, inv(i), "#") + 1)
                End If
        Next i
    Next
    End Sub
    

  3. 3 minggu lalu

    Wuhuuu thank you @manweljs_ feedbacknya sesuai ekspektasi!!
    Appreciated for your help :)

  4. Halooo mas @manweljs_ ..
    Mohon bantuannya kembali saya ubek-ubek di forum sepertinya belum pernah ada diskusinya, hehe atau saya mungkin terlewat ..

    Apabila dari hasil yg saya ekspektasikan di atas akan disimpan sebagai file excel baru dengan format penamaan filenamenya diambil dari nilai Dropdown, sebagai sampel dropdown bisa terdiri dari 3 nilai (Supplier, Receiver, Other). Nilai tersebut akan dipilih oleh operator terkait.
    Contoh untuk file di atas akan disimpan mengikuti format berikut: Supplier [tanggal bulan tahun jam menit].xlsx

    Mohon pencerahan dan bantuannya ya Mas serta rekan-rekan sekalian.

    Terimakasih.

  5. @kimbenz ...kembali saya ubek-ubek di forum sepertinya belum pernah ada diskusinya...

    berarti anda kurang teliti,sebenarnya ada banyak diskusi tentang "simpan dengan nama file" namun terkadang para TS memberi judul yang agak berbeda. misalnya diskusi Save di folder dengan nama hari dan bulan atau Kode macro pdf

    untuk kasus pada file anda. silahkan pelajari dan kembangkan contoh terlampir

 

atau Mendaftar untuk ikut berdiskusi!