DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Çok teşekkür ederim attığınız dosya için. Kombinasyonu kendiyle kombine olmayacak şekilde yapabilir miyiz?
Hocam mesela 10,20,30,40,50 olan bir data serisinde, ekte yer alan resimdeki gibi (10,20), (10,30), (10,40), (10,50) olacak. Yani seride (10,10) yok. Data serisindeki bir data kendiyle eşleşmeyecek.
selamlar acaba vba kodunu paylaşma şansınız var mı?Merhaba
Bir yukardaki #10 nolu mesajımda eklediğim dosyada bazı hatalar farkettim.
Dosyanın düzeltilmiş son hali Ek 'tedir.
Yukardaki dosyayı indiren arkadaşlar bu son eklediğim dosyayı kullansınlar.
Selamlar...
selamlar acaba vba kodunu paylaşma şansınız var mı?

Sub Kombinasyon_Aktar()
'28.09.2020 11:30
zaman = Timer
Cells(6, 5) = ""
Cells(7, 5) = ""
Cells.Interior.Color = xlNone
Range("F1:P" & ActiveSheet.Rows.Count).ClearContents
satırsayısı = ActiveSheet.Rows.Count
Range("F1:G1").Merge
Range("I1:K1").Merge
Range("M1:P1").Merge
Range("E7:E9").Merge
Range("E7:E9").WrapText = True
Range("E7:E9").Font.Size = 12
Cells(1, 6) = "2 'li Kombinasyon"
Cells(1, 9) = "3 'lü Kombinasyon"
Cells(1, 13) = "4 'lü Kombinasyon"
Range("F1").Select
DoEvents
timer1 = Timer
Do While Timer - timer1 < 0.3
Loop
Application.ScreenUpdating = False
DoEvents
sona = Cells(Rows.Count, 1).End(3).Row
Cells(6, 5) = "Eleman Sayısı : " & sona - 1
Cells(6, 5).Font.Bold = True
Cells(1, 1).Interior.Color = RGB(255, 192, 0)
Range(Cells(2, 1), Cells(sona, 1)).Interior.Color = RGB(255, 230, 153)
ReDim dizi(sona)
For i = 1 To sona
dizi(i) = Cells(i, 1)
Next
'Cells(1, 6) = "2 'li Kombinasyon"
Cells(7, 5) = "2 'li Kombinasyon Üzerinde Çalışıyorum"
s2 = s2 + 1
For i = 2 To sona
For j = i + 1 To sona
If s2 > satırsayısı Then
Application.ScreenUpdating = True
Cells(7, 5) = "2 'li Kombinasyon Çözümü" & Chr(10) & "Toplam Satır Sayısını Aştı." & Chr(10) & "Geçen Süre : " & Int(Timer - zaman) + 1 & " Sn."
Cells(1, 6) = "2 'li Kombinasyon" & Chr(10) & " Şu ana Kadar " & s2 - 1 & " Adet"
Cells(1, 6).Interior.Color = RGB(146, 208, 80)
Range(Cells(2, 13), Cells(satırsayısı, 16)).Interior.Color = RGB(255, 230, 153)
MsgBox "Çözüm Toplam Satır Sayısını (" & ActiveSheet.Rows.Count & ") Aştı." & Chr(10) _
& Chr(10) & "Listeleme Sonlandırıldı" & Chr(10) & Chr(10) _
& "İşlem Süresi : " & Int(Timer - zaman) + 1 & " Sn."
Exit Sub
End If
s2 = s2 + 1
Cells(s2, 6) = dizi(i)
Cells(s2, 7) = dizi(j)
Next
Next
Cells(1, 6) = "2 'li Kombinasyon" & Chr(10) & s2 - 1 & " Adet"
Cells(7, 5) = "3 'lü Kombinasyon Üzerinde Çalışıyorum"
Cells(1, 6).Interior.Color = RGB(255, 192, 0)
Range(Cells(2, 6), Cells(s2, 7)).Interior.Color = RGB(255, 230, 153)
Application.ScreenUpdating = True
DoEvents
timer1 = Timer
Do While Timer - timer1 < 0.1
Loop
DoEvents
Application.ScreenUpdating = False
'Cells(1, 9) = "3 'lü Kombinasyon"
'Cells(7, 5) = "3 'lü Kombinasyon Üzerinde Çalışıyorum"
s3 = s3 + 1
For i = 2 To sona
For j = i + 1 To sona
For p = j + 1 To sona
If s3 > satırsayısı Then
Application.ScreenUpdating = True
Cells(7, 5) = "3 'lü Kombinasyon Çözümü" & Chr(10) & "Toplam Satır Sayısını Aştı." & Chr(10) & "Geçen Süre : " & Int(Timer - zaman) + 1 & " Sn."
Cells(1, 9) = "3 'lü Kombinasyon" & Chr(10) & " Şu ana Kadar " & s3 - 1 & " Adet"
Cells(1, 9).Interior.Color = RGB(146, 208, 80)
Range(Cells(2, 13), Cells(satırsayısı, 16)).Interior.Color = RGB(255, 230, 153)
MsgBox "Çözüm Toplam Satır Sayısını (" & ActiveSheet.Rows.Count & ") Aştı." & Chr(10) _
& Chr(10) & "Listeleme Sonlandırıldı" & Chr(10) & Chr(10) _
& "İşlem Süresi : " & Int(Timer - zaman) + 1 & " Sn."
Exit Sub
End If
s3 = s3 + 1
Cells(s3, 9) = dizi(i)
Cells(s3, 10) = dizi(j)
Cells(s3, 11) = dizi(p)
Next
Next
Next
Cells(1, 9) = "3 'lü Kombinasyon" & Chr(10) & s3 - 1 & " Adet"
Cells(7, 5) = "4 'lü Kombinasyon Üzerinde Çalışıyorum"
Cells(1, 9).Interior.Color = RGB(255, 192, 0)
Range(Cells(2, 9), Cells(s3, 11)).Interior.Color = RGB(255, 230, 153)
Application.ScreenUpdating = True
DoEvents
timer1 = Timer
Do While Timer - timer1 < 0.1
Loop
DoEvents
Application.ScreenUpdating = False
'Cells(1, 13) = "4 'lü Kombinasyon"
s4 = s4 + 1
For i = 2 To sona
For j = i + 1 To sona
For p = j + 1 To sona
For d = p + 1 To sona
If s4 >= satırsayısı Then
Application.ScreenUpdating = True
Cells(7, 5) = "4 'lü Kombinasyon Çözümü" & Chr(10) & "Toplam Satır Sayısını Aştı." & Chr(10) & "Geçen Süre : " & Int(Timer - zaman) + 1 & " Sn."
Cells(1, 13) = "4 'lü Kombinasyon" & Chr(10) & " Şu ana Kadar " & s4 - 1 & " Adet"
Cells(1, 13).Interior.Color = RGB(146, 208, 80)
Range(Cells(2, 13), Cells(satırsayısı, 16)).Interior.Color = RGB(255, 230, 153)
MsgBox "Çözüm Toplam Satır Sayısını (" & ActiveSheet.Rows.Count & ") Aştı." & Chr(10) _
& Chr(10) & "Listeleme Sonlandırıldı" & Chr(10) & Chr(10) _
& "İşlem Süresi : " & Int(Timer - zaman) + 1 & " Sn."
Exit Sub
End If
s4 = s4 + 1
Cells(s4, 13) = dizi(i)
Cells(s4, 14) = dizi(j)
Cells(s4, 15) = dizi(p)
Cells(s4, 16) = dizi(d)
Next
Next
Next
Next
Cells(1, 13) = "4 'lü Kombinasyon" & Chr(10) & s4 - 1 & " Adet"
Cells(1, 13).Interior.Color = RGB(255, 192, 0)
Range(Cells(2, 13), Cells(s4, 16)).Interior.Color = RGB(255, 230, 153)
Rows("1:1").RowHeight = 49
Cells(7, 5) = "İşlem Tamam" & Chr(10) & "Geçen Süre : " & Int(Timer - zaman) + 1 & " Sn."
Application.ScreenUpdating = True
MsgBox "İşlem Tamam" & Chr(10) & Chr(10) & "İşlem Süresi : " & Int(Timer - zaman) + 1 & " Sn.", , "İŞLEM"
End Sub