اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

تقرير من صفحة المشتريات والمبيعات  والخزينة بين تاريخين المجموعة لو اخترت مورد يظهر فى الاسم اسماء الموردين لو اخترت عميل يظهر اسماء العملاء ويتم احضار البيانات على اساس من التاريخ والى تاريخ  والاسم الاساسى بشرط اساسى الاسم

شيت حسابات.xlsm

قام بنشر

تفضل

Sub repport()

Dim smch As Worksheet
Dim smb As Worksheet
Dim tres As Worksheet
Dim targ As Worksheet
Set smch = Sheets("المشتريات")
Set smb = Sheets("المبيعات")
Set tres = Sheets("الخزينة")
Set targ = ActiveSheet
lrm = smch.Range("c" & Rows.Count).End(xlUp).Row
lrmb = smb.Range("c" & Rows.Count).End(xlUp).Row
lrtres = tres.Range("c" & Rows.Count).End(xlUp).Row

lrtg = targ.Range("a" & Rows.Count).End(xlUp).Row
targ.Range("a9:e" & lrtg).ClearContents
If targ.Range("d1") = "مورد" Then

For Each cell In smch.Range("e5:e" & lrm)

If cell.Value = targ.Range("d3") And cell.Offset(, -2).Value >= targ.Range("b2") And cell.Offset(, -2).Value <= targ.Range("b3") Then
lrtg = targ.Range("a" & Rows.Count).End(xlUp).Row

With targ
.Cells(lrtg + 1, 1) = cell.Offset(, -2).Value
.Cells(lrtg + 1, 2) = cell.Offset(, -1).Value
.Cells(lrtg + 1, 3) = cell.Offset(, 5).Value
For Each cell1 In tres.Range("j5:j" & lrtres)
lrtg = targ.Range("a" & Rows.Count).End(xlUp).Row

If cell1.Offset(, -4).Value = targ.Range("d3") And cell1.Value >= targ.Range("b2") And cell1.Value <= targ.Range("b3") Then
.Cells(lrtg + 1, 4).Offset(-1, 0) = cell1.Offset(, -6).Value
End If
Next cell1
End With
End If
Next
Else
For Each cell In smb.Range("e5:e" & lrmb)

If cell.Value = targ.Range("d3") And cell.Offset(, -2).Value >= targ.Range("b2") And cell.Offset(, -2).Value <= targ.Range("b3") Then
lrtg = targ.Range("a" & Rows.Count).End(xlUp).Row

With targ
.Cells(lrtg + 1, 1) = cell.Offset(, -2).Value
.Cells(lrtg + 1, 2) = cell.Offset(, -1).Value
.Cells(lrtg + 1, 3) = cell.Offset(, 5).Value
For Each cell1 In tres.Range("j5:j" & lrtres)
lrtg = targ.Range("a" & Rows.Count).End(xlUp).Row

If cell1.Offset(, -5).Value = targ.Range("d3") And cell1.Value >= targ.Range("b2") And cell1.Value <= targ.Range("b3") Then
.Cells(lrtg + 1, 4).Offset(-1, 0) = cell1.Offset(, -6).Value
End If
Next cell1
End With
End If
Next


End If


End Sub

 

شيت حسابات (1).xlsm

  • Like 1
قام بنشر

السلام عليكم مجهود رائع جدا بارك الله فيكم وجزاكم الله خيرا

لكن عند استدعاء التاريخ والبيانات يعتمد على البيانات فقط فى شيت المبيعات لا يضع الخزينة كتاريخ الايداع وعندما لا  يكون هناك بيانات فى المبيعات مثلا يقوم باخفاء كل شئ مثل الصورة المرفقة حضرتك عندما تكون فيه بيانات مبيعات بتاريخ مثلا 1/1 ودفع بتاريخ 1/1 ايضا يقوم بترتيبهم اسف بعض وليس فى سطر واحد

عندما اختار فى المربع الاصفر العملاء يظهر اسفله الاسماء قائمة منسدلة 

 

 

Untitled.png

قام بنشر

على حسب ملفك المرفق. انظر المشتريات  و الخزينة .

 

على حسب جدول التقرير .ييا اخي كيف تأتي بالبيانات من الخزينة الى التقرير اسفل و ليس اصلا نفس الجدول.

الكود  يعمل و ياتي لك حسب المورد و العميل . على أاساس  يأتي بالمبلغ فقط من الخزينة و  لقد وضعت انت في ملفك الاول الخزينة فوق المبلغ. أي ياتي بالمبلغ من االخزينة. و الكود يعمل جيدا حسب هذا

image.png.11ee29cad40f088a3c59bc2a9bd7da1c.png

و هذه من التقرير 

رimage.png.2bb3d139b4efea5ab2b4f3c365dad54d.pngو هذه  من الخزينة.  

image.png.60206817169b0714da78d93b7162c46a.png

 

و هذا عند تنفيذ الكود مثلا للمورد 1.. يطهر العمليات ما ببين التاريخيين . يعمل عادي.

 

image.png.b71b041a53029cf08a88fc13296d8063.png

قام بنشر

تسلم استاذى 

لكن يوجد ملحوظة 

عند وجود مبلغ فى الخزينة فى تاريخ ليس به فاتورة مبيعات او فاتورة مشتريات لا يستدعى المبلغ 

من فضلكم التعديل البسيط ده 

عند سداد مبالغ فى الخزينة وليس امامها فاتورة مبيعات او موردين لا تستعدى المبلغ فى التقرير

قام بنشر

الملف الاخير به  طلبكك.  لا  يستدعي االمبلغ  عند  عدم ووجود تتاريخ في الخزينة. بصراحة لم أفهم  ما تريد.  

قام بنشر

اريد فقط احضار المبيعات عند اختيار العملاء وايضا اختيار ما تم دفعه من العملاء للخزينة سواء تاريخ او رقم الاذن او المبلغ وكل اذن وتاريخ ومبلغ فى صف بمفرده واسفل منه رتاريخ الفاتورة ورقم الفاتورة والاصناف والكمية والمبلغ 

كشف حساب عميل او مورد بكل تفاصيله

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information