• DİKKAT

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

Type Mismatch

Katılım
27 Nisan 2012
Mesajlar
71
Excel Vers. ve Dili
2007
Merhabalar,
Bir konuda danışmak istiyorum. maalesef örnek dosya koyamayacağım çünkü soracağım soru iş yerimdeki bir excel çalışma dosyası ile alakalı. excelde daha önce bir çalışma yapılmış ve belli hesaplar sonrasında bir malzeme listesi oluşuyor. Hangi parçadan kaç adet olacağı ve bu liste butona tıklanıldığı yeni bir excel sayfasında oluşuyor. Yani makro ile formül sayfasındaki veriler kopyalanıp yeni bir excel sayfası açılıp ona değerler yapıştırılıyor otomatik olarak. ayrıca eğer listedeki herhangi bir ürünün adeti 0 ise onun olduğu satır siliniyor. Bugün aynı excelden yapmaya çalıştım yani butondaki makroyu kendi excelime kopyala yapıştırdım ancak type mismatch hatası verdi. Bu neyden kaynaklanıyor olabilir? benim excelim 2013 o ise excel 2003 ya da 2007 de hazırlamış olmalı. Bundan kaynaklanabilir mi? Eğer böyle ise ne yapmalıyım?
 
Merhabalar
Çok acil lazım bana lütfen bu konu hakkında fikir verebilir misiniz?
 
hata kodu ne?

Type Mismatch hatasında hata kodu da olmalı, parantez içinde onuda yaz?!
 
Merhaba,

tanımlanan veri tipleri birbiri ile uyumlu değil demek. Yani bir karşılaştırma yapacaksınız a ile b verisini, a verisi integer, b verisini ise String tanımlı olsa bu hatayı alırsınız.
 
Type mismatch yanında başka bir şey yazmıyor maalesef. Tek bunun yazdığı bir küçük pencere açılıyor. verilerin hepsi string olarak tanımlanmış. Benim excelimde parça adı karşısında adeti karşısında ağırlığı yazıyor. makro ile bunların formül olarak değil de değer olarak taşınması için string olarak tanımlı olması hata verebilir mi? Karşılaştırmadan tam kastedileni anlayamadım. kodları kopyaladım burdan bir şey bulabilir miyiz?

Sub yazici1()
Dim s As String, sor As String, dosya As String
dosya = ""
s = ThisWorkbook.Name

Application.ScreenUpdating = True
j = 0
For i = 5 To 300
If Worksheets("M").Cells(i, 5) = 0 Then
Application.ScreenUpdating = False
Worksheets("M").Rows(i + 1).Hidden = True
Worksheets("M").Cells(i, 1) = j
Else
Application.ScreenUpdating = False
Worksheets("M").Rows(i).Hidden = False
j = j + 1
Worksheets("M").Cells(i, 1) = j
End If
Next i

Worksheets("M").PrintPreview
Worksheets("M").Visible = True
Worksheets("M").Select
Worksheets("M").Copy

t = ActiveSheet.UsedRange.Rows.Count
For i = t To 1 Step -1
If Worksheets("M").Cells(i, 5) = 0 Then
Rows(i).Delete Shift:=xlUp
End If
Next i

Application.ScreenUpdating = True

With Worksheets("M")

.Range("A1:K300").Copy
.Range("A1:K300").PasteSpecial _
Paste:=xlPasteValues

End With

dosya = Worksheets("M").Cells(1, 7) & " - " & Worksheets("M").Cells(1, 5) & " - " & Worksheets("M").Cells(2, 5)


sor = InputBox("Proje adı", "UYARI", Default:=dosya)


'Dosya adında bu karakterler bulunamaz
'\/:*?"<>|

sor = Replace(sor, "/", "-")
sor = Replace(sor, "*", "-")
sor = Replace(sor, "\", "-")
sor = Replace(sor, ":", "-")
sor = Replace(sor, "?", "-")
sor = Replace(sor, "<", "-")
sor = Replace(sor, ">", "-")
sor = Replace(sor, "|", "-")

Workbooks(Workbooks.Count).SaveAs _
Filename:="\\obialfile\Obialfile\08_SEVKIYAT\2013\" & sor & ".xls", _
FileFormat:=xlNormal, _
Password:="", _
WriteResPassword:="", _
ReadOnlyRecommended:=False, _
CreateBackup:=False


Workbooks(Workbooks.Count).Close

Worksheets("M").Visible = False
End Sub
 
Merhaba,

Kodlara böyle bakarak ve içindeki değerleri de bilmeden anlamak zor.

Kodları adım adım çalıştırın ve hata verdiği satırı inceleyin.
 
Peki teşekkür ederim. İyi günler
 
Geri
Üst