• DİKKAT

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

Iki çalışma sayfası arasında kontrol

ozanyakar

Altın Üye
Katılım
19 Temmuz 2010
Mesajlar
169
Excel Vers. ve Dili
2013 Türkçe
Merhaba,

A Çalışma sayfası ve B Çalışma sayfası arasında yeni bir çalışma sayfası kullanarak kontrol tablosu yapmak istiyorum. Şöyle ki ;

Ekte A ve B olmak üzere iki farklı çalışma sayfası mecvut. Bu sayfalarda fatura numaraları aynı fakat tutarları farklı. Fatura numaralarını referans alarak :
Yeni bir çalışma sayfasında A ve B arasındaki tutar farklarını nasıl bulabiliriz ?

Forumda benzer örnekler var ama istediğimi tam olarak bulamadım, yardımcı olur musunuz ...

Ekli dosyayı görüntüle A DOSYASI.xlsx

Ekli dosyayı görüntüle B DOSYASI.xlsx

Ekli dosyayı görüntüle KONTROL TABLOSU.xlsx
 
Merhaba Ozan Bey,

Kontrol Tablosu dosyasında boş bir Modüle bu kodları yapıştırıp F5 tuşuna basın;

Kod:
[FONT="Trebuchet MS"]Sub Emre()
    Dim aa As Workbook, bb As Workbook, Rky As Range, yol$, a$, b$, i%, s%
    yol = ThisWorkbook.Path
    a = yol & "\[COLOR="Red"]A DOSYASI.xlsx[/COLOR]"
    b = yol & "\[COLOR="RoyalBlue"]B DOSYASI.xlsx[/COLOR]"
    Application.ScreenUpdating = False
    Set [COLOR="Red"]aa[/COLOR] = Workbooks.Open(a)
    Set [COLOR="Blue"]bb [/COLOR]= Workbooks.Open(b)
    With [COLOR="Red"]aa[/COLOR].Sheets(1)
        For i = 2 To .Range("A65536").End(3).Row
            Set Rky = [COLOR="Blue"]bb[/COLOR].Sheets(1).Columns(1).Find(.Cells(i, 1).Value, , , 1)
            If Not Rky Is Nothing Then
                If Rky.Offset(0, 1).Value <> .Cells(i, 2).Value Then
                     s = s + 1
                     [COLOR="DarkOrange"]ThisWorkbook[/COLOR].Sheets(1).Cells(s, 1) = Rky.Value
                     [COLOR="DarkOrange"]ThisWorkbook[/COLOR].Sheets(1).Cells(s, 2) = Rky.Offset(0, 1).Value - .Cells(i, 2).Value
                End If
            End If
        Next i
    End With
    [COLOR="Red"]aa[/COLOR].Close False: [COLOR="Blue"]bb[/COLOR].Close False
    Application.ScreenUpdating = True
    s = Empty: i = Empty: yol = "": Set Rky = Nothing
    Set [COLOR="Blue"]bb [/COLOR]= Nothing: Set [COLOR="Red"]aa [/COLOR]= Nothing: a = "": b = ""
    MsgBox "Kontrol tamamlanmıştır.    ", vbInformation
End Sub[/FONT]
Not: Tüm dosyalar aynı klasör içinde olsun.
 
Son düzenleme:
Murat Hocam tam istediğim gibi olmuş. Elinize Sağlık. Çok teşekkürler.

Dosyaların adı değiştiğinde veya kontrol edeceğim satır sayısı daha fazla olduğunda makroda hangi alanları değiştirmem gerekir. ?
 
Satır sayısı ile ilgili bir değişiklik yapmanıza gerek yok.
Dosya isimlerini de kodda görebilirsiniz. O isimler yerine yeni isim yazabilirsiniz.
 
Teşekkür ederim Hocam. Eğitim proğramınız belli mi ? Yakında excel ya da VBA eğitimi olacak mı ?
 
formülü yapıştıramıyorum detaylı bir sekilde nasıl yapıcamı yazabilirmisiniz?
 
formülü yapıştıramıyorum detaylı bir sekilde nasıl yapıcamı yazabilirmisiniz?
. . .

Yukarıdaki paylaşımlar formül değil, makro kodlarıdır ve girişlerini VBA penceresinden yapmanız gerekir.

Aşağıdaki linkleri incelerseniz fikir edinebilirsiniz.
Tıkla ~ Tüm Excel Versiyonlarında Yeni Modül Ekleme ( Görsel Anlatım )
Tıkla ~ Excel 2003 Ve 2007 İçin Buton'A Makro Atamak (Resimli Anlatım)

. . .
 
Geri
Üst