• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

sabitleri nereden tanımlayabilirim

Katılım
11 Aralık 2004
Mesajlar
419
Excel Vers. ve Dili
Ms Office Pro Plus 2019
Arkdaşlar merhaba;

bütün makrolarda kullanmam gereken sabitlerim var. bu sabitleri bir defa tanıtıp her yerde kullanmak istiyorum. aksi halde aynı sabitleri bütün modulelerde tekrar tekrar tekrar yazmam gerekiyor.
örneğin

Sub sabitler()
Set s1 = Sheets("veri")
ili = s1.Range("b1").Value
ilcesi = s1.Range("b2").Value
gorevi = s1.Range("b3").Value
End Sub


Sub deneme()
Sheets("sayfa1").Range("a1").Value = ili
End Sub

yukarıdaki örnekte deneme makrosunda ili sabitini sabitler makrosundan nasıl adırtabilirim.
 
Verdiğiniz örnekte tanımlama yapmadan değişkenlere değer atamışsınız. Değişken tanımlamalarını bir Module sayfasının declarasyon kısmında yani kod sayfasının en üst kısmında tanımlamalısınız.
Örnek:
Public ili as string
çalışmanızın her modul yada form kod editöründen erişebilirsiniz
Dim ili as string
hangi modulde tanımlandıysa sadece o modul içerisinde kullanılabilir.
Daha sonra örneğinizdeki gibi değer atayarak istediğiniz yerde kullanabilirsiniz.
 
teşekkürler verdiğiniz bilgiler ışığında sabitlerimi tanımladım ve işlerim oldukça kolaylaştı. Anca



Public gorevli3_unvan As String

Sub auto_open()
Sheets("menu").Range("a1").Value = "il/ilce"
il_ilce = Sheets("menu").Range("b1").Value
End sub

şeklinde tanımladığımda, menü sayfasındaki b1 değerini değiştirmeme rağmen açılışta aldığı değeri alıyor. bu durumda nasıl bir yöntem izleyebilirim.
 
Son düzenleme:
Aşağıdaki gibi deneyin.

Kod:
Public s1, ili, ilcesi, gorevi

Sub auto_open()
Set s1 = Sheets("veri")
Set ili = s1.Range("b1")
Set ilcesi = s1.Range("b2")
Set gorevi = s1.Range("b3")
End Sub
 
Aşağıdaki gibi deneyin.

Kod:
Public s1, ili, ilcesi, gorevi

Sub auto_open()
Set s1 = Sheets("veri")
Set ili = s1.Range("b1")
Set ilcesi = s1.Range("b2")
Set gorevi = s1.Range("b3")
End Sub

levent hocam ben mi sorunu anlatamadım bilmiyorum. çünkü bu işlerin pir'i siniz. verdiğiniz kodlar çalışmadı.yukarıda benim yazdığım kodlar sorunsuz çalıştı ama sayfa açıldıktan sonra değişiklik yaptığımda değişiklik yapmadan önceki hali ile işlem yapıyor. sizin verdiğiniz kodları bir türlü çalıştıramadım.
sevgilerimle...
 
Ya siz uygulamada bir hata yaptınız yada ben sizin isteğinizi yanlış anladım. Benim önerdiğim çözümde auto_open makrosunu çalıştırdığınızda ilgili değişkenler, veri sayfasındaki ilgili hücrelere bağlanır. Böylece örneğin ili değişkenini tüm modüllerde kullanabilirsiniz. Ayrıca ili değişkeninin bağlı olduğu hücredeki veriyi değiştirdiğinizde ili değişkenide değişmiş olacaktır.

Ayrıca ikinci mesajınıda ne kasdettiğinizde anlaşılmıyor. Biraz daha açıklama yapabilirsiniz.
 
Ya siz uygulamada bir hata yaptınız yada ben sizin isteğinizi yanlış anladım. Benim önerdiğim çözümde auto_open makrosunu çalıştırdığınızda ilgili değişkenler, veri sayfasındaki ilgili hücrelere bağlanır. Böylece örneğin ili değişkenini tüm modüllerde kullanabilirsiniz. Ayrıca ili değişkeninin bağlı olduğu hücredeki veriyi değiştirdiğinizde ili değişkenide değişmiş olacaktır.

Ayrıca ikinci mesajınıda ne kasdettiğinizde anlaşılmıyor. Biraz daha açıklama yapabilirsiniz.

Levent hocam;
ben anlatamadığım halde siz beni çok iyi anlamış ve cevabı vermişsiniz. ben 3 mesajdaki makrolara ek olarak yazmıştım. hepsini silip sadece sizin gönderdiğiniz kodları eklediğimde sorunsuz bir şekilde çalıştı. Çok teşekkür ederim. Beyninize sağlık. iyi çalışmalar
 
Geri
Üst