Makale numarası: 292037 - Bu makalenin geçerli olduğu ürünleri görün.
Bazı durumlarda, Visual Basic for Applications projesi dağıtımını otomatik hale getirmek gerekir. Örneğin, son kullanıcıların, yükleme veya makrolar kendilerini başvuru bilmiyor olabilirsiniz, veya yoksa el ile yükleme Masaüstleri katılan sayısı pratik hale getirir.
Bu makalede, çeşitli stratejileri kullanın veya VBA projenizi dağıtımını VBA komutları veya Word Başlangıç klasörü otomatikleştirme.
Microsoft, programlama örneklerini yalnızca gösterim amacıyla sağlar; örtülü veya açık garanti vermez. Buna satılabilirlik veya belirli bir amaca uygunluk zımni garantileri de dahildir, ancak bunlarla sınırlı değildir. Bu makale, gösterilen programlama dilini ve yordamları oluşturmak ve hata ayıklamak amacıyla kullanılan araçları kullanmayı bildiğinizi varsayar. Microsoft destek mühendisleri, belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilir, ancak gereksinimlerinizi karşılamaya yönelik olarak ek işlevsellik sağlamak veya yordamlar geliştirmek amacıyla bu örnekleri değiştirmezler.
Bu makaledeki kod örneğini kullanma hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
212536
(http://support.microsoft.com/kb/212536/EN-US/ )OFF2000: Nasıl Knowledge Base makalelerini örnek kod Çalıştır
Proje Başlangıç klasörüne kopyalayın...Bir şablonu yerleştirdiğinizde (* .dot) veya başlangıçta otomatik olarak dosyadaki makrolar Word eklenti kitaplığına (*.wll) Word Word Başlangıç yolunu yükler.
Dağıtım için başlangıç yolunu kullanarak bu nedenle yönetim oldukça dağıtmak veya basit bir dosyanın kopyasını bir VBA projesi güncelleştirme sağlayarak azaltır. Birçok kuruluş, zaten ağ oturumu açma, bu işlem, COPY komutu bir ağ oturum açma komut dosyası ekleme kadar kolay hale getirme sırasında oturum açma komut dosyalarını kullanın.
Word Startup klasörünün varsayılan konumları aşağıda verilmektedir:
Microsoft Windows 95, Microsoft Windows 98 veya Microsoft Windows Millennium Edition (Me):Not: The Word Başlangıç yolu özelleştirilebilir ve bu makalede listelenen alanından farklı olabilir. VBA projenizi dağıtımını otomatik hale getirmek için dosyayı kopyalamadan önce başlangıç yolunu doğrulamak dikkat edin.
C:\WINDOWS\Application Data\Microsoft\Word\STARTUPMicrosoft Windows 95, Microsoft Windows 98 veya kullanıcı profilleri ile Microsoft Windows Millennium Edition (Me):
user name \Application Data\Microsoft\Word\STARTUP C:\WINDOWS\Profiles\Microsoft Windows NT 4.0:
user name \Application Data\Microsoft\Word\STARTUP C:\WINNT\Profiles\Microsoft Windows 2000:
C:\Documents and Settings\ user name \Application Data\Microsoft\Word\STARTUP
Dış bir çözümden başlangıç klasörünün konumunu döndürme hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
210860Microsoft Office program dosyalarını içeren dizinde de bir başlangıç klasörü var. Word, bu klasörün önceki başvurulan konumları ek olarak, başlangıç sırasında denetler. Word, daha sonra herhangi bir şablon veya varsa bulduğu eklenti kitaplıkları yükler. Varsayılan olarak, bu klasör aşağıdaki konumdadır:
(http://support.microsoft.com/kb/210860/EN-US/ )WD2000: Word Başlangıç yolu dış bir çözüm bulmak How
C:\Program Files\Microsoft Office\Office\STARTUPBu Başlangıç klasörünü kullanarak bir avantajı yol genellikle aynı kullanıcı adını ya da yüklü olan Windows sürümü ne olursa olsun olmasıdır.
Bir dezavantajı, dosyaları bu klasöre yerleştirilen, belirli bir iş, yalnızca kullanıcının tüm kullanıcıları etkiler olur.
Başlangıç yolunu değiştirmeAlternatif olarak Word Başlangıç yolunda bir paylaşılan ağ konumuna değiştirebilir ve VBA projenizi, yalnızca bu ağ paylaşımına yeniden kopyalayın. Bu, ağdaki her bilgisayar için dosyayı kopyalarken bir tercih olabilir.
Word Başlangıç değiştirmek için ayarı el ile Araçlar menüsünden Seçenekler ' i tıklatın ve sonra Dosya konumları</a0> sekmesini tıklatın.
Bu ayar, VBA ile de değiştirebilirsiniz. Aşağıdaki örnekte, Word Başlangıç yolunda bir paylaşılan ağ konumuna değiştirir. Eşlenen ağ sürücüsündeki bir UNC yolu yerine de kullanılabilir:
Application.Options.DefaultFilePath(wdStartupPath) _ = "\\ Server \ Share"Varsayılan başlangıç yolunun sıfırlamak için <a0></a0>, başlangıç yolunun hiçbir şey ayarlayın (""), aşağıdaki gibi:
Application.Options.DefaultFilePath(wdStartupPath) = ""
Alma ve verme VBComponentsBaşlangıç klasörü, dağıtım için kullanmak yerine genel şablonu (veya başka bir şablon) VBA bileşen almak isterseniz, bir modül veya userform bir Visual Basic modülünün dosyasını (*.bas) veya Visual Basic userform dosyasının (*.frm) sırasıyla almaya VBProjects tahsilat kullanabilirsiniz.
VBA projenizi BAS veya FRM bir dosya oluşturmak için <a0></a0>, userform ya da modül Project Explorer penceresinde (Visual Basic Düzenleyicisi'nde çalışırken CTRL + E tuşlarına basın, bu penceresini görmek için <a0></a0>) sağ tıklatın ve Dosyası ver</a1>'ı tıklatın.
Bir modül veya VBA komutuyla userform verebilirsiniz. VBComponents.Export yöntemini kullanan örnek bir bağımsız değişken aşağıdadır:
aşağıdaki örnek makroyu "AddMeModule.bas" Belgelerim klasöründen Normal şablonuna adlı bir BAS dosyası alır ve sonra da "AddMeMacro" adlı bir makro (presumably alınan modülünde bir makro) çalışıyor:
Normal şablonuna bileşenler alınıyor ek olarak, VBA bileşenleri aşağıdaki örnek bağımsız olarak, Word düzenleme için açık olan herhangi bir şablon içine alabilirsiniz:
Bir VBProject başvurusuDosya boyutunu artırır ve yükü, verme ve bağımsız modüller ve kullanıcı formları almayı önlemek için bunun yerine bir VBA projesi başvurmak seçebilirsiniz. Bu dosyayı açmayı veya Normal şablonu ya da başka bir şablon proje kodu büyük miktarlarda ekleme gerçekte tüm yordamları, işlevleri ve projenin kullanıcı formları erişmenize olanak sağlar.
Not: geçerli projede başvuru yapılan bir proje için bir başvuru eklemek ba?ar?s?z olursa, aşağıdaki hata iletisini alırsınız:
Bu hatayı önlemek için <a0></a0>, eklemek veya bir hata işleyicisi kullanmak denemeden önce bir başvuru varlığını denetlemeniz gerekir.
Çalışma zamanı hatası '32813': Varolan modül, proje veya nesne kitaplığına adı çakışmaları
Aşağıdaki örnek, "RefProj" adlı bir proje başvurusu denetler ve yalnızca, zaten başvurulmuyor Bu başvuru eklemeye AddFromFile yöntemi kullanır:
NormalImport örnekte olduğu gibi (Word program Çalıştır yöntemini kullanarak başvurulan bir projeden bir makro çalıştırabilir, bu makalenin "Al ve Ver VBComponents" bölümünde), bkz:.
Alternatif olarak, bir sub, işlevi veya userform doğrudan proje adını ve aşağıdaki örneklerde olduğu gibi <a1>kapsayıcı</a1> adını adı önceki çağırabilirsiniz:
-VEYA-
Bir alt, işlevi veya aşağıdaki hata iletisini alırsınız çünkü kullanılan, başvuru eklemek için doğrudan aynı yordam içinde userform çağrılamıyor göz önünde bulundurun:
Başvuru eklemek için kodu çalıştırmanızdan sonra aradığınız proje kadar kullanılamaz olmasıdır. Bu kısıtlamaya bir geçici çözüm bulmak için <a0></a0>, başvuru bir yordamı ekleyin ve sonra gerçekte bir makroyu çalıştırmak veya userform görüntülemek için ayrı bir yordam çağrısı.
'424' Çalışma zamanı hatası: nesne gerekli
VBProject koleksiyonu, Visual Basic Düzenleyicisi'nde hakkında daha fazla bilgi için Yardım menüsünde Microsoft Visual Basic Yardımı ' nı tıklatın, sonra da VBProject özelliği, Office Yardımcısı'na veya Yanıt Sihirbazı'nı yazın ve döndürülen konuları görüntülemek için Ara ' yı tıklatın.
OrganizerCopy kullanın.Modüller ve kullanıcı formları dosyalar arasında kopyalama otomatikleştirmek için bir başka yolu OrganizerCopy yöntemini kullanmaktır. Bu yöntem Düzenleyici</a0> iletişim kutusunu kullanarak bir proje öğesi Word'de kopyalama olarak aynı eylemi gerçekleştirir.
Normal şablonuna "CopyMod.dot" adlı bir şablon "CopyMeModule" adlı bir modüle aşağıdaki makro örneği kopyalar:
bu yöntem, tek önemli sınırlaması vardır: normal şablondan proje öğelerini başka bir dosyayı kopyalayamıyor. Makro virüslerinin yayılmasını engellemeye tasarım gereği, budur.
Buna ek olarak, şablonu düzenleme için Word'de açık değilse veya bir eklenti veya başvuru olarak yüklenen bir şablon proje kopyalayamıyor.
Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
211466Visual Basic Düzenleyicisi'nde OrganizerCopy yöntemi hakkında daha fazla bilgi için Yardım menüsünde Microsoft Visual Basic Yardımı ' nı tıklatın, OrganizerCopy yöntemi, Office Yardımcısı'na veya Yanıt Sihirbazı'nı yazın ve sonra döndürülen konuları görüntülemek için Ara ' yı tıklatın.
(http://support.microsoft.com/kb/211466/EN-US/ )WD2000: WordBasic MacroCopy komutu çalışmıyor
Eklentileri</a0> koleksiyon kullanın.Bu yöntem, bir dış şablon veya eklenti kitaplığına Word (*.wll) açma veya dosya taşıma ve Word diğer bir VBA projesinde değişiklik olmadan kullanmanıza olanak tanır. Bunun nedeni, eklentiler, uygulama düzeyi nesneleri yerine <a2>Belge</a2> veya <a4>VBA bileşen nesnelerini olan güncelleştirmesidir.
Bir proje için Eklentileri ekleme tahsilat Word şablonları ve eklentileri iletişim kutusunda <a1>Ekle</a1> düğmesini tıklatmakla aynıdır.
Aşağıdaki örnek, "AddToAddins.dot" adlı eklenti yükler ve "AddinMacro" adlı bir şablonda bir makro çalışıyor:
Yükleme özelliği bu yöntem için eklenti için onay kutusunu şablonları ve eklentileri iletişim kutusunda seçilen belirtir. Bu özellik ek bileşeninden bir makroyu çalıştırmak için true olmalıdır.
Bir proje başvuru farklı olarak aynı eklenti hatasız birden çok kez ekleyebilirsiniz.
Şablonlar ve eklentiler seçerek ve Kaldır</a1> düğmesini veya Addins.Remove VBA yöntemini kullanarak kaldırmanız kadar eklenti şablonları ve eklentileri iletişim kutusunda kullanılabilir kalır.
Bu yöntemin bir sınırlama çıkın ve Word ' Ü yeniden eklenti Startup klasöründen yüklüyor sürece yüklenmiş durumu otomatik olarak FALSE olarak değişmesi olur (Bu makalenin "Copy the Project Başlangıç klasörü" bölümüne bakın). Bu kısıtlamayla ilgili ek bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
224766Eklentileri koleksiyon nesnesi, Visual Basic Düzenleyicisi'nde hakkında daha fazla bilgi için Yardım menüsünde Microsoft Visual Basic Yardımı ' nı tıklatın, Eklentileri tahsilat, Office Yardımcısı'na veya Yanıt Sihirbazı'nı yazın ve döndürülen konuları görüntülemek için Ara ' yı tıklatın.
(http://support.microsoft.com/kb/224766/EN-US/ )WD2000: Şablonu, şablonlar ve eklentiler eklenen yükü kısmı veya tamamı ingilizce olan içeriğe işaret edebilir.
Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
226118
(http://support.microsoft.com/kb/226118/EN-US/ )OFF2000: Kaynaklar Visual Basic for Applications programlama
Makale numarası: 292037 - Last Review: 11 Ekim 2006 Çarşamba - Gözden geçirme: 3.2
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:292037
(http://support.microsoft.com/kb/292037/en-us/ )