İki Tablo Karşılaştırmada Yardım Talebi

Katılım
23 Temmuz 2008
Mesajlar
79
Excel Vers. ve Dili
türkçe 2003
Altın Üyelik Bitiş Tarihi
20.12.2022
Arkadaşlar yardım ederseniz sevinirim.
Şimdi anlatmakta zorlanıyorum ama bir örnek dosya ekledim sanırım oradan daha rahat anlaşılır diye düşünüyorum. Gerçek dosyayı göndermememdeki sebep özel bilgiler olması anlayışla karşılayacağınızı düşünüyorum. Ama toplamda 1010 ve 1640 adet satırlık iki tablo mevcut.
Kısaca Sayfa1'deki ilk 3 sütundaki verilerin Sayfa2'deki tabloda aynıları bulunup onların yanındaki ilk 3 satırlara getirilmesini istiyorum. Umarım yardım edersiniz.
 

Ekli dosyalar

Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Örnek dosyanız ektedir.
 

Ekli dosyalar

  • 9.2 KB Görüntüleme: 14
Katılım
23 Temmuz 2008
Mesajlar
79
Excel Vers. ve Dili
türkçe 2003
Altın Üyelik Bitiş Tarihi
20.12.2022
Örnek dosyanız ektedir.
Dosyanız eklidir
çıtır ve turist arkadaşlarım teşekkür ederim. Gerçekten büyük bir yükten kurtuldum. Kendi dosyama uygulamayı başardım ama sanırım eksik söylemiş olduğum için yapılmadı veya belki de yapılamıyor olabilir. Ama bazı hücrelerde ki renkleri de aynen almam gerekiyor onları almamızın bir yolu varmıdır. Çünkü renklerin hepsi dikkat etmemiz gereken bazı şeyleri ifade ediyor.
 

turist

Destek Ekibi
Destek Ekibi
Katılım
18 Kasım 2009
Mesajlar
5,102
Excel Vers. ve Dili
2013 64Bit
English
Renkler, gelişigüzel değilse; Koşullu biçimlendirme yapabilirsiniz.
Renklerin hangi koşulda sarı,kırmızı,mavi vb. olacağı belliyse, kolayca yapabilirsiniz.
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Benim düşüncem ,fakat daha değişik düşünçeler olabilir.
Renkleri almanızda bir kriter var ise ve çok sayıda renk olmazsa koşullu biçimlendirme ile yoksa makro ile yapılır.
 
Katılım
23 Temmuz 2008
Mesajlar
79
Excel Vers. ve Dili
türkçe 2003
Altın Üyelik Bitiş Tarihi
20.12.2022
Renkler, gelişigüzel değilse; Koşullu biçimlendirme yapabilirsiniz.
Renklerin hangi koşulda sarı,kırmızı,mavi vb. olacağı belliyse, kolayca yapabilirsiniz.
Benim düşüncem ,fakat daha değişik düşünçeler olabilir.
Renkleri almanızda bir kriter var ise ve çok sayıda renk olmazsa koşullu biçimlendirme ile yoksa makro ile yapılır.
Aslında renklerdeki olay şöyle, (bu arada renkleri farklı bir kişi tek tek yapmıştı) kişilerin daha önceki uyum düzenine bağlı olarak 3 ana renk ile iyidn kötüye göre birebir görüşmeler sonrasında veriliyor. Yani elde tutulan başka bir veri yok.
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Kodu deneyiniz.
Kod:
Sub renklendir()
Application.ScreenUpdating = False
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
son1 = s1.Cells(65336, "E").End(3).Row
son2 = s2.Cells(65336, "E").End(3).Row
On Local Error Resume Next
Dim i As Long
For i = 3 To son2
say = WorksheetFunction.CountIf(s1.Range("E3:E" & son1), Range("E" & i))
If say > 0 Then
bul = WorksheetFunction.Match(s2.Range("E" & i), s1.Range("E3:E" & son1), 0) + 2
renk = s1.Range("A" & bul).Interior.Color
    s2.Range("a" & i).Resize(1, 7).Interior.Color = renk
    If Err.Number = 1004 Then
    s2.Range("a" & i).Resize(1, 7).Interior.Color = xlNone
       Err.Clear
       End If
        End If
Next
i = Empty
Application.ScreenUpdating = True
MsgBox "İşlem Bitirilmiştir", vbInformation
End Sub
 
Katılım
23 Temmuz 2008
Mesajlar
79
Excel Vers. ve Dili
türkçe 2003
Altın Üyelik Bitiş Tarihi
20.12.2022
Kodu deneyiniz.
Kod:
Sub renklendir()
Application.ScreenUpdating = False
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
son1 = s1.Cells(65336, "E").End(3).Row
son2 = s2.Cells(65336, "E").End(3).Row
On Local Error Resume Next
Dim i As Long
For i = 3 To son2
say = WorksheetFunction.CountIf(s1.Range("E3:E" & son1), Range("E" & i))
If say > 0 Then
bul = WorksheetFunction.Match(s2.Range("E" & i), s1.Range("E3:E" & son1), 0) + 2
renk = s1.Range("A" & bul).Interior.Color
    s2.Range("a" & i).Resize(1, 7).Interior.Color = renk
    If Err.Number = 1004 Then
    s2.Range("a" & i).Resize(1, 7).Interior.Color = xlNone
       Err.Clear
       End If
        End If
Next
i = Empty
Application.ScreenUpdating = True
MsgBox "İşlem Bitirilmiştir", vbInformation
End Sub
Hocam çok teşekkür ederim. Rabbim sizden de turist arkadaşımızdan da razı olsun. Baya bir zorlandım ama sonunda oldu. Son bir şey daha istesem mümkün müdür? Şu fonksiyonları yorumlamak kolay oldu. Ancak kod kısmını yorumlayamadım. Çok zor olmazsa yaptığım işi bilerek yapmak daha iyi olacaktır. Kısa kısa anlatabilir misiniz?
 

turist

Destek Ekibi
Destek Ekibi
Katılım
18 Kasım 2009
Mesajlar
5,102
Excel Vers. ve Dili
2013 64Bit
English
Allah sizden de razı olsun.Sağolun.
Sayın @çıtır (Elinize sağlık) size yardımcı olacaktır.
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Sayın uyecik;
vba kodlarıda fonksiyonlarla benner sadece burda döngü kurma olayı var. For i = 3 to son2 gibi sayfa1 deki satırlarlar sayfa2 deki satırları eşleştiriyor ve eşleşen satırların rengini sayfa2 aynı satıra taşıyor.Burda önerim vba makro konusunda döngülerden başlayarak incelemenizi tafsiye ederim.Kolay gelsin.Dönüş yaptığınız için teşekkür ederim.
 
Üst