وعليكم السلام
انا رأيي لو كان التوزيع عشوائي او بالتوالي واحد ثم الذي يليه
عموما تفضل هذا الكود يعمل حسب طلبك
On Error GoTo err_g
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE Matches.*, * FROM Matches"
DoCmd.SetWarnings True
Dim rs, rs2 As Recordset
Dim i, i2, c0, c1, c2 As Integer
Set rs = CurrentDb.OpenRecordset("Qry1")
Set rs2 = CurrentDb.OpenRecordset("Matches")
c0 = DCount("*", "Qry1")
c1 = c0 \ 2
c2 = c0 Mod 2
If c2 = 1 Then c1 = c1 + 1
rs.MoveFirst
For i = 1 To c0
If rs.RecordCount = c1 + 1 Then
rs2.MoveFirst
For i2 = rs.RecordCount To c0
rs2.Edit
rs2!player2 = rs!player
rs2.Update
rs2.MoveNext
rs.MoveNext
Next i2
If rs.RecordCount = c0 Then GoTo g
Else
rs2.AddNew
rs2!player1 = rs!player
rs2.Update
rs.MoveNext
End If
Next i
g:
If c2 = 1 Then
rs2.MoveLast
rs2.Edit
rs2!player2 = " بدون منافس"
rs2.Update
Else
Exit Sub
End If
rs.Close
rs2.Close
err_g:
Exit Sub
Append2.rar
الكود الذي عندك ، المفروض يجمع استعلامين عن طريق Union ،
ويجب ان تكون حقول الاستعلامين المتشابهة تحت بعضها ،
وانت تستخدم حقول الجدول table1 التاليه ، فرجاء كتابة اسماء الحقول المشابهة لها من الجدول Sales ،
Select ID, earia, kind, date, esal_num, quant, acc_nam, acc_num, delev_dest, amount, wrong_acc FROM table1"
جعفر
انت تريد تحديد مثلا بداية تاريخ الاجر 1/1/2017
وتاريخ نهاية الاجر 31/1/2017
هذا شهر اذا كنت تريد بنفس هذه الطريقة لازم تسوي جدول منفصل
تحط فيه الشهر مثلا 1-2-3 الاثنى عشر شهر
وتحدد فيه تاريخ البداية وتاريخ النهاية
وبذلك تستطيع الجمع بعد ذلك من الجدول حسب الفترات التي حددتها في هذا الجدول بالتوفيق