Type Mismatch Hatası

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar. Öncelikle herkesin geçmiş Kurban Bayramı mübarek olsun.

Ekte gönderdiğim dosyada değişken tanımlama hatası veriyor. Hepsini Variant olarak tanımlasam da aynı hatayı veriyor. Rica etsem yardımcı olabilir misiniz.
 

Ekli dosyalar

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba, kodunuz aşağıdaki satırda hata veriyor.
bul değeri boş geliyor.

ilk_kutu_no = Right(bul, 1)
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba, kodunuz aşağıdaki satırda hata veriyor.
bul değeri boş geliyor.

ilk_kutu_no = Right(bul, 1)
Nerede hata olduğunu bulamadım. Neden boş değer aldığını bulamadım.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Bu tür hataları anlayabilmek için F8 ile adım adım kodları izlemeniz gerekir.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
If TypeName(c) = "textbox" Then

yukarıdaki bölümü aşağıdakiyle değiştir

If TypeName(c) = "TextBox" Then
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
bunuda düzelt

Yanlış = Case "ÇArşamba"
Doğru = Case "Çarşamba"
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
burasıda yanlış

yanlış = caal olustur
doğru =Call olustur
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar.

Eklediğim dosyada gün isimlerinin üzerine çift tıklama yapıldığında, A1 hücresine tarihi yazdırmak istiyorum ama yanlış bir tarih yazıyor. Rica etsem yardımcı olabilir misiniz.

Yardım edecek arkadaşlar için Textbox10 form açıldığında görünmüyor ama Userformu sağa doğru genişletince görünüyor. gün isimlerinde sadece ik iki sıra için kod girilmiştir.
 

Ekli dosyalar

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Böyle dene
Range("a1") = CDate(Format(t8.Text, "00") & "." & Format(TextBox10.Text, "00") & "." & Format(TextBox1.Text, "0000"))
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,245
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alttaki kodu formunuzun kod bölümüne uygulayınız.

Rich (BB code):
Sub My_Date(TB As MSForms.TextBox)
    Range("A1") = CDate(DateSerial(TextBox1, TextBox10, TB.Text))
End Sub
Günlere ait her TextBox için aşağıdaki gibi kodu uygulayınız. Kalın fontlu bölüme dikkat ederek uygulayınız.

Rich (BB code):
Private Sub t1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    My_Date t1
End Sub
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Alttaki kodu formunuzun kod bölümüne uygulayınız.

Rich (BB code):
Sub My_Date(TB As MSForms.TextBox)
    Range("A1") = CDate(DateSerial(TextBox1, TextBox10, TB.Text))
End Sub
Günlere ait her TextBox için aşağıdaki gibi kodu uygulayınız. Kalın fontlu bölüme dikkat ederek uygulayınız.

Rich (BB code):
Private Sub t1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    My_Date t1
End Sub
Teşekkürler Korhan bey.
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar.

Eklediğim dosyada dtp formundaki Textbox2'de ayları artırırken bir sorun yok Aralık ayına kadar geliyor fakat ayları geriye doğru ilerletirken Şubat'ta iken tıklama yapıldığında Ocak ayına gelmeden "Belirtilen nesne bulunamadı" diye hata veriyor. Rica etsem bunun için de yardımcı olabilir miisiniz.
 

Ekli dosyalar

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,798
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Rich (BB code):
Dim c, bul As Variant
For Each c In dtp.Controls
If TypeName(c) = "TextBox" Then
If c.Text = "1" Then
bul = c.Name
Exit For
End If
End If
Next c
kırmızı bölüme eklemelisiniz
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Rich (BB code):
Dim c, bul As Variant
For Each c In dtp.Controls
If TypeName(c) = "TextBox" Then
If c.Text = "1" Then
bul = c.Name
Exit For
End If
End If
Next c
kırmızı bölüme eklemelisiniz
Çok teşekkürler Halit bey. İyi akşamlar.
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar.

Eklediğim dosyada tarih seçici de günlerin üzerine çift tıklandığında Hangi Userform1 üzerindeki hangi Textbox'a tarihin yazılması gerekiyor ise yazıyor. Ama Bu örnek dosya ve 1 Userform ve 3 adet Textbox var. Benim üzerinde çalıştığım dosyada ise 14 ayrı Userform da 31 ayrı Textbox'a tarih girilmesi gerekiyor.
Örnek dosyada tarihin yazılması gereken Textboxları, tarih seçici formdaki gün isimlerinin bulunduğu Textboxlarda tek tek kodunu yazmak gerekiyor.
Üzerinde çalıştığım dosyada 14 ayrı formda tarihi girişi yapılacak 31 ayrı Textbox var. Bu duruma göre tarih seçici adlı formdaki gün isimlerinin olduğu 42 adet Textbox'a 14 adet form ve 31 adet Textbox'un kodlarını tek tek yazmam gerekiyor. Bu kodları daha kısa yoldan yapmak mümkün değil midir.

Mesela Userform5 deki Textbox3'e tarih girileceği zaman "tarihgirilecektext" değişkenine Userform5 ve Textbox3 ü atayıp, tek bir değişken üzerinden tarih girilecek 31 adet Textbox'a yazdırma yapamaz mıyız.

Yardımcı olursanız çok sevinirim.
 

Ekli dosyalar

Üst