• Cara Mudah Memberikan Nilai Properti Berbeda Setiap Objek VBA Berdasarkan Kriteria

    ganti atribut objek VBA Sebenarnya penggunaan istilah Objek VBA hanya saya gunakan dalam mempermudah setiap pembelajaran Excel VBA. Dan seperti yang sudah diketahui bersama bahwa di dalam Microsoft Excel, objek-objek VBA seperti Label, ListBox, CommandButton, Frame, hingga SpinButton berada dalam kotak sebuah kotak yang bernama ToolBox yang berisi berbagai macam Controls seperti yang sudah saya sebutkan. Lihat gambar berikut
    Objek VBA

    Jadi, agar tidak menimbulkan makna yang ambigu - maka kata Controls saya ganti penyebutannya menjadi Objek VBA. Mudah-mudah hal ini bisa dimaklumi :)

    Ok, terlepas dari penggunaan serta penulisan istilah yang berbeda di atas, untuk tutorial kali ini xcelive akan share sebuah script Macro VBA yang sangat efektif untuk memberikan atribut atau properti yang berbeda-beda dari setiap objek VBA yang ada dalam UserForm.
    Dan sebelum mulai belajar membuatnya, ada baiknya anda baca terlebih dahulu tutorial terkait berikut:
    Tips dan trik menggunakan Macro VBA Excel
    Cara menggunakan properti TAG dalam Macro VBA
    Menggunakan perintah Looping dalam script VBA

    Skenario yang akan kita coba uji kali ini adalah seperti berikut
    Merubah properti warna latar 1 objek TextBox yang sesuai dengan kriteria yang saya inginkan dari beberapa TextBox yang terdapat di dalam UserForm
    Dari skenario tersebut, maka setidaknya kita harus menyiapkan terlebih dahulu design yang sesuai agar berhasil diterjemahkan menggunakan bahasa Macro VBA yang bisa dibilang cukup sederhana. Design yang saya maksud kurang lebih akan tampak seperti gambar di bawah ini
    design objek VBA
    Dari design di atas, saya menggunakan 7 buah TextBox utama yang nantinya akan berubah, sementara 1 buah TextBox lainnya berfungsi untuk mengisikan kriteria berupa angka 1 sampai 7 yang mewakili Objek VBA TextBox1 sampai TextBox7, dan yang terakhir saya menggunakan sebuah CommandButton untuk menjalankan kode yang saya tulis berikut ini :
    Private Sub CommandButton1_Click()
    Dim obj As Control
    For Each obj In UserForm1.Controls
        If obj.Name Like "TextBox" & TextBox8 Then obj.BackColor = &HC0C0&
    Next
    End Sub
    Baris kode di atas yang berfungsi untuk merubah warna latar dari TextBox yang memiliki Name yang sesuai dengan kriteria yang dimasukkan adalah obj.BackColor = &HC0C0&, sementara TextBox lainnya tidak akan mengalami perubahan warna latar. Hanya saja ketika anda mencoba mengganti kriteria beberapa kali, TextBox yang sudah berubah warna backgroundnya tidak akan kembali ke warna asal. Coba perhatikan demonstrasi berikut :
    Ganti BackGround Objek VBA

    Untuk mengatasi "error" ini, maka tambahkan baris kode berikut dan letakkan di baris bagian atas sebelum eksekusi perubahan warna latar dilakukan
    For i = 1 To 7
        Controls("textbox" & i).BackColor = &H80000005
    Next
    Sehingga jika kedua kode di atas digabungkan akan menjadi tampak seperti berikut
    Private Sub CommandButton1_Click()
    Dim obj As Control
    Dim Pesan As Boolean
    
    For i = 1 To 7
        Controls("textbox" & i).BackColor = &H80000005
    Next
    For Each obj In UserForm1.Controls
        If obj.Name Like "TextBox" & TextBox8 Then obj.BackColor = &HC0C0&
    Next
    End Sub
    
    Untuk melihat hasilnya, silahkan anda coba tekan tombol yang terdapat di menubar Visual Basic Editor, dan coba silahkan ganti nilai di kotak kriteria.

    Selamat...anda sekarang sudah bisa memberikan warna latar belakang yang berbeda setiap TextBox yang sesuai dengan kriteria. Jika anda bertanya, bagaimana cara menyisipkan sebuah kotak pesan ketika Textbox tidak ada yang sesuai dengan kriteria, maka struktur kode Macro VBA akan sedikit banyak mengalami perubahan. Untuk hasil akhirnya akan terlihat seperti berikut :
    Pilih Objek dengan paeameter GOTO

    Hasil di atas dikerjakan dengan menggunakan parameter GoTo, dan untuk pembahasannya akan saya posting di edisi berikutnya. Jadi, silahkan klik tombol Subscribe agar anda tidak ketinggalan tutorial xcelive berikutnya. See you soon

    Tutorial ini memuat Macro VBA, jadi pastikan hasil akhir dari tutorial ini disimpan menggunakan format Excel Macro-Enable Workbook
    .xlsm
    atau Excel Binary Workbook
    .xlsb

    Artikel Terkait

  • Still haven't found what are you looking for

    We have provided a complete list of articles on this site to make it easier for you and giving the best solution for your excel issues

    VISIT LINK
    DMCA.com Protection Status

    excelive.com
    is a blogger resources site who provides best excel tutorial based on daily needs. The main mission of excelive is to share our little experience in excel to deliver best time killer for your excel issues, such as the following :
    Macro VBA Excel Functions Custom UDF many more...
    T.O.S
    Term of service

    Read More
    Download Area
    to complete all excel lessons, we have provided a download link for you Find Here
    Copyright © 2016 - excelive.com. Some rights reserved.
    Menyalin sebagian atau keseluruhan materi situs hanya diperbolehkan dengan tautan balik terbuka ke sumbernya.
    equipped with by blogger