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

دالة لاستخراج العملاء المتحركين خلال الاشهر


mubcom

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

لدى عدد من العملاء 803 عميل من كود 102 الى كود 906 

والاعمده المقابله لحركتهم كل شهر

فانا اريد امام كود كل عميل اذا كان تحرك فى اول عمود نكتب امامه متحرك هذا الشهر

واذا توجد كوده فى العمود للشهر السابق ولم يتواجد فى المتحرك هذا الشهر نكتب اول شهر بلاحركه واذا توجد فى العمود الثالث ولم يتواجد فى العمودين السابقين نكتب ثانى شهر بلا حركه

وهكذا والعملاء الذين لم يرج كودهم بالاعمده يكتب امامهم مستمر بلا حركه

 

مع الشكر مقدما

الشرح هنا.xlsx

رابط هذا التعليق
شارك

السلام عليكم

برجاء  التوضيح اكثر 

يمكن التوضيح بارفاق حلول لهذه الامثلة 

 في اي عمود سيتم وضع الحل  

وهل من الممكن ان يتكرر رقم العميل  في الثلاث اعمدة   المتتالية 

رابط هذا التعليق
شارك

السلام عليكم ورحمة اللله

استخدم هذا الكود

Sub Purchses()
Dim C As Range
Dim x As Single, y As Single, z As Single
Dim AA As String, xx As String, yy As String, zz As String
AA = " مستمر بلا حركه"
xx = "متحرك هذا الشهر": yy = "أول شهر بلا حركه": zz = "ثانى شهر بلا حركه"

Application.ScreenUpdating = False
For Each C In Sheet1.Range("A3:A805")
x = WorksheetFunction.CountIf(Sheet1.Range("C3:C805"), C)
y = WorksheetFunction.CountIf(Sheet1.Range("D3:D805"), C)
z = WorksheetFunction.CountIf(Sheet1.Range("E3:E805"), C)
If x > 0 Then
C.Offset(0, 1) = xx
ElseIf x = 0 And y > 0 Then
C.Offset(0, 1) = yy
ElseIf x = 0 And y = 0 And z > 0 Then
C.Offset(0, 1) = zz
ElseIf x = 0 And y = 0 And z = 0 Then
C.Offset(0, 1) = AA
End If
Next
Application.ScreenUpdating = True
End Sub

 

  • Like 1
رابط هذا التعليق
شارك

عزيزى الاستاذ  shreif mohamed

انا للتوضيح اكثر هذه اكواد عملاء 

وفى العمود a وهى التى اريد النتائج امامها

بحيث العميل الذى اشترى منى خلال هذا الشهر فى العمود c فهو يعتبر عميل متحرك

والعميل الذى لا يتواجد كوده فى العمود c وموجود فى d  فهو لم يشترى هذا الشهر اول شهر له بدون حركه

وهكذا الى ان نصل لاكواد غير موجوده فى كل الاعمده تكون بلا حركه اطلاقا

 

اما عن التكرارا فالمهم هو العمود الاول فهو يعنى انه تحرك فى الشراء لهذا الشهر

اما ان تكرر فى العمود للشهر السابق فلا يهم

 

وموضح مثال لذلك بالملف المرفق

55.xlsx

شكرا استاذ / زيزو العجوز

 

ولكن الكود لم يعمب واليك الصور المرفقه

لو امكن تطبيق الكود وارسال الملف جاهزا اكون فى غاية الشكر

002.bmp

رابط هذا التعليق
شارك

السلام عليكم ورحمة الله

اليك الملف فقط اضغط على الزر

اذا اردت ان يعمل معك الكود الى آخر صف حتى فى حالة عدم وجود بيانات بالعمود  C

قم بالغاء هذا السطر من الكود

If C.Offset(0, 2) = "" Then Exit Sub

 

الشرح هنا.rar

رابط هذا التعليق
شارك

شكرا استاذ / زيزو العجوز

 

هل من الممكن تعديل الكود لاجراء بعض التعديلات 
فمثلا انا اريد ان تظهر النتائح اسفل الحركه فى العمود F

كما انه يزيد فى هذا الملف التالي

 الاساس هم العملاء فى العمود  B 

تظهر النتائح اسفل الحركه فى العمود F

اكواد العملاء المتواجدون فى العمود G يكتب متحرك هذا الشهر

اذا لم يتواجد كود العميل فى العمود H يكتب اول شهر بلا حركه

اذا لم يتواجد كود العميل العمود I يكتب ثاني شهر بلا حركه

اذا لم يتواجد كود العميل فى العمود J يكتب ثالث شهر بلا حركه

اذا لم يتواجد كود العميل فى G H I J يكتب مستمر بلا حركه

اخيرا تصفيه العملاء متحرك هذا الشهر اسفل القائمة

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

مع عدم المساس بالمسلسل عند التصفيه

مع جزيل الشكر مقدما

العملاء الغير متحركين.xlsx

تم تعديل بواسطه mubcom
رابط هذا التعليق
شارك

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