• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü call metodu tetiklenmiyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

oguz38500

Yeni Üye
Katılım
22 Haz 2023
Mesajlar
14
Aldığı beğeni
3
Excel V
Office 2013 TR
Konu Sahibi
birbirinin aynı içeriğe sahip iki modülde dosyamı procedure too large hatası yüzünden ayrı bir modülde call metodu ile çalıştırdım fakat sadece ilk call metodu çalışıyor diğer call tetiklenmiyor neden böyle

Public Sub deneme3()


Call deneme2 **çalışıyor

Call deneme *** tetiklenmedi
End Sub
 
Çözüm
Bu arada tesadüfen sorununuzu da bulmuş olduk sanırım,
Sorun J değişkeninin değer alamamasından kaynaklı olmalı, diğer prosedüre gidince J değişkeni 0 değerini alıyor ve 0 nolu satır olmadığı için de hata veriyor olabilir. Bu durumda bu değişkenin tanımlanırken Public J as Long şeklinde prosedür dışından tanımlanması gerekiyor ki değer hafızada tutulabilsin. Bir deneyin
birbirinin aynı içeriğe sahip iki modülde dosyamı procedure too large hatası yüzünden ayrı bir modülde call metodu ile çalıştırdım fakat sadece ilk call metodu çalışıyor diğer call tetiklenmiyor neden böyle

Public Sub deneme3()


Call deneme2 **çalışıyor

Call deneme *** tetiklenmedi
End Sub
Eğer bir hata kontrol kodu kullanıyorsanız, On Error Goto ... gibi deneme2 çalışırken hata oluştuysa hata kontrole takılıp prosedür sonlandırılıyor olabilir. Ya da if kullanımından kaynaklı eğer şuysa bunu yap gibi bir şart sunduysanız o satırı atlıyor olabilir.
 
Konu Sahibi
Eğer bir hata kontrol kodu kullanıyorsanız, On Error Goto ... gibi deneme2 çalışırken hata oluştuysa hata kontrole takılıp prosedür sonlandırılıyor olabilir. Ya da if kullanımından kaynaklı eğer şuysa bunu yap gibi bir şart sunduysanız o satırı atlıyor olabilir.
evet genel olarak for ve if var sürekli tekrar eden bir kod parçası ne yapmam lazım .

HTML:
JavaScript:
İçeriği görebilmek için Giriş yap ya da Üye ol.

bundan 300 kere yazdırmaya çalışıyorum ve ilk modulde sorunsuz çıktı aldım ama ikinci modulden çıktı alamıyorum call ile çağırdığımda
 
evet genel olarak for ve if var sürekli tekrar eden bir kod parçası ne yapmam lazım .

For i = 10 To last
If Worksheets("Nokta_Listesi").Cells(i, 14).Value = "TE-ITG-F-06-4-4-00" Then
t = Worksheets("Nokta_Listesi").Cells(i, 15).Value + t
Worksheets("deneme").Cells(j, 1).Value = Worksheets("Nokta_Listesi").Cells(i, 14).Value
Worksheets("deneme").Cells(j, 2).Value = t
End If
Next
j = j + 1
t = 0

bundan 300 kere yazdırmaya çalışıyorum ve ilk modulde sorunsuz çıktı aldım ama ikinci modulden çıktı alamıyorum call ile çağırdığımda
Şöyle bir çözüm olabilir mesela
Sub Deneme
.......
Call Deneme2
.......
End Sub

Sub Deneme 2
.........
Call Deneme3
End Sub

Sub Deneme3
......
End Sub

Yani prosedür içinden prosedür çağırabilirsiniz, tabi bunu işlem sırasını gözeterek yapmanız gerekecektir.
 
Konu Sahibi
denedim olmadı ikinci modulde hata verdi , public sub yapmıştım prosedürleri bu sebeb olabilir mi ?
 
denedim olmadı ikinci modulde hata verdi , public sub yapmıştım prosedürleri bu sebeb olabilir mi ?
Public ya da private olayından kaynaklı olduğunu sanmıyorum, dediğiniz gibi hata verdiyse hatanın üzerine gidilmeli, nerede ne hatası verdi? Neden bu hatayı verdi şeklinde, yani kodları adım adım çalıştırıp, değişkenlerin içeriğinin doğruluğunu ve yapılan işlemlere yoğunlaşmanız gerekecek

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Konu Sahibi
1687422812157.png1687422812157.png

ilk module çalıştı ikinci modulün ilk kod blogunda bu hatayı aldım bu kod bloğundan herbirinde 100 tane var birinci modülü yazdırdım ikinci de bu hatayı veriyor call yaptığımda
 
iki kod bloğu arasında ne fark var anlamadım, fark yoksa neden sürekli aynı kodu yazıyorsunuz? değişkenler mi farklı? şayet hiçbir fark yoksa bu bloğu tek bir modülde ya da function'da 1 sefer yazıp, tekrar tekrar aynı modülü ya da function'ı çağırabilir ve koddan ve zamandan tasarruf edebilirsiniz.
örnek;
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Bu arada tesadüfen sorununuzu da bulmuş olduk sanırım,
Sorun J değişkeninin değer alamamasından kaynaklı olmalı, diğer prosedüre gidince J değişkeni 0 değerini alıyor ve 0 nolu satır olmadığı için de hata veriyor olabilir. Bu durumda bu değişkenin tanımlanırken Public J as Long şeklinde prosedür dışından tanımlanması gerekiyor ki değer hafızada tutulabilsin. Bir deneyin
 
Çözüm
Konu Sahibi
Bu arada tesadüfen sorununuzu da bulmuş olduk sanırım,
Sorun J değişkeninin değer alamamasından kaynaklı olmalı, diğer prosedüre gidince J değişkeni 0 değerini alıyor ve 0 nolu satır olmadığı için de hata veriyor olabilir. Bu durumda bu değişkenin tanımlanırken Public J as Long şeklinde prosedür dışından tanımlanması gerekiyor ki değer hafızada tutulabilsin. Bir deneyin
çok teşekkür ederim , j değişkenini modul1 deki son haliyle tanımlayınca ikiside çalıştı
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst