Salin Modul VBA - Tips Excel

Daftar Isi

Michelle menulis:

Kami telah mengembangkan aplikasi Excel yang menghasilkan buku kerja Excel unik untuk didistribusikan ke masing-masing 54 broker. Saya perlu menyertakan beberapa makro VBA di masing-masing dari 54 buku kerja Excel yang didistribusikan ke broker. Bagaimana cara menyalin modul VBA dari buku kerja Excel asli ke setiap buku kerja Excel baru?

Ini pertanyaan yang bagus, Michelle. Sangat mudah untuk menggunakan perintah Sheets (). Copy untuk menyalin worksheet ke workbook baru, tetapi tidak mudah untuk menyalin modul ke workbook baru. Solusinya melibatkan mengekspor modul satu kali, dan kemudian mengimpornya ke dalam 54 buku kerja broker Anda saat sudah selesai. Berikut adalah sebagian kode Anda dengan solusinya.

' Delete any old stray copies of the module1 On Error Resume Next Kill ("C:MrXL1.bas") On Error GoTo 0 ' Export Module 1 ActiveWorkbook.VBProject.VBComponents("module1").Export ("c:MrXL1.bas") For x = 1 to 54 ThisBroker = Sheets("BrokerList").range("A" & x).value '… customization of plan omited for brevity Sheets(Array("Menu", "Plan")).Copy NBName = ActiveWorkbook.Name ' new book name ' Import Module 1 to this new book Application.VBE.ActiveVBProject.VBComponents.Import ("c:MrXL1.bas") ActiveWorkbook.SaveAs Filename:=ThisBroker ActiveWorkbook.Close Next x Kill ("C:MrXl1.bas")

VBE.ActiveProject.VBComponents.Export dan VBE.ActiveProject.VBComponents… Perintah impor menangani penyalinan makro ke buku baru.

Di Excel 2002 dan yang lebih baru, Anda perlu secara eksplisit memperbolehkan makro untuk menambahkan kode ke buku kerja. Pergi ke Alat, Makro, Keamanan. Klik pada tab ke-2: Penerbit Tepercaya. Di kiri bawah, pilih Percayai Access to Visual Basic Project. Di Excel 2007, Masuk ke Ikon Office, Opsi Excel, Pusat Kepercayaan, Pengaturan Pusat Kepercayaan, Pengaturan Makro, dan pilih Percayai akses ke model objek proyek VBA.

Peringatan

Perintah untuk mengekspor dan mengimpor modul, serta perintah untuk mengetik makro baru di buku kerja yang sudah ada secara kolektif dikenal sebagai Visual Basic Extensibility atau VBE. Jika buku kerja Anda menggunakan perintah VBE apa pun, ada kemungkinan besar buku kerja tersebut akan ditandai oleh pemindai virus. Ini adalah positif palsu. Nama virus yang diduga hampir selalu memiliki "heuristik" dalam namanya. Ini berarti pemindai melihat panggilan DLL yang tampak mencurigakan, tetapi tidak selalu cocok dengan virus yang dikenal. Anda biasanya dapat menulis ke produsen perangkat lunak anti-virus dan mengajukan permohonan agar buku kerja Excel Anda tercantum dalam daftar putih setelah menjelaskan apa yang Anda lakukan dan mengapa itu hal yang baik untuk dilakukan.

Artikel yang menarik...