صديقي احمد انا اشكرك على الحل
ولكن انا ارغب ان يكون الحل على شكل كود
شخص على الفيس بوك قدم لي الحل التالي
Sub TRans()
lr2 = Sheet1.Cells(Rows.Count, "b").End(xlUp).Row
If Cells(lr2, 4) = "" Or Cells(lr2, 5) = "" Or Cells(lr2, 6) = "" Or Cells(lr2, 6) = "" Then
MsgBox "ضع صفر مكان القيم الفارغة وضع الملاحظة"
Else
Dim myArray() As Variant
myArray = Range("a2:h" & Cells(Rows.Count, 1).End(xlUp).Row)
With Sheet2
lr = .Cells(.Rows.Count, "b").End(xlUp).Row
For Each c In Sheet1.Range("d2:d" & lr2)
For Each cc In Sheet2.Range("d2:d" & lr)
If c = cc Then MsgBox "Please Check Invoices number....": Exit Sub
Next
Next
.Cells(Rows.Count, 1).End(xlUp)(2, 1).Resize(UBound(myArray, 1), UBound(myArray, 2)).Value = myArray
For x = 2 To lr
Data = Application.WorksheetFunction.SumIf(.Range("$b$2:b" & x), .Range("b" & x), .Range("$e$2:e" & x))
Data2 = Application.WorksheetFunction.SumIf(.Range("$b$2:b" & x), .Range("b" & x), .Range("$f$2:f" & x))
.Range("g" & x).Value = Data - Data2
Next x
End With
MsgBox "DONE....", 64
End If
End Sub
حيث ان النص الملون بالاصفر مسؤول عن التحقق ولكن هذا الحل يبحث بالرقم فقط ولكن مثالي يجب عند التحقق يربط نوع السند مع رقم السند حيث ان اذا تكرر رقم 1 لرقم الفاتورة ورقم السند فهذا لا يعتبر تكرار حيث يجل ان لا يتكرر نوع سند يحمل نفس رقم السند مثلا لا يجب ان يكون هناك فاتورتين تحمل نفس الرقم اما وجود سند قبض وفاتورة تحمل نفس الرقم فلا مشكلة لا يعتبر تكرار