سيف الدين حسام قام بنشر أكتوبر 21, 2014 قام بنشر أكتوبر 21, 2014 السلام عليكم ورحمة الله وبركاته مطلوب مساعدة - فاتورة بيع ترحل الى يومية مبيعات واعطاء الفاتورة التالية رقم مسلسل تلقائى واشكركم فاتورة ويومية مبيعات.rar
طارق محمود قام بنشر أكتوبر 22, 2014 قام بنشر أكتوبر 22, 2014 السلام عليكم تفضل أخي الملف وبه ماطلبت فاتورة ويومية مبيعات2.rar
ياسر خليل أبو البراء قام بنشر أكتوبر 22, 2014 قام بنشر أكتوبر 22, 2014 السلام عليكم تفضل أخي الملف وبه ماطلبت الأخ الحبيب والأستاذ الكبير والعالم الذي أتعلم منه دائما لا يسعني إلا أن أنحني أمامك تقديرا لك عمل رائع كعادتك دائما مبدع يا باشمهندس
طارق محمود قام بنشر أكتوبر 22, 2014 قام بنشر أكتوبر 22, 2014 بارك الله فيك أخي الحبيب الغالي / ياسر خليل مرورك الكربم شرف عظيم
سيف الدين حسام قام بنشر أكتوبر 22, 2014 الكاتب قام بنشر أكتوبر 22, 2014 السلام عليكم تفضل أخي الملف وبه ماطلبت جزاكم الله خيرا ووفقكم لما فيه الخير
سيف الدين حسام قام بنشر أكتوبر 22, 2014 الكاتب قام بنشر أكتوبر 22, 2014 أشكر كل من قام على هذا الصرح العلمى والعملى الكبير وجزاكم ربكم خيرا وهو خير الجزاء
إبراهيم ابوليله قام بنشر أكتوبر 22, 2014 قام بنشر أكتوبر 22, 2014 اخى واستاذنا طارق بالفعل كما قال اخى ياسر دائما ما نتعلم منك ودائما ما تبهرنا باعملك لما فيها دائما من جديد بارك الله فيك
إبراهيم ابوليله قام بنشر أكتوبر 22, 2014 قام بنشر أكتوبر 22, 2014 السلام عليكم تفضل أخي الملف وبه ماطلبت اخى واستاذنا طارق ممكن لو سمحت شرح الكود ان امكن وبالاخص n = LR - 17 nr + n - 1 تقبل تحياتى
طارق محمود قام بنشر أكتوبر 22, 2014 قام بنشر أكتوبر 22, 2014 السلام عليكم ممكن لو سمحت شرح الكود ان امكن وبالاخص n = LR - 17 nr + n - 1 أخي العزيز السطر التالي من الكود يتم تنفيذه أثناء تنشيط الورقة الأولي "فاتورة بيع" Dt = [J12]: BillN = [F14]: Tr_C = [J14]: Clnt = [J15]: n = LR - 17 وهو عبارة عن 5 أوامر مجتمعة يكافيء التالي Dt = [J12] BillN = [F14] Tr_C = [J14] Clnt = [J15] n = LR - 17 وكل جزء يأخذ قيمة من الورقة ويسجلها لنقلها فيما بعد للورقتين التاليتين أما الجزء n = LR - 17 بالتحديد فهو يعتمد علي أن أول بيانات مكتوبة بالورقة ستكون بالصف 18 فإذا لم يكتب بالفاتورة غير صنف واحد فيكون آخر صف LR = 18 وستأخذ n القيمة n = 18 - 17 =1 وهكذا فالمتغير n يعبر عن عدد الأسطر في الفاتورة =======================الشق الثاني nr + n - 1 وهذا يحدث في الورقتين الأخريتين بعد أن تكون نسخت البيانات وسجلتها كما سبق ولفهم هذه الجزئية لترجع قليلا في الكود ستجد الأوامر كالتالي nr = [F9999].End(xlUp).Row + 1 أي أن nr سيأخذ قيمة رقم الصف الجديد الجاهز للبيانات في تلك الورقات new row وعند الخلية التي بهذا السطر الجديد وتكون بالعمود F يتم لصق قيم لماسبق نسخه Cells(nr, "F").PasteSpecial Paste:=xlPasteValues ثم بفرض أن عدد أسطر الفاتورة التي يتم نقلها 3 إذن الصيغة التالي Range("E" & nr & ":E" & nr + n - 1) = Clnt تضع قيمة العميل Clnt في الأسطر الثلاثة بالعمود E والتي تبدأ من الصف الجديد الجاهز للبيانات مثلا إذا آخر الصف الجديد الجاهز للبيانات =20 وعدد أسطر الفاتورة التي يتم نقلها = 3 إذن Range("E" & nr & ":E" & nr + n - 1) = Clnt تعني Range("E" & 20 & ":E" & 20 + 3 - 1) = Clnt أي Range("E20:E22") = Clnt
إبراهيم ابوليله قام بنشر أكتوبر 23, 2014 قام بنشر أكتوبر 23, 2014 اخى طارق السلام عليكم ورحمة الله وبركاته بالفعل والله كما قلنا سابقا دائما مانتعلم منكم كل ماهو جديد بارك الله فيك اخى الحبيب تقبل تحياتى
سيف الدين حسام قام بنشر يناير 13, 2015 الكاتب قام بنشر يناير 13, 2015 الاستاذ الفاضل طارق محمود اعذرنى أن كنت تأخرت فى المشاركة والتفاعل لأنى مبتدأ فى تحرير الاكوادويرجع الفضل للاخ الفاضل الصـقر فى تشجيعى وتبسيط الامر لىلكنى الان حاولت دراسة وفهم - الكود اللى حضرتك كتبته لكن الجزئية دى ممكن حضرتك توضحها لى For Each cl In Range("B" & nr & ":B" & nr + n - 1) cl.Value = cl.Offset(-1, 0).Value + 1 تقبل تحياتى
طارق محمود قام بنشر يناير 13, 2015 قام بنشر يناير 13, 2015 ويرجع الفضل للاخ الفاضل الصـقر فى تشجيعى وتبسيط الامر لى لكنى الان حاولت دراسة وفهم - الكود اللى حضرتك كتبته لكن الجزئية دى ممكن حضرتك توضحها لى For Each cl In Range("B" & nr & ":B" & nr + n - 1) cl.Value = cl.Offset(-1, 0).Value + 1 السلام عليكم أخي الكريم أهلا بك ومرحبا دائما والشكر موصول لأخونا الغالي / الصـقر ، جزاه الله خيرا وجعل جهده في ميزان حسناته ================ أخي الكريم مرة أخري لفهم هذه الجزئية ترجع قليلا في الكود ستجد الأوامر كالتالي nr = [F9999].End(xlUp).Row + 1 أي أن nr سيأخذ قيمة رقم الصف الجديد الجاهز للبيانات في تلك الورقات new row وأيضا كما سبق ، الجزء n = LR - 17 يعتمد علي أن أول بيانات مكتوبة بالورقة ستكون بالصف 18 علي أساس أن LR = Last Row ولفهم الجزء الذي تسأل عنه ، نفرض أن آخر سطر به بيانات منقولة في تلك الورقة مثلا السطر رقم 25 أي أن nr سيأخذ قيمة رقم 25+1 = 26 مثلا و n مثلا =7 إذن For Each cl In Range("B" & nr & ":B" & nr + n - 1) تكون For Each cl In Range("B" & 26 & ":B" & 26 + 7 - 1) أي For Each cl In Range("B26:B32) تكون معناها أن إفعل التالي لكل عنصر من عناصر من خلايا النطاق B26:B32 (العنصر هنا هو cl أي الخلية ) والتالي المقصود هو cl.Value قيمة الخلية = cl.Offset(-1, 0).Value قيمة الخلية التي تسبقها في العمود وفي نفس صفها + 1 كل خلية تجعل قيمتها تساوي قيمة الخلية التي تعلوها في نفس العمود وتزيد عليها 1 طبعا أنت تعرف ان الدالة Offset تحرك المؤشر من الخلية cl إلي تلك التي تبعد عنها بمقدار صف واحد للأعلي -1 وفي نفس العمود 0 يعني في مثالنا هذا B26 سوف تساوي B25+1 و B27 سوف تساوي B26+1 و B28 سوف تساوي B27+1 وهكذا حتي B32
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.