Vba 2 form active

  1. 9 bulan yang lalu

    Dear Be-Org
    Apakah bisa membuka dua form di dua workbook tanpa harus menutup form salah satunya, misal di book1 saya buka forminput1 kemudian tanpa close forminput1 saya buka book2 dan forminput2 active, saat form active hanya form yg terlihat.

  2. Caton

    2 Peb 2018 Terverifikasi Indonesia + 12.574 Poin

    Silahkan dicoba file terlampir. Buka file MainForm.xlsm, kemudian klik tombol yang ada pada sheet TES.

  3. Yang saya maksud adalah seperti membuka book1 book2 book3 tanpa harus menutup book yg sudah terbuka sebelumnya, apakah ini bisa diterapkan pada form. Intinya bisa berpindah dari form1 ke form yg lain tanpa menutup form1.

  4. Caton

    3 Peb 2018 Terverifikasi Indonesia + 12.574 Poin
    Di sunting 9 bulan yang lalu oleh Caton

    Saya memberikan jawaban berdasarkan pertanyaan:

    ... Apakah bisa membuka dua form di dua workbook tanpa harus menutup form salah satunya, misal di book1 saya buka forminput1 kemudian tanpa close forminput1 saya buka book2 dan forminput2 active, saat form active hanya form yg terlihat. ...

    Sedangkan untuk pertanyaan kedua, jawabnya bisa. Coba bereksperimen dengan parameter vbModeless pada saat akan menampilkan UserForm (UserForm.Show vbModeless). Jika dipanggil menggunakan parameter vbModal, atau tanpa parameter, maka UserForm akan bersifat Eksklusif sehingga tidak bisa melakukan proses lainnya sebelum UserForm bersangkutan ditutup.

    Berikut petunjuk yang bisa berikan untuk membuat dua Modeless UserForm:

    — Buat 2 buah Workbook. Simpan kedua Workbook sebagai file Excel Enabled Macro (xlsm atau xlsb).
    — Pada setiap Workbook, tambahkan sebuah Standard Module dan sebuah UserForm.
    — Pada Standard Module disetiap Workbook, buat sebuah prosedur, misalkan Sub OpenForm(). Di dalam prosedur tersebut, panggil UserForm dengan parameter vbModeless. Contohnya seperti berikut:

    Public Sub OpenForm()
        UserForm1.Show vbModeless
    End Sub

    — Pada UserForm di Workbook pertama, buat sebuah tombol. Pada Click Event Procedure dari tombol tersebut tambahkan script berikut:

    Private Sub CommandButton1_Click()
        Dim sTemp As String
        
        On Error Resume Next
        
        sTemp = Workbooks("FormDua.xlsm").Name
        If Err.Number Then
            Err.Clear
            On Error GoTo 0
            Workbooks.Open ThisWorkbook.Path & "\FormDua.xlsm"
        End If
        ThisWorkbook.Activate
        Application.Run "FormDua.xlsm!OpenForm"
    End Sub

    — Simpan kedua Workbook, lalu tutup Workbook kedua.
    — Jalankan macro OpenForm pada Workbook pertama, geser posisi UserForm yang muncul, lalu klik tombol yang ada pada UserForm tersebut.

    Gambarannya akan terlihat seperti berikut:

    vbModeless.gif

    Untuk membuat aplikasi Excel tidak terlihat, gunakan saja script:

    Application.Visible = False

    Demikian...

 

atau Mendaftar untuk ikut berdiskusi!