2010-09-28 21 views
56

, belirli Sub veya Function yöntemin dışında modül düzeyi değişken tanımlayabilir. İçeriye modüllerin önce Private ve Public kullanılmış ve böylece gibi onları anlamak ettik:Dim, Genel, Genel ve Özel Modüler Alan Erişimi Dönüştürücüler arasındaki fark nedir? VB6/VBA

  • Public - modül içindeki tüm kod ve modül dışında bütün kodlar tarafından görülebilir, esasen küresel hale.
  • Private - sadece modül içinde kod görülebilir.

Modüler değişkenler için değiştiriciler olarak Dim ve Global'u kullanabileceğinizi farkettim. Modüler alanlarda erişim değiştiricileri olarak kullanıldığında, Dim Are sırasıyla Private ve Public, farklı Global? Eğer öyleyse, nasıl farklılar?

cevap

75

Dim ve Private eser aynı ortak kongre Alt/İşlev düzeyinde modül düzeyinde Private ve Dim kullanmaktır bile. Public ve Global işlevleri bakımından hemen hemen aynıdır, ancak Global sadece standart modüller için kullanılabilir, oysa Public tüm bağlamlarda kullanılabilir (modüller, sınıflar, kontroller, formlar vb.) Global VB'nin eski sürümlerinden gelir ve büyük olasılıkla muhafaza edilmiştir. geriye dönük uyumluluk için, ancak Public tarafından tamamen yerini almıştır.

+0

Cevabınız için teşekkür ederiz. Açıklaman, düşündüğüm kadarıyla. Tek bir modülün beyanlar bölümlerinde kullanılan dört düzenleyiciler vardır eski kod büyük bir blok başlıyorum. –

+2

Genel değişkenler, yürütme sonrasında değeri korur. Excel 2010 için çevrimiçi yardım karşı yorumlarınızı karşılaştırılması – Kiril

+9

çok ince birkaç noktayı ortaya koymaktadır: "Değişkenler Seçeneği Özel Modül yürürlükte olduğu sürece tüm uygulamalarda tüm modüllerde tüm prosedürlere uygun ortak deyimi vardır kullanarak beyan; bu durumda, değişkenleri yalnızca ikamet ettikleri proje içinde halka açıktır Üstelik dikkat:.. belirsiz kullanım durumları vardır kamu deyimi, bir sınıf modülünde kullanılamaz yukarıda her iki yana sabit uzunluklu dize değişkeni ilan etmek, Her ikisinin de pratik bir endişe kaynağı olması muhtemel değildir. –