• DİKKAT

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

Hücre değerleri eşitse başka bir hücreye ilk sayfadaki karşılık değeri girme

Katılım
17 Şubat 2016
Mesajlar
2
Excel Vers. ve Dili
EXCEL 2013
Arkadaşlar sorum şu çok büyük bir veri tabanı içinde; 1.sayfada A sütununda olan değer ile 2.sayfada A sütununda olan değerler eşitse(Ahmet=Ahmet) 1.sayfadaki I sütunundaki değeri 2.sayfadaki ı sütununa otomatik olarak nasıl yazdırabilirim? Şimdiden teşekkür ederim...
 
Merhaba,

Çok büyük veri tabanı dediğiniz için makro öneriyorum. Hız olarak iyi sonuç verecektir.

Deneyiniz. Sayfa isimlerini kendinize uyarlarsınız.

C++:
Option Explicit

Sub Fast_Vlookup()
    Dim S1 As Worksheet, S2 As Worksheet, Zaman As Double
    Dim Veri As Variant, Son As Long, X As Long
   
    Zaman = Timer
   
    Application.ScreenUpdating = False
   
    Set S1 = Sheets("Sheet1")
    Set S2 = Sheets("Sheet2")
   
    S2.Range("I:I").ClearContents
   
    Son = S1.Cells(S1.Rows.Count, 1).End(3).Row
    If Son = 1 Then Son = 2
    Veri = S1.Range("A1:I" & Son).Value
   
    With CreateObject("Scripting.Dictionary")
        For X = LBound(Veri, 1) To UBound(Veri, 1)
            .Item(Veri(X, 1)) = Veri(X, 9)
        Next
       
        Son = S1.Cells(S1.Rows.Count, 1).End(3).Row
        If Son = 1 Then Son = 2
        Veri = S2.Range("A1:I" & Son).Value
       
        For X = LBound(Veri, 1) To UBound(Veri, 1)
            If .Exists(Veri(X, 1)) Then
                Veri(X, 9) = .Item(Veri(X, 1))
            End If
        Next
       
        S2.Range("A1").Resize(UBound(Veri, 1), 9) = Veri
    End With
   
    Set S1 = Nothing
    Set S2 = Nothing
   
    Application.ScreenUpdating = True
   
    MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
           "İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub
 
Kendi belgenizde hız olarak nasıl bir sonuç aldınız?
 
Geri
Üst