• DİKKAT

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

DlookUp hk.

Katılım
13 Temmuz 2013
Mesajlar
241
Excel Vers. ve Dili
Türkçe 2007
Arkadaşlar merhaba,

Çok fazla veriyi düşeyara yapmam gerekiyor fakat excel'de çok uzun sürdüğü için yapamıyorum. Acsees ile DlookUp işlevini kullanarak bu işlemi nasıl gereçkeştirebilirim? Yardımcı olabilirmisiniz...
 
dosyanızı ekerseniz excel'de de yapılabilir. makro ile çok kısa sürede sonuç alabilirsiniz.
 
merhaba, makro ile düşeyara formülünden daha hızlı işlem yaptırabiliyormuyuz? 500 bin adetlik veriyle farklı 500 bin adetlik veriyi eşleştirmeye çalışıyorum..
 
Örnek dosya ekler misiniz?
 
Korhan Bey,

Sayfa 1'de A sütununda yer alan verileri, Sayfa 2'de A sütunundaki verilerle eşleştirmek istiyorum. Her iki sayfadaki veride 500 bin adet. En hızlı nasıl yapabiliriz?
 
Eşleştiğinde sonuç olarak ne yazılması gerekiyor.
 
Eşleşen verinin 2.sayfada B sütununda yer alan değeri atması yeterli olacak..
 
Aşağıdaki kodu deneyiniz.

Kod:
Sub HIZLI_DÜŞEYARA()
    Dim S1 As Worksheet, S2 As Worksheet
    Dim Zaman As Double, Dizi As Variant, X As Long
    
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    
    Set S1 = Sheets("Sayfa1")
    Set S2 = Sheets("Sayfa2")
    
    Zaman = Timer
    
    Dizi = S2.Range("A1").CurrentRegion.Resize(, 2).Value
    
    With CreateObject("Scripting.Dictionary")
        For X = 2 To UBound(Dizi, 1)
            .Item(Dizi(X, 1)) = Dizi(X, 2)
        Next
        
        Dizi = S1.Range("A1").CurrentRegion.Resize(, 2).Value
        
        For X = 2 To UBound(Dizi, 1)
            If .Exists(Dizi(X, 1)) Then
                Dizi(X, 2) = .Item(Dizi(X, 1))
            Else
                Dizi(X, 2) = ""
            End If
        Next
    End With
    
    S1.Range("A1").CurrentRegion.Resize(, 2) = Dizi
    
    Application.ScreenUpdating = True
    
    MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & _
           "İşlem süresi ; " & Format((Timer - Zaman), "0.00000")
End Sub
 

Ekli dosyalar

Geri
Üst