• DİKKAT

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

ürün karşılaştırma

Katılım
17 Haziran 2007
Mesajlar
8
Excel Vers. ve Dili
office 2003 tr
arkadaşlar slm,

benim yapmaya çalıştığım şey örnekteki dosyada bulunan sayfa1 deki a,b,c,d sütunlarını sayfa2 deki a,b,c,d sütunları ile karşılaştırma yapmak.fakat şu şekilde sayfa1 baz alıp sayfa2 de eklenen yeni satır ve adet kısmını sayfa3 de gösterebilmek. umarım derdimi anlatabilmişimdir. herkese yardımları için teşekkürler.
 
yanıt

Sub test()
Set s1 = Sheets("sayfa1")
Set s2 = Sheets("sayfa2")
Set s3 = Sheets("sayfa3")
For i = 1 To 50
If s1.Range("a" & i) <> s2.Range("a" & i) And s1.Range("b" & i) <> s2.Range("b" & i) And s1.Range("c" & i) <> s2.Range("c" & i) And s1.Range("d" & i) <> s2.Range("d" & i) Then
s2.Range("a" & i).EntireRow.Copy
s = s + 1
s3.Range("a" & s).PasteSpecial
End If
Next
Application.CutCopyMode = False
End Sub
 
Sub test()
Set s1 = Sheets("sayfa1")
Set s2 = Sheets("sayfa2")
Set s3 = Sheets("sayfa3")
For i = 1 To 50
If s1.Range("a" & i) <> s2.Range("a" & i) And s1.Range("b" & i) <> s2.Range("b" & i) And s1.Range("c" & i) <> s2.Range("c" & i) And s1.Range("d" & i) <> s2.Range("d" & i) Then
s2.Range("a" & i).EntireRow.Copy
s = s + 1
s3.Range("a" & s).PasteSpecial
End If
Next
Application.CutCopyMode = False
End Sub

arkadaşım çok teşekkür ederim ama yapmış olduğun düğme bir olayı sadece 1 satırı ekliyo ve sayfa1 ile sayfa iki arasındaki farkı tam olarak vermiyor. sayfa 2 de adetlerde bazı ürünlerde farklılıklar var onlar çıkmıyor. acaba benmi yalnış bişey yaptım????
 
Kodu bunun ile de&#287;i&#351;tirp bir daha deneyiniz.
Sub test()
Set s1 = Sheets("sayfa1")
Set s2 = Sheets("sayfa2")
Set s3 = Sheets("sayfa3")
For i = 1 To 50
If s1.Range("a" & i) <> s2.Range("a" & i) Or s1.Range("b" & i) <> s2.Range("b" & i) Or s1.Range("c" & i) <> s2.Range("c" & i) Or s1.Range("d" & i) <> s2.Range("d" & i) Then
s2.Range("a" & i).EntireRow.Copy
s = s + 1
s3.Range("a" & s).PasteSpecial
End If
Next
Application.CutCopyMode = False
End Sub
 
Kodu bunun ile değiştirp bir daha deneyiniz.
Sub test()
Set s1 = Sheets("sayfa1")
Set s2 = Sheets("sayfa2")
Set s3 = Sheets("sayfa3")
For i = 1 To 50
If s1.Range("a" & i) <> s2.Range("a" & i) Or s1.Range("b" & i) <> s2.Range("b" & i) Or s1.Range("c" & i) <> s2.Range("c" & i) Or s1.Range("d" & i) <> s2.Range("d" & i) Then
s2.Range("a" & i).EntireRow.Copy
s = s + 1
s3.Range("a" & s).PasteSpecial
End If
Next
Application.CutCopyMode = False
End Sub

arkadaşım süpersin şimdi çalıştı bir ek olarak şunu ekleyebilirmiyiz. sayfa3 de 1 ve 2 arasındaki değişikliğe uğrayanları veriyor şuan. örnek olarak sayfa1 de 1 adet sayfa2 de 2 adet olanın arasındaki fark 1 adet oynamış şeklinde mümkünmüdür? çok teşekkür edrim yardımların için
 
Geri
Üst