• DİKKAT

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

düşeyarada VBA kodunda hata

Katılım
29 Mart 2006
Mesajlar
73
Güncel - Düşeyarada VBA kodunda hata

Yazılmış olan makroya ekleme yapmak istiyorum.
DA.XLSM adlı dosyadan makro araçılıgıyla veri almayı bir türlü başaramadım.
kod satırı aşağıdadır.

Yardımcı olabilirseniz memnun olurum.
Uygar


Kullanılan Dosya Adı : Da2.xlsm
Veri Alınacak olan Dosya Adı : Da.xlsm
Veri Alınacak Sayfa Adı : Kontaklar
Dosya Klasorleri : C:\Users\uygaroz\Desktop\Excel Dersleri\. denemeler\Düşeyara\

(İki dosyada bu klasörün içerisinde)

Kod :
Cells(sat, "z") = Application.VLookup(Cells(sat, "e"), Workbook(da.xlsm, Kontaklar!).Range("b:k"), 3, False)
 
Son düzenleme:
Aşağıdaki gibi dener misiniz?

Cells(sat, "z") = Application.VLookup(Cells(sat, "e"), '[da.xlsm]Kontaklar'!.Range("b:k"), 3, False)
 
Şöyle olur mu?

Cells(sat, "z") = Application.VLookup(Cells(sat, "e"), workbook("da.xlsm").sheets("Kontaklar").Range("b:k"), 3, False)
 
Pardon denedim de o da olmuyor galiba :(
 
Tüm Makroyu aşağıda yazıyorum.
workbook("da.xlsm").sheets("Kontaklar") yazdığımızda da (sizin verdiğiniz makro kodunu eklediğimde)
en üste çıkıp (sarıya boyayıp)

Workbook secili oluyor vede
bu satırda hata veriyor
Private Sub Worksheet_Change(ByVal Target As Range)

Hata Kodu
"Sub or function not defined"

----------Ekleme Yapılacak Olan Makro -----------

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, [d3:d65536]) Is Nothing Then Exit Sub
Set s1 = Sheets("Teklif")
sat = Target.Row
If Target = "" Then
For a = 5 To 20
Cells(sat, a) = ""
Next
Exit Sub
End If
bulsat = WorksheetFunction.Match(Target, s1.[e:e], 0)
Cells(sat, "e") = s1.Cells(bulsat, "c")
Cells(sat, "f") = s1.Cells(bulsat, "f")
Cells(sat, "g") = s1.Cells(bulsat, "d")
Cells(sat, "h") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[v:v])
Cells(sat, "I") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[ae:ae])
Cells(sat, "j") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[ap:ap])
Cells(sat, "l") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[ba:ba])
Cells(sat, "m") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[bc:bc])
Cells(sat, "n") = Cells(sat, "l") - Cells(sat, "m")
Cells(sat, "o") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[bg:bg])
Cells(sat, "p") = WorksheetFunction.SumIf(s1.[e:e], Target, s1.[bf:bf])
Cells(sat, "q") = Cells(sat, "n") / Cells(sat, "I")
Cells(sat, "r") = Cells(sat, "I") / Cells(sat, "h")
Cells(sat, "s") = Cells(sat, "j") / Cells(sat, "I")
Cells(sat, "t") = Cells(sat, "s") / s1.Range("Usd")
Cells(sat, "u") = Cells(sat, "s") / s1.Range("Euro")

Cells(sat, "z") = Application.VLookup(Cells(sat, "e"), Worksheets("Kontaklar").Range("b:k"), 3, False)
Cells(sat, "aa") = Application.VLookup(Cells(sat, "e"), Worksheets("Kontaklar").Range("b:k"), 5, False)
Cells(sat, "ab") = Application.VLookup(Cells(sat, "e"), Worksheets("Kontaklar").Range("b:k"), 8, False)

End Sub
----------Ekleme Yapılacak Olan Makro -----------
 
Son düzenleme:
Geri
Üst