Tevfik_Kursun
Altın Üye
- Katılım
- 30 Temmuz 2012
- Mesajlar
- 3,903
- Excel Vers. ve Dili
- Office 2016 Pro - Türkçe 64 Bit
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Option Explicit
Sub Varsa_Getir()
Dim Veri As Variant, Son As Long, X As Long
Dim Dizi As Object, Zaman As Double, Say As Long
Zaman = Timer
Set Dizi = CreateObject("Scripting.Dictionary")
Range("Q5:R404").ClearContents
Son = Cells(Rows.Count, 2).End(3).Row
Veri = Range("B5:I" & Son).Value
ReDim Liste(1 To 400, 1 To 2)
For X = LBound(Veri) To UBound(Veri)
If Veri(X, 8) <> "" Then
If Not Dizi.Exists(Veri(X, 8)) Then
Say = Say + 1
Dizi.Add Veri(X, 8), Say
Liste(Say, 1) = Say
Liste(Say, 2) = Veri(X, 1)
Else
Liste(Dizi.Item(Veri(X, 8)), 2) = Liste(Dizi.Item(Veri(X, 8)), 2) & Veri(X, 1)
End If
End If
Next
Range("Q5").Resize(Say, 2) = Liste
Set Dizi = Nothing
MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
"İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub
Option Explicit
Sub Varsa_Getir()
Dim Veri As Variant, Son As Long, X As Long
Dim Dizi As Object, Zaman As Double, Say As Long
Zaman = Timer
Set Dizi = CreateObject("Scripting.Dictionary")
Range("Q5:R404").ClearContents
Son = Cells(Rows.Count, 2).End(3).Row
Veri = Range("B5:I" & Son).Value
ReDim Liste(1 To 400, 1 To 2)
For X = 1 To 400
Dizi.Item(X) = X
Liste(X, 1) = X
Next
For X = LBound(Veri) To UBound(Veri)
If Veri(X, 8) <> "" Then
If Dizi.Exists(Veri(X, 8)) Then
Liste(Dizi.Item(Veri(X, 8)), 1) = Dizi.Item(Veri(X, 8))
Liste(Dizi.Item(Veri(X, 8)), 2) = Liste(Dizi.Item(Veri(X, 8)), 2) & Veri(X, 1)
End If
End If
Next
Range("Q5").Resize(400, 2) = Liste
Set Dizi = Nothing
MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
"İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub
Option Explicit
Sub Varsa_Getir_Ay()
Dim Veri As Variant, Son As Long, X As Long, Ay As Byte
Dim Dizi As Object, Zaman As Double, Say As Long
Zaman = Timer
Range("Q5:S504").ClearContents
Set Dizi = CreateObject("Scripting.Dictionary")
Son = Cells(Rows.Count, 2).End(3).Row
Veri = Range("B5:H" & Son).Value
ReDim Liste(1 To [B2], 1 To 2)
For X = 1 To [B2]
Dizi.Item(X) = X
Liste(X, 1) = X
Next
For X = LBound(Veri) To UBound(Veri)
If Veri(X, 7) <> "" Then
Ay = Month(Veri(X, 7))
If Dizi.Exists(Ay) Then
Liste(Dizi.Item(Ay), 1) = Dizi.Item(Ay)
Liste(Dizi.Item(Ay), 2) = Liste(Dizi.Item(Ay), 2) & Veri(X, 1)
End If
End If
Next
Range("Q5").Resize([B2], 2) = Liste
Set Dizi = Nothing
MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
"İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub
Sub Varsa_Getir_Hafta()
Dim Veri As Variant, Son As Long, X As Long, Hafta As Byte
Dim Dizi As Object, Zaman As Double, Say As Long
Zaman = Timer
Range("Q5:S504").ClearContents
Set Dizi = CreateObject("Scripting.Dictionary")
Son = Cells(Rows.Count, 2).End(3).Row
Veri = Range("B5:H" & Son).Value
ReDim Liste(1 To [C2], 1 To 2)
For X = 1 To [C2]
Dizi.Item(X) = X
Liste(X, 1) = X
Next
For X = LBound(Veri) To UBound(Veri)
If Veri(X, 7) <> "" Then
Hafta = Application.WeekNum(Veri(X, 7))
If Dizi.Exists(Hafta) Then
Liste(Dizi.Item(Hafta), 1) = Dizi.Item(Hafta)
Liste(Dizi.Item(Hafta), 2) = Liste(Dizi.Item(Hafta), 2) & Veri(X, 1)
End If
End If
Next
Range("Q5").Resize([C2], 2) = Liste
Set Dizi = Nothing
MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
"İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub
Sub Varsa_Getir_Gun()
Dim Veri As Variant, Son As Long, X As Long, Gun_Say As Integer
Dim Dizi As Object, Zaman As Double, Say As Long, Baslangic_Tarihi As Date
Zaman = Timer
Range("Q5:S504").ClearContents
Set Dizi = CreateObject("Scripting.Dictionary")
Son = Cells(Rows.Count, 2).End(3).Row
Veri = Range("B5:H" & Son).Value
Baslangic_Tarihi = Range("A1").Value
ReDim Liste(1 To [D2], 1 To 2)
For X = 1 To [D2]
Dizi.Item(X) = X
Liste(X, 1) = X
Next
For X = LBound(Veri) To UBound(Veri)
If Veri(X, 7) <> "" Then
Gun_Say = Veri(X, 7) - Baslangic_Tarihi + 1
If Dizi.Exists(Gun_Say) Then
Liste(Dizi.Item(Gun_Say), 1) = Dizi.Item(Gun_Say)
Liste(Dizi.Item(Gun_Say), 2) = Liste(Dizi.Item(Gun_Say), 2) & Veri(X, 1)
End If
End If
Next
Range("Q5").Resize([D2], 2) = Liste
Set Dizi = Nothing
MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
"İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub