• 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.

Soru Excel Vba Çok Zararlı Hata Sorunu Listview

L 3

Local

Yeni Üye
Katılım
19 Ağu 2023
Mesajlar
329
Çözümler
5
Aldığı beğeni
25
Katkı
%0.14
Excel V
Office 2016 TR
Konu Sahibi
Merhabalar ,

İşletim Sistemi Windows 11 64 bit
Office 365 32 Bit

Sorunum şu bu sistemde listview problem çıkarıyor.Bu sorunu düzeltmek için mscomctl.ocx dosyasını regedit etmiyor hata veriyor 0x80004005 hatası dosyayı buluyor ama diğer dosya olan mscomct2 dosyasını regedit ediyor problem çıkartmıyor .Benim daha önce kullandığım bilgisayarda windows 10 64 bit office 2021 pro plus 32 bit vardı ordada bu sorun vardı ama bu iki dosyayı hatasız kaydetti şuan şirketin verdiği bilgisayar windows 11 benim bu sorunu çözmem lazım ve ben yaptığım çalışmayı ağda paylaştırıp kullanıcılara giriş yaptırmam lazım çünkü şirketteki bilgisayarlarda windows 11 ve office 365 office 365 ler 32 bite çevrilir onda sıkıntı yok işletim sistemi ve office 365 lerde orijinal bilginiz olsun .Yardımlarınızı bekliyorum gerekirse bana uzaktanda bağlanıp destek verebilirseniz memnun olurum
 
Excel versiyonlarında, çok değişik nedenlerle sorun oluştuğu için Listview yerine ListBox kullanıyorum.
 
Konu Sahibi
Excel versiyonlarında, çok değişik nedenlerle sorun oluştuğu için Listview yerine ListBox kullanıyorum.
Bende bazı formlarda Listbox kullandım ama çoğu Listview Listboxta kolon snınırlaması var diye biliyorum o yüzden benim bunu bir şekilde çözmem lazım
 
Eğer Listview ile sorunu çözemezseniz, aşağıdaki kod ile LisBox da colon sınırlamasını aşabilirsiniz. List özelliği ile.
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
  • Beğen
İfadeler: Admin
Konu Sahibi
İmkansız çünkü sistemde çok fazla sayıda listview var ve ben geri dönersem çok zaman kaybı olur.
 
Merhaba,

ListView nesnesinin bu uyum sorunu hep baş ağrıtıyor.

Yapay zekanın çözüm önerileri;

Windows 11 64 bit ve Office 365 32 bit sisteminde MSCOMCTL.OCX dosyasını kaydetmek için aşağıdaki adımları uygulayalım.

1. MSCOMCTL.OCX dosyasını kontrol et​

Öncelikle aşağıdaki konumda dosyanın bulunup bulunmadığını kontrol et:

C:\Windows\SysWOW64\MSCOMCTL.OCX

Önemli: Dosya burada yoksa başka bir klasörden rastgele OCX kopyalama. Önce mevcut konumunu belirleyelim.

2. Yönetici olarak CMD aç​

Başlat menüsüne CMD yaz.

Komut İstemi üzerine sağ tıkla ve Yönetici olarak çalıştır seçeneğini seç.

Aşağıdaki komutu çalıştır:

C:\Windows\SysWOW64\regsvr32.exe C:\Windows\SysWOW64\MSCOMCTL.OCX

Önemli: Windows 64 bit olmasına rağmen Office 32 bit olduğu için 32 bit kayıt aracını kullanıyoruz. Bu araç SysWOW64 klasöründedir.

Başarılı olursa kayıt işleminin tamamlandığını belirten bir mesaj görmelisin.

3. Kayıt işlemi başarısız olursa​

Öncelikle mevcut kayıt durumunu kontrol etmeliyiz.

İstersen mevcut kaydı kaldırıp yeniden kaydetmek de mümkün. Ancak bunu ilk aşamada önermiyorum. Çünkü 0x80004005 hatası tek başına kayıt bozukluğunu kanıtlamaz.

Önce hata mesajının tam içeriğini belirleyelim.

4. Windows Kayıt Defteri (Regedit) kontrolü​

Windows + R tuşlarına bas.

regedit yazıp Enter tuşuna bas.

Aşağıdaki kayıt defteri yoluna git:

HKEY_CLASSES_ROOT\TypeLib\{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0

Bu anahtar MSCOMCTL kütüphanesinin TypeLib kayıtlarını içerir.

Burada özellikle şu alt anahtarları kontrol et:

Win32

Win64

Önemli: 2.0 anahtarını veya alt anahtarlarını hemen silme.

Önce 2.0 anahtarına sağ tıklayıp Dışarı Aktar seçeneğiyle yedeğini al.

Win32 anahtarının varsayılan değerinde hangi dosya yolunun yazdığını kontrol et. 32 bit OCX için doğru dosya yolunu göstermesi gerekir.

5. Bu işlemlerden sonra da 0x80004005 hatası alırsak​

Şu ihtimalleri inceleyeceğiz:

  • OCX dosyasının bozuk veya uyumsuz olması.
  • Dosyanın yanlış klasörde bulunması.
  • Windows kayıt defteri izinleri.
  • Eski veya hatalı TypeLib kayıtları.
  • OCX dosyasının ihtiyaç duyduğu bileşenlerin eksik olması.
Bunları kontrol etmeden kayıt defterinden anahtar silmek doğru olmaz.
 
Konu Sahibi
Deneyeceğim teşekkür ederim Korhan Bey
 
Geri
Üst