Excel: meneruskan objek buku kerja dari sub ke formulir pengguna

1
Pilih

Saya ingin meneruskan dua objek (satu buku kerja terbuka dan satu tabel lainnya) dari sub prosedur ke formulir pengguna. Saya telah membuat keduanya global sebelum sub.

Saya ingin meneruskan dua objek (satu buku kerja terbuka dan tabel lainnya) dari sub prosedur ke bentuk pengguna. Saya telah membuat keduanya mendunia sebelum sub.
  1. Ketika saya menulis hanya dua deklarasi publik sebelum Sub (mereka disetel di dalam Sub), bekerja dengan baik di dalam Sub tetapi ketika formulir pengguna diinisialisasi, itu memunculkan kesalahan"Variabel objek atau dengan variabel blok tidak disetel"
  • Ketika saya menulis hanya dua deklarasi publik sebelum Sub (mereka disetel di dalam Sub), bekerja dengan baik di dalam Sub tetapi ketika formulir pengguna diinisialisasi, itu memunculkan kesalahan"Variabel objek atau dengan variabel blok tidak disetel"
  • Ketika saya menulis hanya dua deklarasi publik sebelum Sub (mereka disetel di dalam Sub), berfungsi dengan baik di dalam Sub tetapi ketika form pengguna diinisialisasi, itu memunculkan kesalahan"Variabel objek atau dengan variabel blok tidak disetel""Variabel objek atau dengan variabel blok tidak disetel"
    Public N As Workbook
    Public E As ListObject
    Sub...
    
    Public N As Workbook Public E As ListObject Sub... Publik N Sebagai Buku Kerja Publik E Sebagai ListObject Sub...
    1. Saya mencoba menyetel dua objek ini sebelum Sub, Sub tidak berjalan, memunculkan kesalahan kompilasi,"Prosedur luar tidak valid"
  • Saya mencoba menyetel dua objek ini sebelum Sub, Sub tidak berjalan, memunculkan kesalahan kompilasi,"Prosedur luar tidak valid"
  • Saya mencoba menyetel dua objek ini sebelum Sub, Sub tidak berjalan, memunculkan kesalahan kompilasi,"Invalid outside procedure""Invalid outside procedure"
    Public N As Workbook
    Set N=Workbooks.Open(ThisWorkbook.Sheets("New").Range("A1").Text)
    Public E As ListObject
    Set E=N.Sheets(1).ListObjects(1)
    Sub...
    
    Public N As Workbook Set N=Workbooks.Open(ThisWorkbook.Sheets("New").Range("A1").Text) Public E As ListObject Set E=N.Sheets(1).ListObjects(1) Sub... Publik N Sebagai Buku Kerja Set N=Workbooks.Open (ThisWorkbook.Sheets ("New"). Range ("A1"). Text) Publik E Sebagai ListObject Setel E=N. Lembar (1) .ListObjects (1) Sub...

    Bagaimana cara meneruskan variabel objek dari Sub prosedur ke Userforms? Saat ini satu-satunya solusi yang saya lihat adalah mengatur objek di kedua prosedur Sub dan Userform.

    Bagaimana cara melewatkan variabel objek dari Sub prosedur ke Userforms? Saat ini satu-satunya solusi yang saya lihat adalah mengatur objek di kedua prosedur Sub dan Userform.

    Sumber

    vba excel

    -FaneDuru

    -Repairer

    1 -FaneDuru

    1 -FaneDuru

    -Repairer

    -FaneDuru

    1 Menjawab
    3
    Pemberian suara

    Tambahkan Sub ke CADE-1 Anda| untuk mengatur Workbook Anda dan ListObject objek.

    Bentuk pengguna:

    Private pWB As Workbook
    Private pLO As ListObject
    
    Public Sub SetObjects(ByVal wb As Workbook, ByVal lo As ListObject)
        Set pWB=wb
        Set pLO=lo
    End Sub
    

    Di kode panggilan Anda:

    Sub CallingCode()
        Dim UF As UserForm1 ' Don't use the global UserForm1 object
        Set UF=New UserForm1
        UF.SetObjects N, E
        UF.Show
    End Sub
    
    Sumber

    Anda Mungkin Menarik

    © 2021   Pemrograman.Net