Mengubah font dengan macro

  1. 7 minggu lalu

    Dear mas @Caton dan mas @manweljs_ yg jenius.. Saya telah berhasil membuat perintah macro sederhana yaitu:
    Sub Lunas()
    ActiveCell.Font.Strikethrough = True
    ActiveCell.Offset(0, 1).Font.Strikethrough = True
    ActiveCell.Offset(0, 2) = "LUNAS"
    End Sub
    Harapan saya adalah ketika macro saya jalankan maka angka nominal harga pada cell terpilih akan menjadi tercoret, lalu satu kolom di sebelah kanannya yg berisi rincian barang juga tercoret, dan satu kolom lagi di sebelah kanannya muncul kata "LUNAS".
    Benar saja itu sudah jalan, namun pasti masih banyak kelemahan, ketika nanti salah klik atau posisi cell terpilih tidak pada kolom yg seharusnya maka hasilnya nanti akan acak-acakan. Bagaimana cara agar perintah itu hanya bisa berlaku jika cell terpilihnya hanya di sepanjang kolom tertentu saja (di sini kolom L4:L126), mohon penjelasan apa yg harus saya ubah dari perintah tersebut dan bagaimana jika cell yg terpilih bukan di rentang L4:L126 tersebut muncul MsgBox peringatan. Makasih sebelumnya..

    @Tri Mahardika ... Bagaimana cara agar perintah itu hanya bisa berlaku jika cell terpilihnya hanya di sepanjang kolom tertentu saja (di sini kolom L4:L126) ....

    Coba modifikasi scriptnya menjadi:

    Sub Lunas()
        If Not Intersect(ActiveCell, Sheet8.Range("L4:L126")) Is Nothing Then
            ActiveCell.Font.Strikethrough = True
            ActiveCell.Offset(0, 1).Font.Strikethrough = True
            ActiveCell.Offset(0, 2) = "LUNAS"
        Else
            MsgBox "Salah area!", vbOKOnly
        End If
    End Sub

    Demikian, semoga sesuai.

  2. Caton

    Sep 29 Terverifikasi Jawaban Terpilih Indonesia + 12.498 Poin

    @Tri Mahardika ... Bagaimana cara agar perintah itu hanya bisa berlaku jika cell terpilihnya hanya di sepanjang kolom tertentu saja (di sini kolom L4:L126) ....

    Coba modifikasi scriptnya menjadi:

    Sub Lunas()
        If Not Intersect(ActiveCell, Sheet8.Range("L4:L126")) Is Nothing Then
            ActiveCell.Font.Strikethrough = True
            ActiveCell.Offset(0, 1).Font.Strikethrough = True
            ActiveCell.Offset(0, 2) = "LUNAS"
        Else
            MsgBox "Salah area!", vbOKOnly
        End If
    End Sub

    Demikian, semoga sesuai.

  3. Mas @Caton luar biasa. Sudah berhasil.. Terima kasih banyak mas.. Moga makin sukses ya mas..

 

atau Mendaftar untuk ikut berdiskusi!