• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

"Run time error '13': Type mismatch" Hatası..

Katılım
6 Mart 2012
Mesajlar
1
Excel Vers. ve Dili
excel 2010
Merhaba arkadaşlar, bu sitedeki bir arkadaşın yapmış olduğu stok programını kullanmaktayım. Çokta memnunum fakat bir kaç hatası var. stok kaydını direk ana ekrandan yapamıyorum illaki excele gir diyerek ordan kaydetmem gerek birde ana ekranda değiştir butonu var onda da kaydet butonundaki hatayı alıyorum, uzun bir süre araştırdım hep başka kodlardan hata aldıklarından dolayı hatayı çözemedim, çözemememdeki en büyük etkenlerden biriside makro öğrenmeye yeni başlamam sanırım.. Hatanın resimleri ve dosyam ektedir yardımcı olabilirseniz sevinirim.
 

Ekli dosyalar

  • hata.jpg
    hata.jpg
    22.4 KB · Görüntüleme: 46
  • hata1.jpg
    hata1.jpg
    22.1 KB · Görüntüleme: 21
  • hata2.jpg
    hata2.jpg
    22.7 KB · Görüntüleme: 12
  • hata3.jpg
    hata3.jpg
    24.1 KB · Görüntüleme: 13
  • Kaptan Stok Programı.xls
    Kaptan Stok Programı.xls
    169 KB · Görüntüleme: 26
Merhaba,

Adı üzerinde Type (Veri Tipi) Missmatch (uyumsuz).

Örneğin Integer olarak tanımlanan bir değişkene alfanümeric bir değer atama olursa ya da tam tersi String (Metin) tanımlı bir hücrede matematiksel işlem yaptığınızda bu hatayı alırsınız.

Aktarılan veriyi kontrol etmeniz gerekir.
 
İnsan bir geri bildirimde bulunur. "Anladım", "Anlamadım", "İşime Yaradı", "İşime Yaramadı" vs vs vs diye. ki aynı sorunla karşılaşan üyelerimizde yararlansın.
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Columns("e").ClearComments
If Intersect(Target, [e5:e3175]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
dosyaadi = ThisWorkbook.Path & "\Posterler\" & Target.Value & ".jpg"
With Cells(Target.Row, "e")
.AddComment
.Comment.Visible = True
.Comment.Shape.Select True
If CreateObject("Scripting.FileSystemObject").FileExists(dosyaadi) = True Then
Selection.ShapeRange.Fill.UserPicture dosyaadi
Selection.Height = 280 'yukseklik
Selection.Width = 200 'genişlik
Target.Select
Else
.Comment.Visible = False
End If
End With
End Sub


Sayın Hocalarım bu makroyu hücreye popup resim eklemek için kullanıyorum siz zaten biliyorsunuzdur. "If Target.Value = "" Then Exit Sub" bu satıra ilişkin Type Mismatch hatası alıyorum resimler açıklaa hücresi içerisinde popup olarak geliyorlar fakar örneğin e5 başlayarak e10' kadar resim isimlerinden diyelimki küçükten büyüğe filtre uygularsam o zaman bu hatayı alıyorumm makroda hiç anlamıyorum desem yeriidir acil yardımlarınızı bekler şimdiden teşekkürlerimi sunarımmmm....

:)
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Columns("e").ClearComments
If Intersect(Target, [e5:e3175]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
dosyaadi = ThisWorkbook.Path & "\Posterler\" & Target.Value & ".jpg"
With Cells(Target.Row, "e")
.AddComment
.Comment.Visible = True
.Comment.Shape.Select True
If CreateObject("Scripting.FileSystemObject").FileExists(dosyaadi) = True Then
Selection.ShapeRange.Fill.UserPicture dosyaadi
Selection.Height = 280 'yukseklik
Selection.Width = 200 'genişlik
Target.Select
Else
.Comment.Visible = False
End If
End With
End Sub


Sayın Hocalarım bu makroyu hücreye popup resim eklemek için kullanıyorum siz zaten biliyorsunuzdur. "If Target.Value = "" Then Exit Sub" bu satıra ilişkin Type Mismatch hatası alıyorum resimler açıklaa hücresi içerisinde popup olarak geliyorlar fakar örneğin e5 başlayarak e10' kadar resim isimlerinden diyelimki küçükten büyüğe filtre uygularsam o zaman bu hatayı alıyorumm makroda hiç anlamıyorum desem yeriidir acil yardımlarınızı bekler şimdiden teşekkürlerimi sunarımmmm....

:)

