Run Time Error 13 Type Mismatch Hata Giderme

Run Time Error 13 Type Mismatch Hata Giderme

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

YasarPiskin

Pro Üye
Kullanıcı
Katkı: 5%
Excel Versiyonu
Excel 365
Excel Sürümü
64 Bit
Excel Dili
Türkçe
FHRİST Sayfası H sütunun girlen tarih değeri ile o satırı silip ARCHİVE sayfasına aktaran ve 8 li gruplar oluşturan mevcut kodu 8 li grubu 5 li grup yapan ve akatrımı 3 üncü satırdan itibaren başlatıp EK'te ekran resimlerini paylaştığım hataylrın giderilmesi hususunda desteklerinizi rica ediyorum.
 

Ekli dosyalar

  • Kitap1.xlsm
    Kitap1.xlsm
    50.5 KB · Görüntüleme: 2
  • Resim 1.webp
    Resim 1.webp
    11.6 KB · Görüntüleme: 15
  • Resim 2.webp
    Resim 2.webp
    123.3 KB · Görüntüleme: 8
Çalışma kitabındaki VBA kodu incelenerek aktarım ve gruplama işlemlerinde aşağıdaki düzenlemeler yapılmıştır.

Type Mismatch Hatasının Nedeni​

Hatanın oluştuğu eski kod satırı şöyledir:

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(1 satır)

ARCHİVE sayfasında henüz kayıt bulunmadığında hedef satır 2 olarak hesaplanmaktaydı. Bu durumda kod, B1 hücresindeki “SİCİL NO” başlık metnine 1 eklemeye çalıştığı için çalışma zamanı hatası 13, yani “Type mismatch” hatası oluşmaktaydı.

Hedef satırın hiçbir zaman 3’ten küçük olmaması sağlanmış ve sıra numarası bir önceki hücreye bağlı olmadan hesaplanmıştır:

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(4 satır)

Aktarım Başlangıç Satırı​

ARCHİVE sayfasındaki kayıtların 3. satırdan başlaması sağlanmıştır. İkinci satır boş bırakılmakta ve yeni kayıtlar A3:F3 aralığından itibaren oluşturulmaktadır.

Önceki hatalı çalıştırmadan dolayı ARCHİVE sayfasının 2. satırında yarım kalan tarih, kişi ve klasör bilgileri temizlenmiştir. H sütununda tarihi bulunan yarım kalmış kayıt ARCHİVE sayfasının 3. satırına doğru şekilde aktarılmış ve FHRİST sayfasındaki kaynak satır silinmiştir.

H Sütunuyla Otomatik Aktarım​

Aktarım işlemi daha önce Worksheet_SelectionChange olayıyla çalışmaktaydı. Bu nedenle yalnızca başka bir hücre seçildiğinde işlem başlıyor ve aynı satırın tekrar işleme alınması gibi sorunlar oluşabiliyordu.

Kod Worksheet_Change olayına taşınmıştır. Artık FHRİST sayfasının H sütununda, 3. satırdan itibaren geçerli bir tarih girildiğinde aktarım işlemi başlatılmaktadır:

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(3 satır)

Tarih girildiğinde kullanıcıdan onay alınmaktadır. Onay verilmesi hâlinde:

1. Tarih ARCHİVE sayfasının A sütununa aktarılır.
2. ARCHİVE sıra numarası B sütununa yazılır.
3. Adı soyadı bilgisi C sütununa aktarılır.
4. T.C. kimlik numarası D sütununa aktarılır.
5. Beşli klasör bilgisi F sütununa yazılır.
6. Aktarılan kaynak satır FHRİST sayfasından silinir.

Geçersiz bir tarih girilirse kullanıcı bilgilendirilmekte ve hatalı değer temizlenmektedir.

Sekizli Grupların Beşli Gruplara Dönüştürülmesi​

Eski koddaki sekizli grup büyüklüğü beş olarak değiştirilmiştir:

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(1 satır)

Yeni klasör aralıkları aşağıdaki şekilde oluşturulmaktadır:

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(3 satır)

Buna göre klasörler şu düzende ilerlemektedir:

1 Nolu Klasör ( 1 - 5 ) Arası
2 Nolu Klasör ( 6 - 10 ) Arası
3 Nolu Klasör ( 11 - 15 ) Arası
4 Nolu Klasör ( 16 - 20 ) Arası

FHRİST ve ARCHİVE sayfalarındaki mevcut klasör açıklamaları da beşli düzene göre güncellenmiştir.

Ek Güvenlik Düzenlemeleri​

Kodda ayrıca aşağıdaki iyileştirmeler yapılmıştır:
  • Tüm değişkenler Option Explicit ile tanımlanmıştır.
  • Hata değerleri, boş hücreler ve sayısal olmayan sicil değerleri kontrol edilmektedir.
  • İşlem sırasında olayların tekrar tetiklenmesi Application.EnableEvents ile engellenmiştir.
  • Hata oluşması durumunda olaylar yeniden etkinleştirilmektedir.
  • Aktarım tamamlanamazsa kaynak satır silinmemektedir.
  • Yarım kayıt oluşmasını önlemek için hedef satır temizleme mekanizması eklenmiştir.
  • Bir önceki ARCHİVE sıra numarasına bağımlılık kaldırılmıştır.
  • Kaynak dosya korunmuş, düzenlemeler ayrı bir XLSM kopyası üzerinde yapılmıştır.
 

Ekli dosyalar

Çözüm
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Similar content Popüler İçerikler Daha Fazlası
Geri
Üst