Hata Mesajı

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
Arkadaşlar Userfom ile hazırlanan bir dosyada (İlk zamanlar yoktu) son zamanlarda şu hata mesajını (Ekran görüntüsü) almaya başladım.
dosyayı kapatıp açınca düzeliyor. Sebebi ne olabilir acaba

219451
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
DEBUG dediğinizde sizi nereye götürüyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
O bölümde bir sıkıntı yok. F8 ile adımlayınca bir yerde bu hata mesajını veriyordur. O bölümü paylaşnız.
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
F8 yapınca farklı kod satırları geliyor ama hepsinde de sarı renkte işaretli geliyor. Hatanın nerede olduğunu nasıl anlayacağız.
Birde DEBUG yapıp kodu durdurduktan sonra dosyayı kapatıp açınca bu defa hata vermiyor ve açılıyor.
Kalıcı bir hata varsa her açılışta aynı hata kodunu göstermesi gerekmez mi? bir defa hatalı bir defa hatasız açılıyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Şöyle deneyin.

VBA penceresini açın.
Tools menüsünden References seçeneğini seçin. Açılan menüde MISSING ile başlayan satır varsa çentiğini kaldırıp pasif hale getirin.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu salt şekliyle kod hata vermez; başka kodlar neden olabilir.
Hatanın Türkçesi : "Etkin bileşen nesne oluşturamıyor"
 
Son düzenleme:

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
Korhan Bey sanırım hatayı buldum ama doğru kodun ne olacağını bilmiyorum.
Ben dosyayı Userform'a eklediğim aşağıdaki kod ile kapatıyordum. Bu şekilde kapatırsam açılışta o hatayı veriyor. Burada bu hatayı vermeye sebep olan ne olabilir.
Kod:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode <> 1 Then
Cancel = 1

Dim answer As Integer
answer = MsgBox(" PROGRAM KAPATILACAK DEĞİŞİKLİKLER KAYDEDİLSİN Mİ ? ", vbYesNoCancel, "Kur'ân-ı Kerim ve Meal Karşılaştırma Programı")

If answer = vbYes Then 'Program Otomatik değişiklikleri kaydedip Kapatır
ActiveWorkbook.Save
ActiveWorkbook.Close

ElseIf answer = vbNo Then 'Program Otomatik değişiklikleri kaydetmeden Kapatır
Application.DisplayAlerts = False
ActiveWorkbook.Close

'Else 'İptal düğmesinde Hiçbir işlem yapmaz

End If
End If
End Sub
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
Userform açık iken excel sayfasına dönüp dosyayı kapatırsam açılışta o hatayı vermiyor. Şimdi defalarca denedim
kodda nasıl bir hata var acaba yardımcı olabilirmisiniz.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu şekilde yardımcı olamam. Dosyanızı paylaşınız.
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
Korhan Bey ilginize teşekkürler. sanırım hatayı buldum
Yukarıdaki koddaki "ActiveWorkbook.Close" kısmını "Application.Quit" yayınca düzeldi.
Benim amacım Kod ile dosyayı kapatırken başka açık excel dosyası var ise onları kapatmasın sadece aktif olan dosyayı kapatsın diye "ActiveWorkbook.Close" kullanmıştım. Kod çalışıyordu da ama bu kez bir sonraki açılışta bahsi geçen hatayı verdi. Bunun bir çaresi varmı acaba
Dosya açılınca çalışan excel dosyası "False" durumuna geçip UserForm açılıyor
Kapanırken de Userform'a yazılın kod ile "X" tuşu ile kapanıyor. Burada form dosyayı kapatırken tüm açık excel dosyalarını değilde sadece UserFor'un ait olduğu dosyayı kapatsın
Yukarıdaki kodda revize yapılarak anlattıklarımı yapacak ama hata vermeyecek...
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
dosyayı paylaşmamamın sebebi boyutu fazla olduğundan rar bile yapsam 1 mb lı 3-4 adet yapıyor. Değilse özel bir sebebi yok. Yanlış anlaşılmasın.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ben bahsettiğiniz satırların ilk mesajınızdaki hatayı vereceğini düşünmüyorum.
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
479
Excel Vers. ve Dili
Excel 2016 Türkçe
Garip ama şu an artık hata vermiyor. Yukarıda bahsetmiştim il zamanlar yapmıyordu. aşağıdaki kod ile Form açıkken unutarak formdan kapatınca tüm açık excel dosyaları kapanıyordu. araştırdığımda "ActiveWorkbook.Close" kodunu kullanırsam bu sıkıntının gideceğini öğrendim. Gittide ama bu kez bahsettiğim hata çıktı. Yukarıda 2. açılışta hata vermiyor demiştim Meğer ki hata verince "DEBUG" ile excel sayfası açılıyor ya oradan dosyayı kapatıp tekrar açınca düzeliyormuş. 2. açılışta düzelmesinin sebebi meğerki buy imiş.
Garip ama sonuç bu
Kodun değişmiş hali:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode <> 1 Then
Cancel = 1

Dim answer As Integer
answer = MsgBox(" PROGRAM KAPATILACAK DEĞİŞİKLİKLER KAYDEDİLSİN Mİ ? ", vbYesNoCancel, "Kur'ân-ı Kerim ve Meal Karşılaştırma Programı")

If answer = vbYes Then 'Program Otomatik değişiklikleri kaydedip Kapatır
ActiveWorkbook.Save
Application.Quit ' Tüm açık excel dosyalarını kapatır
'ActiveWorkbook.Close ' sadece çalışılan excel dosyasını kapatır

ElseIf answer = vbNo Then 'Program Otomatik değişiklikleri kardetmeden Kapatır
Application.DisplayAlerts = False
Application.Quit
'ActiveWorkbook.Close

Else 'İptal düğmesinde Hiçbir işlem yapmaz

End If
End If
End Sub
 
Üst