Access veritabanında VBA işlevini çağıran bir makro çalıştırılırken "Eylem Başarısız Hata Numarası: 2950" hatası

Özgün KB numarası: 931407

Not

Bir Küçük İşletme müşterisiyseniz Küçük İşletme Desteği sitesinde ek sorun giderme ve eğitim kaynaklarını bulabilirsiniz.

Belirtiler

Microsoft Office Access 2007 veya sonraki bir veritabanında Microsoft Visual Basic for Applications (VBA) işlevini çağıran bir makro çalıştırdığınızda, aşağıdaki hata iletisini alırsınız:

Eylem Başarısız Oldu
Makro Adı: MakroAdı
Koşul: Koşul
Makro Adı: RunCode
Bağımsız Değişkenler: Bağımsız Değişkenler
Hata Numarası: 2950

Neden

Bu sorun, veritabanına Access tarafından güvenilmemesi durumunda oluşur. Varsayılan olarak, Access'in son sürümleri Devre Dışı modunda güvenilir olmayan veritabanlarını açar. Devre dışı modunda yürütülebilir içerik devre dışı bırakılır.

Çözüm

Veritabanının yazarına güveniyorsanız ve veritabanını etkinleştirmek istiyorsanız aşağıdaki yöntemlerden birini kullanın.

Yöntem 1: Geçerli oturum için veritabanını etkinleştirme

Bu yöntemi kullandığınızda, siz veritabanını kapatana kadar Access veritabanını etkinleştirir. Veritabanını geçerli oturum için etkinleştirmek için şu adımları izleyin:

  1. İleti Çubuğu'nda Seçenekler'e tıklayın.
  2. Microsoft Office Güvenlik Seçenekleri iletişim kutusunda Bu içeriği etkinleştir'e ve ardından Tamam'a tıklayın.

Not

Access sürümünüze bağlı olarak, veritabanını her açtığınızda bu adımları yinelemeniz gerekebilir.

Yöntem 2: Veritabanını güvenilir bir konuma taşıma

Bunu yapmak için şu adımları uygulayın:

  1. Veritabanını taşıyabileceğiniz güvenilir konumları belirleyin. Bunu yapmak için şu adımları uygulayın:

    1. Dosya'ya ve ardından Seçenekler'e tıklayın.

    2. Güven Merkezi'ne tıklayın ve ardından Microsoft Office Access GüvenMerkezi'nin altındaki Güven Merkezi Ayarları'nı tıklatın.

    3. Güvenilen Konumlar'a tıklayın ve aşağıdaki yordamlardan birini kullanın:

      • Listelenen güvenilir konumların yollarını not edin.
      • Yeni bir güvenilir konum ekleyin. Bunu yapmak için Yeni konum ekle'ye tıklayın ve eklemek istediğiniz konumun yolunu belirtin.
  2. Access veritabanını belirttiğiniz güvenilen konuma taşıyın.

Ek Bilgi

Veritabanını açtığınızda veritabanına AutoExec güvenilip güvenilmediğini test etmek için makro kullanabilirsiniz. Ayrıca, veritabanına güvenilmemesi durumunda makro kullanıcılara özelleştirilmiş bir ileti görüntüleyen bir form açabilir. Bu ileti, kullanıcıların kodun başarıyla çalışması için veritabanının etkinleştirilmesi veya güvenilir olması gerektiğini bilmelerini sağlar.

Makroyu AutoExec ve formu oluşturmak için şu adımları izleyin:

  1. Tasarım görünümünde yeni bir form oluşturun.

  2. Forma bir metin kutusu veya etiket ekleyin ve kullanıcıya görüntülemek istediğiniz bilgileri yazın.

  3. Formu kaydedin ve kapatın.

  4. Bir makro oluşturun ve makroyu olarak adlandırın AutoExec.

  5. Koşullar sütununu gösterin.

  6. Koşullar sütununa aşağıdaki satırı yazın:

    CurrentProject.IsTrusted = False

  7. Eylemler sütununda, Form Aç'a tıklayın.

  8. Eylem Bağımsız Değişkenleri'nin altındaki Form Adı kutusunda, 1. adımda oluşturduğunuz forma tıklayın.

  9. Makroyu kaydedin ve kapatın.

Veritabanı açıldığında makro AutoExec başlatılır ve koşulu test edilir IsTrusted . Veritabanına Access tarafından güvenilmiyorsa, makro, makro eyleminde OpenForm belirttiğiniz formu açar.