kod:
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Columns("e").ClearComments
If Intersect(Target, [COLOR=red]Range("e5:e3175")[/COLOR])Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
dosyaadi = ThisWorkbook.Path & "\Posterler\" & Target.Value & ".jpg"
With Cells(Target.Row, "e")
.AddComment
.Comment.Visible = True
.Comment.Shape.Select True
If CreateObject("Scripting.FileSystemObject").FileExists(dosyaadi) = True Then
Selection.ShapeRange.Fill.UserPicture dosyaadi
Selection.Height = 280 'yukseklik
Selection.Width = 200 'genişlik
Target.Select
Else
.Comment.Visible = False
End If
End With
End Sub
 
Sorunum düzelmedi sayın hocam

Bu kadar çabuk cevap verdiğiniz için çok teşekkürler sayın hocam kullanmış olduğum makroda zaten size ait olsa gerek çalışmalarınızın devamını diler takip etmeye çalışıyorum..
fakat sorunum düzelmedi sayın halit hocam ekte dosyamı gönderdim popup resim çağırmdada sorun yokta hücreleri farklı krüterlere göre filtreleme yaptığımıda bu hatayı alıyorum yardım ederseniz çok müteşekkir kalacağin inşalllah :)
 

Ekli dosyalar

Bu kadar çabuk cevap verdiğiniz için çok teşekkürler sayın hocam kullanmış olduğum makroda zaten size ait olsa gerek çalışmalarınızın devamını diler takip etmeye çalışıyorum..
fakat sorunum düzelmedi sayın halit hocam ekte dosyamı gönderdim popup resim çağırmdada sorun yokta hücreleri farklı krüterlere göre filtreleme yaptığımıda bu hatayı alıyorum yardım ederseniz çok müteşekkir kalacağin inşalllah :)

Narmalde kod çalışıyor ama her nedense sizin dosyanızda çalışmıyor
ben yeni bir excel dosyası oluşturdum ve sizin dosyanızdaki sayfaları oraya taşıdım kod gayet güzel çalışıyor.
 

Ekli dosyalar

Çok teşekkürler sayın halit hocam ilgi ve alakanıza

hayırlı günler...

Çalışma ve paylaşımlarınızın devamını bekler excel bilgisi ve birikiminizin karşısında saygıyla eğilirim :)
 
bende aynı sorunu yaşadım ancak sizin dediğiniz gibi bir sorunla karşılaşmadım.
bendeki sorunaynen şu şekildeydi

myEmail.HTMLBody = myEmailBody
myEmail.Recipients.Add Sheets("mail adresleri").Cells(1, 1)
myEmail.Send
Sheets("mail adresleri").Rows(1).Delete
ThisWorkbook.Save
Application.Wait (Now + TimeValue("0:00:79"))
Next
End Sub

Buradaki TimeValue 60 dan büyük değer olduğu için aynı hatayı aldım. tabi sorunu 79 u 60 dan ufak yaparak çözdüm.

bilgi olsun diye paylaşmak istedim.
iyi çalışmalar
 
runtime 13 type mismatch hatası

Private Sub ComboBox1_Change() ' POZ NO ATAMASI

ComboBox2.Value = Range("B" & ComboBox1.Value + 1).Value ' HATA ALINAN SATIR
ComboBox3.Value = Range("C" & ComboBox1.Value + 1).Value
ComboBox4.Value = Range("D" & ComboBox1.Value + 1).Value
ComboBox5.Value = Range("E" & ComboBox1.Value + 1).Value
ComboBox6.Value = Range("F" & ComboBox1.Value + 1).Value
ComboBox7.Value = Range("G" & ComboBox1.Value + 1).Value
ComboBox8.Value = Range("H" & ComboBox1.Value + 1).Value
ComboBox9.Value = Range("I" & ComboBox1.Value + 1).Value
TextBox5.Value = Range("J" & ComboBox1.Value + 1).Value
TextBox6.Value = Range("K" & ComboBox1.Value + 1).Value
TextBox7.Value = Range("L" & ComboBox1.Value + 1).Value
TextBox8.Value = Range("M" & ComboBox1.Value + 1).Value
TextBox9.Value = Range("N" & ComboBox1.Value + 1).Value
TextBox10.Value = Range("O" & ComboBox1.Value + 1).Value
TextBox11.Value = Range("P" & ComboBox1.Value + 1).Value
TextBox12.Value = Range("Q" & ComboBox1.Value + 1).Value


Call UserForm_Initialize


End Sub
 
hata

buradaki hatayı çözemedim, yardımcı olabilirmisniz ?
 
Geri
Üst