Vba çalışma zamanı hatası 1004 nasıl düzeltilir?

Excel’de bir makro çalıştırılırken VBA çalışma zamanı hatası 1004 oluşuyor. Bu, çeşitli nedenlerle oluşabilecek bir hatadır. Aşağıdaki örnekte görebileceğiniz gibi kodu çalıştırdığımda çalışma zamanı hatası ‘1004’ gösteriyor. Basit bir ifadeyle, nesne veya uygulama ile bir aktivite gerçekleştiremediğinizde de bu durumun meydana geldiğini söyleyebilirsiniz.

vba-çalışma zamanı hatası

Bu derste, bu çalışma zamanı hatası 1004’ün diğer birkaç nedenini anlayacağız.

Hata1: VBA çalışma zamanı hatası 1004: Bu ad zaten alınmış. Başka bir tane dene:

Yukarıda paylaştığım gibi çalışma kitabında zaten bulunan isme sahip bir sayfayı VBA kodu kullanarak eklemeye çalıştığınızda VBA size 1004 kodlu çalışma zamanı hatası gösteriyor.

Bir çalışma sayfasını yeniden adlandırmaya çalıştığınızda bile VBA’dan aynı hatayı alıyorsunuz.

Yukarıdaki kodda “Sayfa2” sayfasını “Sayfa1” adıyla yeniden adlandırmaya çalıştım, ancak görebileceğiniz gibi çalışma kitabında zaten “Sayfa1” var; VBA bana 1004 hata kodunu gösterdi.

Bu sorunu çözmek için çalışma kitabında bir sayfanın mevcut olup olmadığını kontrol etmeniz gerekir.

Hata 2: VBA Çalışma Zamanı Hatası 1004: ‘_Global’ nesnesinin ‘Aralık’ yöntemi başarısız oldu:

Bildiğiniz gibi Excel’de adlandırılmış bir aralık oluşturabilirsiniz, ancak VBA kodunu kullanarak bu adlandırılmış aralığa başvurmaya çalıştığınızda ve adını yanlış yazdığınızda, 1004 Object ‘Range’ method ‘_Global’ çalışma zamanı hatası başarısız olabilir.

Aşağıdaki örnekte, “myRange” adında bir adlandırılmış aralığım var, ancak makroyu yazarken, bu bir yazım hatası olmasına rağmen onu “myRang” olarak yanlış yazdım; VBA bu hatayı tanımlayacak ve doğru adlandırılmış aralığa başvuracak kadar akıllı değil.

Bahsettiğim isimde adlandırılmış bir aralık yok ve bu yüzden bana çalışma zamanı hatası 1004’ü gösterdi.

Hata 3: VBA çalışma zamanı hatası 1004: Sınıf Aralığı yöntemi seçilemedi:

Etkin çalışma sayfasında olmayan bir aralığı seçmek için VBA kodunu kullandığınızda, VBA size çalışma zamanı hatası 1004’ü gösterir. Çünkü, bir sayfa hesaplaması için bir hücre veya hücre aralığı seçmek istiyorsanız, o anda etkin olması gerekir. .

Sayfa2 şu anda etkinse, sayfa1’deki bir hücreyi seçemezsiniz.

Aşağıdaki örnekte gördüğünüz gibi ilk sayfanın A1 hücresine başvururken aynı hatayı yaptım ancak sayfa 2 aktif.

Bu hatayı gidermenin en iyi yolu, önce sayfayı etkinleştirmek ve ardından o sayfanın bir hücresini veya aralığını seçen bir kod satırı yazmaktır. Ayrıca bir sayfanın etkin olup olmadığını kontrol edebilir, ardından o sayfanın hücresini seçebilir ve eğer o sayfa bir şekilde etkin değilse kullanıcıya önce bu sayfayı etkinleştirmesi için bir mesaj gösterebilirsiniz.

Error4: VBA çalışma zamanı hatası 1004 Yöntem aralığı sınıfı etkinleştirilemedi:

Yukarıdaki nedende olduğu gibi, şu anda aktif olmayan belirli bir çalışma sayfasından bir hücreyi veya hücre aralığını etkinleştirmeye çalıştığınızda, size 1004 çalışma zamanı hatası (Failed to active method range class 🙂 göstereceğiz.

Sayfa1’de A1 hücresini etkinleştirmeye çalıştığım örnekte bana 1004 çalışma zamanı hatası verdi, etkin sayfa sayfa2’ydi.

Bu hatayla tekrar başa çıkmak için bahsettiğiniz çalışma sayfasının aktif olup olmadığını kontrol etmeniz gerekmektedir. Veya bu sayfanın çalışma kitabında mevcut olup olmadığını da kontrol edebilirsiniz.

Hata5: VBA Çalışma Zamanı Yöntemi Hatası 1004 Üzgünüz, bulamadık:

Bir yolu kullanarak bir Excel dosyasını açmaya çalışırsanız ancak bu çalışma kitabı orada değilse, taşınmış, silinmiş veya yeniden adlandırılmış olabilir. Bu durumda VBA size tekrar 1004 çalışma zamanı hatasını gösterecektir.

Dosyayı masaüstü yolumla açmaya çalıştığım aşağıdaki örnekte olan şey buydu, ancak bu dosya orada değildi ve bana bir hata gösterdi.

Bu durumla başa çıkmak için, bahsettiğiniz dosyanın klasörde mevcut olup olmadığını kontrol etmek için bazı VBA kodlarını kullanabilirsiniz.

Hata 6: Object Binders VBA Çalışma Zamanı Hatası 1004 yöntemi açılamadı:

Bu hata aynı zamanda çalışma kitabıyla da ilgilidir. Dolayısıyla, bir kitabın zaten mevcut olduğu ve şu anda açık olduğu ada sahip bir çalışma kitabını açmaya çalıştığınızda, VBA size çalışma zamanı hatası 1004’ü (Nesne çalışma kitaplarını açma yöntemi başarısız oldu) gösterecektir.

Zaten açık olan bir çalışma kitabını açmaya çalıştığım yukarıdaki örnekte de aynı şey oldu ve VBA bana bir çalışma zamanı hatası (1004) gösterdi.

VBA Yürütme Süresi Nasıl Onarılır (Hata 1004)

Hata 1004, VBA kodunu çalıştırırken oluşan bir çalışma zamanı hatasıdır. Ve yukarıda tartıştığımız tüm hatalar, çalışma zamanı hatası 1004’ü önlemek için kullanabileceğiniz noktaları takip ederek kodu yazarken insan hatalarından kaynaklanmaktadır.

  1. Hatanın hangi satırda oluştuğunu görmek için adım adım kod yürütme gerçekleştirin.
  2. Bahsettiğiniz çalışma kitaplarının tüm adlarını kontrol ettiğinizden emin olun.
  3. Bir çalışma kitabının zaten açık olup olmadığını kontrol etmek için VBA kodunu da kullanabilirsiniz.
  4. Ve bir hücreye veya hücre aralığına başvurmadan önce bir çalışma sayfasını etkinleştirmek için etkinleştirme yöntemini kullanın.

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir