aboghazi قام بنشر أكتوبر 8, 2015 قام بنشر أكتوبر 8, 2015 السلام عليكم ورحمة الله وبركاته بعد شكري وتقديري لكل اساتذة المنتدى والقائمين عليهاود تكرمكم بعمل اكواد للبرنامج المرفق حيث الاسئلة في صفحة المطلوب البرنامج1.rar وجزاكم الله خير البرنامج1.rar
أبوعيد قام بنشر أكتوبر 8, 2015 قام بنشر أكتوبر 8, 2015 تفضل جرب المرفق بعد الانتهاء من التقرير اضغط زر اس اف البرنامج2.rar 1
aboghazi قام بنشر أكتوبر 8, 2015 الكاتب قام بنشر أكتوبر 8, 2015 * اخي ابوعيد الكود لا يعملإذا قمت بمسح خانة التاريخ في صفحة اس اف وادخلت البيانات في التقرير اليومي وحاولت تنفيذ الكود ولكن عندما اكتب في خانة التاريخ في صفحة اس اف المعادلة () today = وانفذ يعمل ويقوم بالترحيل * ووجدت انه ينفذ الكود ولكنني اريد أن يكون اذا رحلت البيانات المطلوبه الى الصفحة اس اف مباشرةً يضيف التاريخ وياليت يكون هذا الكود مستقل لانني لو كان التاريخ خطأ ( احياناً يجث بسبب رؤيةالهلال كما تعلم ) استطيع ان اعدلهادخل التاريخ > ولو تكرمت تشرح الاكود فمنكم نتعلم وتعم الفائدة لجميع الاخوةالاعضاء. واكرر تقديري وشكري لك
أبوعيد قام بنشر أكتوبر 9, 2015 قام بنشر أكتوبر 9, 2015 تم التعديل تفضل جرب المرفق الجديد البرنامج3.rar 1
aboghazi قام بنشر أكتوبر 9, 2015 الكاتب قام بنشر أكتوبر 9, 2015 (معدل) اكرر تقديري وشكري لك * اخي ابوعيد جزاك الله خير الكود رائع كتواجدك . ولكن اذا تكرمت ممكن تشرح الكود لاني ارى انه يستحق ذلك جعله الله في ميزان حسناتك وايضا لو اردت تغيير الخلايا المرحلة جميعها او بعضاً منها الى الصفحة اس اف فلن اعرف كيف اعمل ذلك بدون فهمي لعمل الكود وسامحني تعبتك معاي وفقك الله تم تعديل أكتوبر 9, 2015 بواسطه aboghazi
أبوعيد قام بنشر أكتوبر 10, 2015 قام بنشر أكتوبر 10, 2015 السلام عليكم أخي أبوغازي تفضل الشرح الكود يتكون من جزئين الجزء الأول يتم تنفيذه آليا عند فتح المصنف ووظيفته هي كتابة التاريخ في ثلاثة خلايا وهي C3 , D3 , F3 الموجود في شيت التقرير اليومي وهو كالآتي : Sub Auto_open() يعنى اجعل هذا الكود ينفذ آليا عند فتح المصنف Sheets(2).[d3] = Date اذهب للشيت رقم 2 ( التقرير اليومي ) وضع التاريخ في الخلية D3 Sheets(2).[f3] = "الموافق " & Format(Date, "yyyy/m/d") اذهب للشيت رقم 2 وضع في الخلية F3 كلمة (موافق) وبجانبها التاريخ ولكن بالصيغة المبينة Sheets(2).[c3] = Format(Date, "ddd") اذهب للشيت رقم 2 وضع التاريخ في الخلية C3 ولكن بالكتابة وليس بالرقم ( يعني سبت , أحد وهكذا ) End Sub انهاء الكود الجزء الثاني : يتم فيه ترحيل البيانات من التقرير اليومي إلى شيت اس اف وهو كالآتي : Sub sf() هذا الإجراء قمت أنا بتسميته بـ sf وبإمكانك أن تسميه بما شئت Dim t As Integer, w As Integer, t1 As Integer, t2 As Integer, lr1 As Integer, u As Integer الإعلان عن المتغيرات في هذا الكود lr1 = Application.WorksheetFunction.Count(Sheets(3).Range("B6:B35")) تطلب من الإكسل أن يحسب لك عدد الخلايا التي تحتوى على أرقام في النطاق B6:B35 الموجود في الشيت رقم 3 (اس اف) For u = 6 To lr1 + 6 عمل حلقة تكرارية تبدا من اول سطر في النطاق B6:B35 إلى آخر سطر فيه If Sheets(3).Range("B" & u).Text = Sheets(2).Range("D3").Text Then ابحث في النصوص الموجودة في الشيت رقم 3 في النطاق B6:B35 فعندما يوجد نص مطابق للنص الموجود في الشيت رقم 2 والخلية D3 اعرض هذه الرسالة : لا يمكن الترحيل MsgBox لا يمكن الترحيل"" وهذا يعنى أنه إذا وجد البرنامج التاريخ قد تم إدراجه سابقا فعند الضغط على زر (اس اف) سيقارن الكود هل التاريخ موجود مسبقا أم لا إذا كان موجود يعنى أنه قد تم الترحيل مسبقا فستظهر رسالة : لا يمكن الترحيل وبمعنى آخر أن الترحيل يتم مرة واحدة فقط Exit Sub ثم انهي العمل (هذا إذا كان التاريخ موجودا من السابق) End If Next أما إذا لم يكن التاريخ موجودا فسيكمل الكود عمله كما في الأسفل Sheets(3).Range("B" & 6 + lr1) = Sheets(2).Range("D3").Value اذهب إلى أول خلية فارغة في النطاق B6:B35 الموجود في الشيت رقم 3 (الخاص بأول شركة) وضع فيه التاريخ الموجود في الشيت رقم 2 في الخلية D3 Sheets(3).Range("B" & 43 + lr1) = Sheets(2).Range("D3").Value كرر نفس العمل السابق في النطاق الموجود في الشركة الثانية Sheets(3).Range("B" & 80 + lr1) = Sheets(2).Range("D3").Value كرر نفس العمل السابق في النطاق الموجود في الشركة الثالثة ومعنى هذا أن الكود قام بكتابة التاريخ في كل جدول من الجداول الثلاثة الموجودة في شيت اس اف نأتي الآن إلى نقل القيم من شيت التقرير اليومي (رقم2) إلى شيت اس اف (رقم 3) أولا : الشركة الأولى For t = 6 To 35 عمل حلقة تكرارية تبدأ من السطر رقم 6 إلى السطر رقم 35 وهو الخاص بالشركة الأولى في شيت اس اف If Sheets(3).Range("B" & t) = Sheets(2).Range("D3").Value Then إذا وجدت تاريخ في العمود B الخاص بالشركة الأولى يساوي التاريخ الموجود في الشيت 2 الخلية D3 قم بما يأتي Sheets(3).Range("C" & t) = Sheets(2).[B6].Value انقل القيمة الموجودة في الخلية B6 والشيت 2 إلى العمود C في الخلية المناسبة لها (وهذا يعني انه سينقل الرقم 1) Sheets(3).Range("E" & t).Resize(1, 2) = Sheets(2).[D10].Resize(1, 2).Value انقل القيمتين في الخليتين D10 و E10 إلى المكان الخاص بهما في العمودين E , F (وهذا يعني انه سينقل الرقمين 2 و 3) Sheets(3).Range("G" & t) = Sheets(2).[B11].Value انقل القيمة الموجودة في الخلية B11 والشيت 2 إلى العمود G في الخلية المناسبة لها (وهذا يعني انه سينقل الرقم 4) Sheets(3).Range("H" & t) = Sheets(2).[B13].Value انقل القيمة الموجودة في الخلية B13 والشيت 2 إلى العمود H في الخلية المناسبة لها (وهذا يعني انه سينقل الرقم 5) End If Next ثانيا : الشركة الثانية : بنفس العمل السابق For t1 = 43 To 72 عمل حلقة تكرارية تبدأ من السطر رقم 43 إلى السطر رقم 72 وهو الخاص بالشركة الثانية في شيت اس اف If Sheets(3).Range("B" & t1) = Sheets(2).Range("D3").Value Then Sheets(3).Range("C" & t1) = Sheets(2).[B23].Value Sheets(3).Range("E" & t1).Resize(1, 2) = Sheets(2).[D27].Resize(1, 2).Value Sheets(3).Range("G" & t1) = Sheets(2).[B28].Value Sheets(3).Range("H" & t1) = Sheets(2).[B30].Value End If Next ثالثا : الشركة الثالثة : بنفس العمل السابق For t2 = 80 To 109 عمل حلقة تكرارية تبدأ من السطر رقم 80 إلى السطر رقم 109 وهو الخاص بالشركة الثالثة في شيت اس اف If Sheets(3).Range("B" & t2) = Sheets(2).Range("D3").Value Then Sheets(3).Range("C" & t2) = Sheets(2).[B40].Value Sheets(3).Range("E" & t2).Resize(1, 2) = Sheets(2).[D44].Resize(1, 2).Value Sheets(3).Range("G" & t2) = Sheets(2).[B45].Value Sheets(3).Range("H" & t2) = Sheets(2).[B47].Value End If Next MsgBox "تم الترحيل بنجاح" بعد الانتهاء من الترحيل اعرض هذه الرسالة : تم الترحيل بنجاح End Sub انتهي عمل الكود 1
aboghazi قام بنشر أكتوبر 11, 2015 الكاتب قام بنشر أكتوبر 11, 2015 الله يجزاك خير اخي ابو عيد ويجعل ايامك كلها عيد ولو تكرمت ممكن توضح المتغيرات وما هي وظيفتها في الكود وخاصة lr1 , u Dim t As Integer, w As Integer, t1 As Integer, t2 As Integer, lr1 As Integer, u As Integer وكذلك Resize ولا يسعني الا الدعاء لكوفقك الله
أبوعيد قام بنشر أكتوبر 11, 2015 قام بنشر أكتوبر 11, 2015 السلام عليكم أما الأحرف U LR1 W t وغيرها فهي حروف أختارها أنا كما أريد ولكن لابد من إعدائها قيمة وهي تسمى (المتغيرات) وللمزيد من الشرح ادخل على الرابط الآتي http://www.officena.net/ib/topic/56941-افتح-الباب-وادخل-لعالم-البرمجة-متخافوش-يا-أحباب-من-اللي-ورا-الباب/?do=findComment&comment=361289 أما تخصوص RESIZE ادخل على الرابط الآتي http://www.officena.net/ib/topic/56933-الخاصية-resize-في-لغة-البرمجة/?do=findComment&comment=361221 تحياتي 2
aboghazi قام بنشر أكتوبر 12, 2015 الكاتب قام بنشر أكتوبر 12, 2015 (معدل) الله يعطيك العافية اخي ابوعيد جاري مذاكرة الدرس تم تعديل أكتوبر 12, 2015 بواسطه aboghazi
aboghazi قام بنشر أكتوبر 13, 2015 الكاتب قام بنشر أكتوبر 13, 2015 تمت الاستفادة من الرابط الذي ارسلته الله يجزاك خير واذا ممكن تتكرم وتلقي نظره على الملف المرفق وتساعدني فيه وسامحني على كثرة الاسئلة سوال للاستاذة الفضلاء.rar
أبوعيد قام بنشر أكتوبر 14, 2015 قام بنشر أكتوبر 14, 2015 السلام عليكم السؤال الأول مفهوم وتم حله السؤال الثاني لم يفهم ماذا تقصد بمربع1 . مربع2 هل الخلية المكتوب فيها رقم 1 أو 2 لاحظ المرفق غير الأرقام في الجدول ولاحظ تغيرها في أسفل الجدول سوال للاستاذة الفضلاء1.rar 1
aboghazi قام بنشر أكتوبر 15, 2015 الكاتب قام بنشر أكتوبر 15, 2015 وعليكم السلام ورحمة الله جزاك الله خير اخي ابوعيد على تفاعلك وتحملك كثرة اسئلتي وه1 ان دل فا اينما يدل على كرم اخلقك ونبلك. تمت ملاحظة الفرق في السؤال الاول وتم المطلوب فجزاك الله خير. بالنسبة للسؤال الثاني اقصد انني لو اردت ادخال بيانات عن طريق نفس فورم الادخال وهي بيانات مختلفة عن ماتم ادخاله مسبقاً في المربعات التي رسمتها مسبقاً هل استطيع حاولت ولم استطع عملها لاني محكوم بهذا الجدول . ولو كانت هناك طريق اخرى تجدونها افضل فياليت تدلوني عليها اما السؤال الثالث pdf تحويل الصفحة الى PDF للمعاينة ثم استطيع الطباعة
أبوعيد قام بنشر أكتوبر 16, 2015 قام بنشر أكتوبر 16, 2015 السلام عليكم السؤال الثاني لا زال غير واضح الفورم يحتوي على كثير من textbox ولكل واحدة منها رقم حدد القيم التي تريد إظهارها في الشيت , اكتب مثلا أريد أن يظهر محتوى textbox 1 و textbox 2 في الخلية F18 (لأن هذه الخلية فيها قيمتين) وأن يظهر محتوى textbox 4 و textbox 5 و textbox 8 في الخلية F19 (لأن بها ثلاث قيم) أما حل السؤال الثالث print view تجده في المرفق سوال للاستاذة الفضلاء2.rar
aboghazi قام بنشر أكتوبر 17, 2015 الكاتب قام بنشر أكتوبر 17, 2015 وعليكم السلام ورحمة الله حياك الله اخي ابوعيد بالنسبة للسؤال 2 نعم هو كما قلت محتوى textbox 1 و textbox 3 في الخلية F18 محتوى textbox 2 و textbox 4 و 5 textbox في الخلية F19
أبوعيد قام بنشر أكتوبر 17, 2015 قام بنشر أكتوبر 17, 2015 أخي أبوغازي هل جربت المرفق اعلاه ؟ قمت بوضع أرقام في الفورم وتم كتابتها في الخلايا F18 F19 فما المشكلة إذن
aboghazi قام بنشر أكتوبر 18, 2015 الكاتب قام بنشر أكتوبر 18, 2015 هلا باخي كريم الاخلاق ابوعيد نعم اخي قمت بتجربته والذي فهمته وتعلمته من ما سطرت يداك وفقك الله الخلية 18يساوي المدخل في يساوي المدخل في B6 و البيع في ساعة الافتتاح = المدخل في B7 وبنفس الطريقة الخلية F19 . والذي أريد عمله هوأن يكون في الفورم كود مخصص للكتابة في الخليه F18 بواقع اثنين من المدخلات واحد البيع اليومي والثاني البيع ساعة الافتتاح. و F19 بواقع ثلاثة من المدخلات الطلبات المستعجلة و الطلبات المنتظرة والبيع المتوقع غداُ وجميع المدخلات في F18,19 مختلفة وليس لها علاقة بالارقام المدخلة سابقا في الخلاياB6:D19 . ارجو ان اكون قد وفقت في التوضيح. عظيم الشكر والتقدير للإهتمامك ومساعدتك وجزاك الله خير فيه نقطة ثانية يا استاذي الفاضل خطرت في بالي اتمنى مساعدتي في انجازها وهي طبعاً البيانات تدخل لعدد 3 شركات وهذا يعني انني احتاج الى 3 فورم ادخال فهل استطيع ان اجعل فورم الادخال واحد فقط ومنه اختار الشركة التي اريد ان ادخل بياناتها ومن ثم الفورم مباشرة يبدأ في التعامل مع ادخالات الشركة المحددة .
aboghazi قام بنشر أكتوبر 24, 2015 الكاتب قام بنشر أكتوبر 24, 2015 السلام عليكم ورحمة الله ما ردت علينا يا ابوعيد عسى المانع خير
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.