مرساال قام بنشر يناير 8, 2016 قام بنشر يناير 8, 2016 مطلوب طباعة تقرير منفرد لكل اسم مع تغير البيانات الخاصة لكل فرد عند الضغط على اسم او رقم الفرد بمعنى تدون البيانات الخاصة بكل اسم على حده ، وعند طباعتها تطبع بالنسيق المطلوب علما بان التقرير سيكون تنسيقتقرير.rarه ثابت بنفس الخلايا في كل تقرير ولاتكون اوراق متعددة . تقرير.rar
ياسر خليل أبو البراء قام بنشر يناير 8, 2016 قام بنشر يناير 8, 2016 أخي الكريم مرسال يرجى تغيير اسم الظهور للغة العربية بالنسبة للملف المرفق غير معبر عن الطلب .. لا يوجد بالملف المرفق سوى جدول به أسماء وفقط ..أين التقرير المطلوب العمل عليه ؟؟ ما هو شكل التقرير المتوقع ؟ وهل التقرير سيكون في ورقة عمل واحدة يمكنك من خلالها اختيار الاسم والحصول على تقرير له ؟ أم أنك تريد عمل تقرير منفصل لكل اسم في ورقة عمل منفصلة ... الأفضل ترفق لنا شكل التقرير المطلوب .. شكل النتائج المتوقعة ... وآلية العمل ..؟ هل سيتم الاعتماد على خلية محددة أم أنك تريد استخراج التقارير كلها مرة واحدة ؟؟؟ تقبل تحياتي
مرساال قام بنشر يناير 9, 2016 الكاتب قام بنشر يناير 9, 2016 اولا : شكرا اخي ياسر على الرد والاهتمام وجزاك الله عنا خيرا ثانيا : التقرير منفصل لكل اسم اري ان اكتب بيانات التقرير وهو عبارة عن تقرير سنوي للعامل وهو غالبا جاهز اي مطبوع لكن اريد طباعة بيانات العامل عليه اي كتابة البيانات بجوار كال اسم ومن ثم ترحيلها الى خلايا معينة عند الضغط على الاسم او ارقم مع اني جربت الارتباط التشعبي ولكن سيتطلب ورقة خاصة لكل عامل علما بان العدد تقريبا 200 اسم . شكرا لسعة صدركم تقرير.rar تقرير.rar
ياسر خليل أبو البراء قام بنشر يناير 9, 2016 قام بنشر يناير 9, 2016 أخي الكريم مرسال يرجى تغيير اسم الظهور للغة العربية .. قمت بتغيير شكل الملف قليلاً لسهولة التعرف على كيفية التعامل مع البيانات بشكل صحيح .. لأن الملف المرفق من قبلك غير معبر بعض الشيء عموماً يمكنك التعديل بسهولة على الملف وعلى الكود يوضع الكود في حدث ورقة العمل المسماة Sheet1 .. كليك يمين على اسم ورقة العمل Sheet1 ثم اختر الأمر View Code ثم الصق الكود التالي ..ثم انقر دبل كليك في عمود الاسم ليتم إعداد التقرير للاسم الذي قمت بالنقر عليه دبل كليك وإذا كانت الخلية فارغة يتم مسح محتويات التقرير Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Cells.CountLarge > 1 Then Exit Sub If Target.Column = 3 And Target.Row > 3 Then Application.ScreenUpdating = False Application.EnableEvents = False Cancel = True Dim Sh As Worksheet, lRow As Long Set Sh = Sheets("التقرير") lRow = Target.Row With Sh .Range("D5,D7,H8,H11,D11").Value = "" If Not IsEmpty(Target) Then .Range("D5").Value = Date .Range("D7").Value = Cells(lRow, "C").Value .Range("H8").Value = Cells(lRow, "D").Value .Range("H11").Value = Cells(lRow, "E").Value .Range("D11").Value = Cells(lRow, "F").Value MsgBox "تم إعداد تقرير للموظف " & Cells(lRow, "C").Value & " في ورقة التقرير", 64 End If End With Application.EnableEvents = True Application.ScreenUpdating = True End If End Sub تقبل تحياتي Single Report For Each Name Worksheet Double Click YasserKhalil.rar 3
مرساال قام بنشر يناير 10, 2016 الكاتب قام بنشر يناير 10, 2016 شكرا اخي الحبيب ياسر خليل جاري التجربة وان شاء الله يضبط الموضوع تقبل تحياتي
مرساال قام بنشر يناير 11, 2016 الكاتب قام بنشر يناير 11, 2016 السلام عليكم ورحمة الله وبركاته من قلبي شكرا لك اخي ياسر وجزاك الله عنا خير الجزاء والكود يفي بالمطلوب لكن هل ممكن عند الضغط دبل كليك على الاسم يفتح شيت التقرير بدلا من رسالة تم عمل التقرير ؟ تقبل تحياتي وجميع الاخوه القائمين على المنتديات . وشكرا
ياسر خليل أبو البراء قام بنشر يناير 11, 2016 قام بنشر يناير 11, 2016 أخي الكريم مرسال ما زلت أتمنى تغيير اسم ظهورك للغة العربية (راجع موضوع التوجيهات التوجيه العاشر) الحمد لله أن تم المطلوب على خير .. بالنسبة لطلبك الأخير ..قم بحذف سطر الرسالة MsgBox "تم إعداد تقرير للموظف " & Cells(lRow, "C").Value & " في ورقة التقرير", 64 وضع سطر يشير إلى ورقة التقرير .Activate تقبل تحياتي
صداكم قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 (معدل) في ٩/١/٢٠١٦ at 02:15, ياسر خليل أبو البراء said: أخي الكريم مرسال يرجى تغيير اسم الظهور للغة العربية .. قمت بتغيير شكل الملف قليلاً لسهولة التعرف على كيفية التعامل مع البيانات بشكل صحيح .. لأن الملف المرفق من قبلك غير معبر بعض الشيء عموماً يمكنك التعديل بسهولة على الملف وعلى الكود يوضع الكود في حدث ورقة العمل المسماة Sheet1 .. كليك يمين على اسم ورقة العمل Sheet1 ثم اختر الأمر View Code ثم الصق الكود التالي ..ثم انقر دبل كليك في عمود الاسم ليتم إعداد التقرير للاسم الذي قمت بالنقر عليه دبل كليك وإذا كانت الخلية فارغة يتم مسح محتويات التقرير Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Cells.CountLarge > 1 Then Exit Sub If Target.Column = 3 And Target.Row > 3 Then Application.ScreenUpdating = False Application.EnableEvents = False Cancel = True Dim Sh As Worksheet, lRow As Long Set Sh = Sheets("التقرير") lRow = Target.Row With Sh .Range("D5,D7,H8,H11,D11").Value = "" If Not IsEmpty(Target) Then .Range("D5").Value = Date .Range("D7").Value = Cells(lRow, "C").Value .Range("H8").Value = Cells(lRow, "D").Value .Range("H11").Value = Cells(lRow, "E").Value .Range("D11").Value = Cells(lRow, "F").Value MsgBox "تم إعداد تقرير للموظف " & Cells(lRow, "C").Value & " في ورقة التقرير", 64 End If End With Application.EnableEvents = True Application.ScreenUpdating = True End If End Sub تقبل تحياتي Single Report For Each Name Worksheet Double Click YasserKhalil.rar السلام عليكم ورحمة الله وبركاته استاذي الفاضل لو تكرمت ممكن تشرح لي اسطر الاكواد هذي عشان اقدر اطبقها على اي جدول انا حابه اعمل فيه تقرير بالاكسل ؟ عندي خلفية باللوغارثيم البرمجة لكن اجهل الفيجوال بيسك فيا حبذا تكتب لي كومنت جنب كل سطر برمجي ايش وظيفته ان تكرمت وجزاك الله خير حاولت اطبق الكود في ملف صاحب الموضوع لأرى النتيجة لكن طلب مني حفظ الملف بنوع يسمح للماكرو ما معنى هذا وهل استطيع تفادي هذا الطلب واحفظه بالطريقة العادية مع امكانية استخدام الكود ؟ تم تعديل يناير 12, 2016 بواسطه صداكم
ياسر خليل أبو البراء قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 أخي الكريم صداكم أهلاً بك في المنتدى ونورت بين إخوانك يرجى الإطلاع على الموضوع التالي فيه بدايات التعامل مع الأكواد وكيف تتمكن من البدء .. بداية الطريق لإنقاذ الغريق ستجد فيه الكثير من الاستسفارات المبدئية ..اطلع على الموضوع وإذا واجهتك أي مشكلة لا تتردد في طرح موضوع جديد .. في انتظاااااااااااااارك
صداكم قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 الله يجزاك خير هذا بخصوص رسالة التنبيه واستوعبت المشكلة ، لكن لو افترضنا اني حفظت الملف بالامتداد المطلوب وارسلت الملف لشخص اخر هل راح يشتغل معه الماكرو ؟ او راح يوواجه رسالة تحذير عمل ماكرو بجهازه ؟ لان في ناس تخاف يكون فايروس فترفض فتح الملف وايضًا جزاك الله خير انا بحاجة ماسة للكود اعلاه لكن بملف مختلف واستطيع التعديل عليه ان شرحت لي بكلمات معدودة لكل سطر برمجي ايش وظيفته فقط ان امكنك ذلك ونفع الله بك
ياسر خليل أبو البراء قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 أخي الكريم صداكم وجزيت خيراً بمثل ما دعوت لابد من تمكين إعدادات الماكرو لتعمل الأكواد .. وكما قلت ربما يحوي الكود على أسطر تشبه عمل الفيروسات ..فيمكن باستخدام الأكواد مسح الملفات والمجلدات في بارتشن بالكامل .. لذا يجب الحذر والحيطة والإطلاع على الكود قبل تجربته ... وإليك شرح لأسطر الكود لعله يكون معين لك على إنجاز مهمتك Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'يوضع الكود في حدث ورقة العمل ويتم التنفيذ عند النقر المزدوج على الخلايا التي سنقوم بتحديدها '------------------------------------------------------------------------------------------- 'سطر في حالة أن عدد الخلايا التي سيتم التعامل معها أكبر من خلية يتم الخروج من الإجراء 'حيث أن المطلوب التعامل مع خلية واحدة فقط في كل مرة لذا وجب الحيطة والحذر وتحديد خلية واحدة If Target.Cells.CountLarge > 1 Then Exit Sub 'هذا السطر هو الذي يحدد نطاق الخلايا التي ستتمكن من التعامل معها وهي في العمود الثالث 'وأيضاً التعامل سيكون في الصفوف الأكبر من الصف الثالث [C] حيث أننا جعلنا عمود الخلية الهدف يساوي 3 أي العمود 'أي أنه سيتم استثناء الصف الأول والثاني والثالث ويتم التعامل مع الصفوف بدايةً من الصف الرابع If Target.Column = 3 And Target.Row > 3 Then 'سطر لإلغاء تحديث الشاشة وكذلك إلغاء تمكين الأحداث وهذا الإلغاء يسرع من عمل الكود Application.ScreenUpdating = False Application.EnableEvents = False 'عدم السماح بالتعديل في الخلايا الهدف أي أن الخلايا في العمود الثالث 'بدايةً من الصف الرابع لن تتمكن في التعديل عليها بالنقر المزدوج كما 'هو الحال في بقية الخلايا .. وهذا لا يعني أنك لا تستطيع التعديل على الخلايا 'من لوحة المفاتيح [F2] يمكن التعديل باستخدام مفتاح 'أما التعديل عن طريق النقر المزدوج فممنوع في الخلايا المحددة Cancel = True 'تعريف المتغيرات الأول لورقة العمل التي سنقوم بترحيل البيانات إليها 'والمتغير الثاني لمعرفة صف الخلية الهدف التي سيتم التعامل معها Dim Sh As Worksheet, lRow As Long 'تعيين قيمة للمتغير ليساوي ورقة العمل المسماة التقرير Set Sh = Sheets("التقرير") 'تعيين قيمة للمتغير ليساوي صف الخلية الهدف lRow = Target.Row 'بدء التعامل مع ورقة التقرير With Sh 'مسح البيانات الموجودة في الخلايا المحددة في السطر .Range("D5,D7,H8,H11,D11").Value = "" 'شرط ألا تكون الخلية الهدف فارغة أما إذا كانت فارغة فلن يتم تنفيذ الكود If Not IsEmpty(Target) Then 'تساوي التاريخ الحالي [D5] الخلية .Range("D5").Value = Date 'تساوي القيمة الموجودة في العمود الثالث في نفس صف الخلية الهدف [D7] الخلية .Range("D7").Value = Cells(lRow, "C").Value 'تساوي القيمة الموجودة في العمود الرابع في نفس صف الخلية الهدف [H8] الخلية .Range("H8").Value = Cells(lRow, "D").Value 'تساوي القيمة الموجودة في العمود الخامس في نفس صف الخلية الهدف [H11] الخلية .Range("H11").Value = Cells(lRow, "E").Value 'تساوي القيمة الموجودة في العمود السادس في نفس صف الخلية الهدف [D11] الخلية .Range("D11").Value = Cells(lRow, "F").Value 'إظهار رسالة تفيد بأنه تم إعداد التقرير للموظف ثم ذكر اسم الموظف الموجود في العمود الثالث MsgBox "تم إعداد تقرير للموظف " & Cells(lRow, "C").Value & " في ورقة التقرير", 64 'انتهاء جملة الشرط End If 'انتهاء التعامل مع ورقة التقرير End With 'استعادة الإعدادت التي تم إلغائها في بداية الكود Application.EnableEvents = True Application.ScreenUpdating = True End If End Sub تقبل تحياتي 3
صداكم قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 بارك الله فيك .. راح اطبق الكود باكثر من طريقة لاصل إلى المطلوب باذن الله 1
ابوحمزه المصرى قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 حل رائع وشرح ممتاز اخى ابو البراء .. بارك الله فيك وجعله بميزان حسناتك 1
مرساال قام بنشر يناير 12, 2016 الكاتب قام بنشر يناير 12, 2016 الف شكر اخي الكريم تم تطبيق الكود بنجاح فعلا شرح ممتاز ووافي جزاك الله عنا خير الجزاء ، تقبل تحياتي . 1
ياسر خليل أبو البراء قام بنشر يناير 12, 2016 قام بنشر يناير 12, 2016 الحمد لله إخواني أن أعجبكم الشرح واستفدتم منه بارك الله فيكم وفي انتظار ابداعاتكم بالمنتدى .. على قدر ما تعطي ستتعلم 2
مرساال قام بنشر يناير 13, 2016 الكاتب قام بنشر يناير 13, 2016 (معدل) سلام عليكم ورحمة الله وبركاته مطلوب ترحيل بيانا من ورقه 1 الى ورقه 2 عند تغيير وقت الدوام دخول وخروج فقط في الصفوف التي يتم تغيير الاوقات بها وكود يمنع تكرار البيانات بالصفوف . شكر لكم وجزاكم الله خير الجزاء . shift.rar تم تعديل يناير 13, 2016 بواسطه مرساال
ياسر خليل أبو البراء قام بنشر يناير 13, 2016 قام بنشر يناير 13, 2016 أخي الكريم مرسال يرجى الإطلاع على موضوع التوجيهات في الموضوعات المثبتة إذا كان طلبك الجديد مختلف عن الموضوع يرجى طرح موضوع جديد ليشارك فيه أكبر عدد من الأخوة الكرام بالمنتدى تقبل تحياتي 1
مرساال قام بنشر يناير 13, 2016 الكاتب قام بنشر يناير 13, 2016 السلام عليكم ورحمة الله وبركاته فعلا تم طرح موضوع جديد ، شكرا لاهتمامكم تقبلوا تحياتي 1
ياسر خليل أبو البراء قام بنشر يناير 13, 2016 قام بنشر يناير 13, 2016 وعليكم السلام ورحمة الله وبركاته بارك الله فيك على حسن استجابتك .. والالتزام بالتوجيهات تقبل وافر تقديري واحترامي 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.