• DİKKAT

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

Formulu vba koduna çevirme

  • Konbuyu başlatan Konbuyu başlatan mrt
  • Başlangıç tarihi Başlangıç tarihi

mrt

Katılım
11 Mayıs 2005
Mesajlar
167
Excel Vers. ve Dili
office 2003 tr & eng.
office 2007 tr & eng.
Selamlar,

Veri girişi yapılan 3 dosyadaki biligileri, Vlookup ile başka bir dosyada karşılaştırma yapmam gerekiyor.

Bunun için, ORNEK adlı dosyada;

=IF(IF(IF(ISERROR(VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0)),"BOS",VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0))="BOS",IF(ISERROR(VLOOKUP(C6,[elden2.xls]Sheet1!$A$1:$A$65536,1,0)),"HATA",VLOOKUP(C6,[elden2.xls]Sheet1!$A$1:$A$65536,1,0)),IF(ISERROR(VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0)),"BOS",VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0)))="HATA",IF(ISERROR(VLOOKUP(C6,[elden3.xls]Sheet1!$A$1:$A$65536,1,0)),"OKUTULMADI",VLOOKUP(C6,[elden3.xls]Sheet1!$A$1:$A$65536,1,0)),IF(IF(ISERROR(VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0)),"BOS",VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0))="BOS",IF(ISERROR(VLOOKUP(C6,[elden2.xls]Sheet1!$A$1:$A$65536,1,0)),"HATA",VLOOKUP(C6,[elden2.xls]Sheet1!$A$1:$A$65536,1,0)),IF(ISERROR(VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0)),"BOS",VLOOKUP(C6,[elden.xls]Sayfa1!$A:$A,1,0))))


Formulunu kullanıyorum.

Bu formulu VBA olarak nasıl yazabilirim ?
 

Ekli dosyalar

Lütfen Yardımcı olabilecek biri yokmu acaba
 
Selamlar,

Bir büyüğümün yardımlarıyla aşağıdaki mantıkla sorumu çözdüm.

Sub DUESEYARA_YAP()
Dim el1 As Worksheet
Dim el2 As Worksheet
Dim el3 As Worksheet
Dim sevk As Worksheet
Dim sayEl1 As Integer
Dim sayEl2 As Integer
Dim sayEl3 As Integer
Dim saySevk As Integer
Dim i As Integer
Dim j As Integer

Set el1 = Workbooks("elden.xls").Worksheets("Sayfa1")
Set el2 = Workbooks("elden2.xls").Worksheets("Sayfa1")
Set el3 = Workbooks("elden3.xls").Worksheets("Sayfa1")
Set sevk = Workbooks("SevkDosyasi.xls").Worksheets("Sayfa1")

sayEl1 = WorksheetFunction.CountA(el1.Range("A1:A65536")) + 5
sayEl2 = WorksheetFunction.CountA(el2.Range("A1:A65536")) + 5
sayEl3 = WorksheetFunction.CountA(el3.Range("A1:A65536")) + 5
saySevk = WorksheetFunction.CountA(sevk.Range("C6:C65536")) + 5

For j = 6 To saySevk
For i = 6 To sayEl1
If sevk.Cells(j, "C") = el1.Cells(i, "A") Then
sevk.Cells(j, "D") = sevk.Cells(j, "C")
sevk.Cells(j, "E") = "elden dosyası"
Exit For
End If
Next i

For i = 6 To sayEl2
If sevk.Cells(j, "C") = el2.Cells(i, "A") Then
sevk.Cells(j, "D") = sevk.Cells(j, "C")
sevk.Cells(j, "E") = "elden2 dosyası"
Exit For
End If
Next i

For i = 6 To sayEl3
If sevk.Cells(j, "C") = el3.Cells(i, "A") Then
sevk.Cells(j, "D") = sevk.Cells(j, "C")
sevk.Cells(j, "E") = "elden3 dosyası"
Exit For
End If
Next i
Next j
End Sub
 
Geri
Üst