rumus find

  1. 3 bulan yang lalu

    mau tanya gan. ane pake rumus seperti itu. tp ketika dijalankan kok cuma row pertama yg berubah ya. row dibawahnya tidak...
    pusing ane...
    maaf kalo pertanyaan ane gak sopan
    terima kasih sekali yg mau bantu....

  2. Caton

    Jul 21 Terverifikasi Indonesia + 17.572 Poin

    @fory ...

    Perintah Set c = .Find(rek, lookin:=xlValues) hanya akan mengembalikan nilai pertama yang ditemukan. Untuk mengulangi pencarian pada range yang sama, maka gunakan perintah .FindNext, misalkan saja begini :

        Dim xlWS As Worksheet, xlFind As Range, xlRange As Range
        Dim bExit As Boolean
        Dim sAddr As String
        Dim dDate As Date
        Dim lR As Long
       
        Set xlWS = Worksheets("Sheet1")
        Set xlRange = xlWS.Range("B6:B1000")
        
        For lR = 0 To 2
            dDate = CDate(Fix(Now()) - Array(7, 14, 21)(lR))
            
            Set xlFind = xlRange.Find(dDate, LookIn:=xlValues)
            If Not xlFind Is Nothing Then
                sAddr = xlFind.Address
                Do
                    xlWS.Cells(xlFind.Row, "F") = Array(-1, -2, -3)(lR)
                    Set xlFind = xlRange.FindNext(xlFind)
                    
                    bExit = (Not xlFind Is Nothing)
                    bExit = bExit And (xlFind.Address = sAddr)
                Loop While Not bExit
            End If
        Next

    Demikian.

  3. mksh bnyak om.. ane baru blajar ni vb ada 2mingguan.. msh belum terlalu mudeng bahasanya om..
    oya. punya chanel youtube gak? yg jelasin fungsi bahasa vb om?

  4. Caton

    Jul 22 Terverifikasi Indonesia + 17.572 Poin

    @fory ...

    Saya tak punya YT Channel, tapi banyak tutorial dasar VBA dalam bahasa Indonesia yang bisa dicari di YT. Ini saya contohkan lagi alternatif script VBA untuk pencarian nilai (tanggal) :

    Dim dNow As Double, dFind As Double
    Dim lR As Long, lX As Long
    Dim vData As Variant
    
    With Worksheets("Sheet1")
        '+-- Tentukan baris terakhir data kolom B.
        lR = .Cells(Rows.Count, "B").End(xlUp).Row
        If lR > 6 Then
            '+-- Konversikan range data ke array.
            vData = .Range("B6:B" & lR).Value2
    
            For lR = 0 To 2
                '+-- Tentukan nilai yang akan dicari.
                dNow = CDate(Now())
                dDate = CDbl(dNow - Array(7, 14, 21)(lR))
                For lX = LBound(vData) To UBound(vData)
                    If vData(lX, 1) = dDate Then
                        .Cells(lX + 5, "G").Value2 = Array(-1, -2, -3)(lR)
                    End If
                Next
            Next
        End If
    End With

    Demikian.

  5. yg ke dua jdinya gni y om

  6. @Caton
    untuk yg pertama jalan om, gak ada kesalahan.. cuma di sheet gak ada perubahan..

  7. Caton

    Jul 22 Terverifikasi Indonesia + 17.572 Poin

    @fory yg ke dua jdinya gni y om

    Itu tampilan kesalahannya bagaimana (apa deskripsi errornya?)

    @fory untuk yg pertama jalan om, gak ada kesalahan.. cuma di sheet gak ada perubahan..

    Kalau scriptnya jalan tapi tidak ada hasilnya, ya artinya nilai yang dicari tidak ditemukan pada Range tersebut, atau bisa juga karena format tanggalnya berbeda.

    Sebaiknya lampirkan filenya saja, jadi bisa dipelajari dimana kesalahannya.

    Demikian.

  8. @Caton
    itu om...

  9. Caton

    Jul 23 Terverifikasi Indonesia + 17.572 Poin

    @fory ...

    Coba pelajari dari file terlampir.

    Demikian.

  10. @Caton
    iya om. dh jadi...
    makasih banyak yaaaaa....

  11. Caton

    Jul 23 Terverifikasi Indonesia + 17.572 Poin

    Oke @fory... sama-sama... :)

  12. @Caton ..
    mau tanya lagi om.. hhe...
    kalo input rumus lwt vba biar rumusnya kecetak di cells gmn ya...
    ex:
    baris=baris terakhir
    shett1.cells(baris,7).value=cells(baris.3)*2.43*cells(baris,4)*55.55
    kalo ane klik hasilnya jdi 0
    pinginnya jadi cells isinya =C5*2.43*D5*55.55

  13. Caton

    Jul 26 Terverifikasi Indonesia + 17.572 Poin

    @fory ...

    Gunakan property Formula dari objek Range atau Cells, misalkan :

    Sheet1.Cells(baris, 7).Formula = "= C5 * 2.43 * D5 * 55.55"
    Sheet1.Range("G" & baris).Formula = "= C" & baris & " * 2.43 * D" & baris & " * 55.55"

    Demikian.

  14. @Caton ..
    iy om.. dh jdi. mksh bnyak..
    trus mau tanya lg om..
    file yg kemaren cari tanggal.xlsm ketika ganti bulan gak bisa kebaca y om? ane tmbah array lg (-1,-2,-3,-4,-5,-6)
    ketika ane run cuma bulan ini yg jadi. agustus gak jd gmn ya

  15. Caton

    Jul 27 Terverifikasi Indonesia + 17.572 Poin

    @fory ...

    ... ketika ganti bulan gak bisa kebaca y om ...

    Tidak terbaca bagaimana maksudnya?

    ... ane tmbah array lg (-1,-2,-3,-4,-5,-6) ...

    Array untuk rentang tanggalnya ikut ditambah gak? Yang dibaris ini:

    image_2021-07-27_164025.png

    ... ketika ane run cuma bulan ini yg jadi. agustus gak jd gmn ya ...

    Dari tabel bantu ini :

    image_2021-07-27_164114.png

    seharusnya sudah bisa diketahui tanggal berapa saja yang sesuai (match) jika dilakukan pencarian. Coba ganti nilai sel G3 dengan nilai (tanggal) yang akan dicari, lalu lihat nilai pada sel H3 s.d. sel J3. Dari sel-sel tersebut khan sudah dapat diketahui nilai mana saja yang akan sesuai dengan data pada range data aktual yang dicari (misalnya pada range B4:B23).

    Sebaiknya, lampirkan saja script (atau file) yang bermasalah, jadi bisa diketahui masalah yang dimaksud.

    Demikian.

  16. 2 bulan yang lalu

    mksh bnyak om.. dh jadi...
    ilmu ane tmbh lg...????????

    trus ini om. ane pake combo box buat hapus row..
    ketika combobox berisi lunas maka row tersebut dihapus..
    pke find jg...
    buat kodenya gmn y.. ane coba gini salah..????
    mohon bimbingannya

  17. Caton

    Agu 4 Terverifikasi Indonesia + 17.572 Poin
    Di sunting 2 bulan yang lalu oleh Caton

    @fory ...

    Variabel baris pada baris script :

    baris = c.Row

    akan bertipe Long (numerik), sehingga tidak bisa dijadikan objek atau properti dari Sheet7. Untuk menghapus baris pada Worksheet dengan memanfaatkan variabel baris tersebut, maka kita dapat menggunakan properti Cells dari objek Sheet7. Misalkan:

    Sheet7.Cells(baris, 1).EntireRow.Delete

    atau menggunakan properti Range dari objek Sheet7, contohnya:

    Sheet7.Range("A" & baris).EntireRow.Delete

    Demikian.

  18. oke om.. mkasih bnyak masukannyaa...????????

 

atau Mendaftar untuk ikut berdiskusi!