tahsinanarat
Altın Üye
- Katılım
- 14 Mart 2005
- Mesajlar
- 2,168
- Excel Vers. ve Dili
- Ofis 2019 Türkçe
- Altın Üyelik Bitiş Tarihi
- 27-05-2028
Kod:
Sub ArraytoDict()
Dim timer0 As Single
Dim kaynak As Worksheet
Dim hedef As Worksheet
Dim myArray() As Variant
Dim dict As Object
Dim i As Long
timer0 = Timer()
Application.ScreenUpdating = False
Set kaynak = ThisWorkbook.Worksheets("data")
Set hedef = ThisWorkbook.Worksheets("tc_sicil")
hedef.Range("B3:F" & Rows.Count).ClearContents
myArray = kaynak.Range("A2:F" & kaynak.Cells(kaynak.Rows.Count, "A").End(xlUp).Row).Value
Set dict = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(myArray, 1)
dict(myArray(i, 1)) = myArray(i, 2)
Next
Dim cell As Range
hedef.Select
Range("A2:A" & hedef.Cells(hedef.Rows.Count, "A").End(xlUp).Row).Select
For Each cell In Selection
cell.Offset(0, 1) = dict(cell.Value)
Next cell
Set dict = Nothing
Range("B2").Select
Application.ScreenUpdating = True
MsgBox "İşleminiz " & Timer - timer0 & " saniyede tamamlanmıştır."
End Sub
Benim istediğim C,D,E,F vs. sutunlarınıda almak istersem kodda nasıl bir revize yapmalıyım, çok denemeler yaptım ancak başarılı olamadım. Yardımcı olabilecek hocalarıma şimdiden teşekkür ederim.
Saygılar
Ekli dosyalar
-
142.3 KB Görüntüleme: 9