اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

علي السحيب

المشرفين السابقين
  • Posts

    991
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل منشورات العضو علي السحيب

  1. تم إجراء التعديل المطلوب، شاهد المرفق، ____________________________.rar
  2. الكود يعمل فقط عن الإنتهاء من إدخال بيانات السجل الجديد .. ولكن هذا لا يمنع من إمكانية تطوير الكود مستقبلاً. تم ربط فرز أسماء العملاء وأرصدتهم بالكود. كنت قد وضعتها للتأكد من سلامة عملية الجمع التي يقوم بها الكود ونسيت أن أمسحها. شاهد المرفق، _________________.rar
  3. تم إضافة الكود المطلوب .. والتعديل على الكود السابق ليكون أكثر كفاءة. شاهد المرفق، ____________________________________________.rar
  4. تم تطبيق الشروط على الخلايا المعنية عن طريق الكود .. وكذلك تم إضافة شيء آخر .. وهو خروج أعلى سعر وأقل سعر مسموح به بمجرد كتابة رقم الصنف والوقوف على الخلية الخاصة بإدخال الأسعار. شاهد المرفق، _________________________________________________________________.rar
  5. تغير إسم الكود لا يؤثر على عمله .. ولكن قد يؤثر على عمل أكواد أخرى إذا كان عملها مرتبط بالكود الذي تم تغيير إسمه وأيضاً إذا كان الكود مرتبط بزر موجود على ورقة العمل فإن تغيير إسم الكود يبطل عمل الزر المرتبط به لأنه يظل مرتبط بإسم الكود السابق .. لذا لا بد من تنشيط الزر عبر الضغط عليه بالزر الأيمن .. ثم إختيار إسم الكود الجديد المُراد ربطه بالزر من قائمة الأكواد ثم الضغط على موافق .. وعندها تتم عملية الربط. يمكنك تبديل السطر الأول .. ولكن قبلها تأكد أن السطر الجديد الذي كتبته هو كود صحيح وليس خاطئ .. فإذا كان خاطئ فلن يتم تقبله. أي وقت إدخال بيانات السجل كامله ما قصدته لا ينطبق على الأكواد التي تقوم بإدراج التاريخ أو الوقت عند الضغط على زر معين .. ولكن ما عنيته هو الأكواد التي تقوم بإدراج التاريخ أو الوقت بمجرد الكتابة في خلية معينة .. وهناك موضوع ومناقشة طويله تمت بين وبين الآستاذ تامر بهذا الخصوص. مثلاً .. أفرض أنه يتم إرداج التاريخ الحالي في الخلية B1 .. بعد الكتابة في الخلية A1 .. فلو أن قمت في أحد الأيام بإدخال بيانات في A1 .. سيتم إدراج تاريخ الحالي في B1 ولو قمت في يوم آخر بالنقر المزدوج على الخلية A1 .. وبدون تغيير محتواها .. فإنه سيتم إدراج تاريخ اليوم الذي قمت فيه بالنقر المزدوج علي الخلية A1 في الخلية B1 .. رغم أنك لم تغير محتواها!! وهذا شيء غير منطقي .. وهذا بالضبط ما لا يجعلني أستخدم دوال التاريخ والوقت الموجودة داخل الفيجوال بيسك في مثل هذه الحالات .. وأستعيض عنها بإدراج التاريخ والوقت عن طريق لوحة المفاتيح .. أو بزر كما في المرفق الموجود في مشاركتي السابقة. نعم الجدول سليم ولا غبار عليه ... ما أقصده أنه في الجزء المتعلق بالدالة ISERROR من الدالة IF .. ليس من الضروري وضع كلمة TRUE .. أو FALSE بعد الجزئية الخاصبة بالدالة ISERROR .. لأن نتجية الدالة المذكورة إما أن تكون TRUE أو FALSE .. وبما أنه تم وضعها في الجزء الأول من الدالة IF .. فإنه وبشكل تلقائي سيتم الرجوع لها فقط إذا كانت نتيجتها TRUE .. والرابط التالي به موضوع قمت بالرد عليه فيما مضى. http://www.officena.net/ib/index.php?showtopic=9985&hl= تم التعديل .. شاهد المرفق، ________________________________________________.rar
  6. وجود الكثير من الصيغ داخل الملف يجعل حجم الملف كبير جدً .. لذا يفضل إستخدام الأكواد .. فهي تقوم بنفس المهمة ولا تتطلب مساحة أو ذاكرة كبيرة.
  7. المرفق تم إعداده من قِبل الأستاذ أبو هادي .. أعتقد أن به الجواب عما تبحث عنه، UmAlQura.rar
  8. هل هذا ما تقصد؟؟ _______________________________________________.rar
  9. في المرفق لايسمح بإدخال السعر إلا إذا كان هو نفس السعر الأساسي أو ما بين السعر الأساسي - 025. و السعر الأساسي + 025. ويتم كذلك تلوين الخلية التي لم ينطبق عليها الشرط باللون الأحمر، شاهد المرفق، _________________________________________________________________.rar
  10. نعم فهمت ما تقصدين بالضبط .. الجواب والشرح المفصل موجود في المشاركة الثانية من الرابط التالي: http://www.officena.net/ib/index.php?showtopic=8616
  11. موضوع ذات صله .. به الحل للمشكلة، http://www.officena.net/ib/index.php?showt...opid=63649&
  12. تم تطبيق جميع هذه الملاحظات على المرفق، لا بد من معرفة أن الكود بأكمله يعتمد على كلمة (المجموع) وأن أي تعديل عليها أو نقلها إلى مكان آخر سيوقف عمل الكود بشكل كامل .. وبعد التعديل على الملف لست بحاجة إلى نقلها إلى مكان آخر .. وبالنسبة للرابط الذي ذكرت .. فمع إحترامي الشديد للأستاذ محمد طاهر .. فإنه لا يعطي حل للمشلكة .. وينفي وجود أي حل نهائياً غير ربط الجدول بالأكسس .. بينما المرفق يحتوي على الحل.. خاصية التجميد في الإكسل لا تلبي هذا الطلب .. فإنها إما أن تجمد العمود أو الصف بأكمله أو لا .. لكن سأحاول البحث عن مخرج لهذا . شاهد المرفق، _________________.rar
  13. شاهد المرفق، _____________.rar
  14. ومالمشكلة في ذلك!!! ... المرفق السابق يقوم بهذه المهمة.
  15. استخدم دوال البحث VLOOKUP أو INDEX. ____________________________.rar
  16. قم بإخيار خلية واحدة أو مجموعة من الخلايا من القائمة المحتوية على التواريخ في الصفحة الأولى وشاهد النتيجة. ______________________________________________.rar
  17. هذا الملف على ما أذكر تم طرحه من قبل في المنتدى .. وهو يظهر مدى قابلية برنامج الإكسل لجميع المهام .. حتى للرسم.
  18. وعليكم السلام، تقريباً ليس هناك فرق .. ولكني أرى أن أفضل طريقة لإدراج التاريخ أو الوقت ليكون ثابت ولا يتأثر عند تحرير أي خلية هو أن يتم عبر لوحة المفاتيح بإستخدام Ctrl + ك للتاريخ و Ctrl + : للوقت .. وللمعلومية فإن معظم البرامج الشخصية التي أستخدمها أقوم فيها بإدراج الوقت أو التاريخ عن طريق لوحة المفاتيح .. لأني لا أريد أن يحدث أي تغيير على التاريخ أو الوقت المُدخل عند إدخال بيانات السجل للمرة الأولى ومن المعروف أن ربط تحرير خلية معينة بكود الإدراج التلقائي للتاريخ أو الوقت يجعل التاريخ أو الوقت يتغير حتى بمجرد النقر المزدوج على الخلية المعنية حتى بدون تغيير محتواها .. وهذا بالنسبة ليس شيء غير عملي وغير منطقي بتاتاً. أما إذا أردنا إدراج التاريخ أو الوقت عن طريق الكود فأفضل طريقة هي إستخدام الدوال Date للتاريخ و Time للوقت و Now للإثنين معاً .. لأنه تم تخصيصهم جميعاً لأداء هذه المهام ... ولا أرى حاجة في أن نترك هذه الطرق السهلة والمبسطة ونلجأ إلى كتابة كود آخر يقوم بنفس المهمة كالكود الخاص بإدراج التاريخ أو الوقت بإستخدام الخاصية SendKeys .. وهي خاصية متعلقة أكثر بأوامر أخرى تتم عن طريق لوحة المفاتيح. بالنسبة لهذا الكود فهو يستخدم الدالة Time .. لإدراج الوقت الحالي .. وهو بالضبط ما تحدثنا عنه .. ولكنه مطول بعض الشيء .. فالسطر الأول منه لا حاجة له نهائياً .. ولا أدري مالغرض من وضعه .. وكذلك الكلمة الثانية والثالثة من السطر الثاني أيضاً لا حاجة لهما .. ويمكن أن نحصل على نفس النتيجة عبر إستخدام الكود التالي للحصول على الوقت الحالي: Sub SysTime() ActiveCell = Time End Sub ويمكن أن نستخدم الكود التالي للحصول على التاريخ الحالي: Sub SysDate() ActiveCell = Date End Sub وهذا الكود للحصول على التاريخ والوقت معاً: Sub SysDateAndTime() ActiveCell = Now End Sub أتمنى أن يكود التوضيح مفهوماً .. أما بالنسبة للمرفق الذي أشرت إليه .. فانتظر الرد عليه قريباً بإذن الله. شاهد المرفق، ________________________________________________.rar
  19. تم التعديل .. شاهد المرفق، ____________________________________.rar
  20. الكود التالي ينفذ لك ما تريد، Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Or Target.Address <> "$B$3" Then Exit Sub If Target.Address = "$B$3" And Target <> "" Then [C3].Resize(18) = [C3].Formula [H3].Resize(18) = [H3].Formula Else [C4].Resize(17) = "" [H4].Resize(17) = "" End If End Sub شاهد المرفق، __________________________.rar
  21. الكود التالي ينفذ لك ما تريد، Sub CountDates() For R = 4 To 30 If Application.WorksheetFunction.Count(Cells(R, "B"), Cells(R, "C"), Cells(R, "D")) < 3 Then Cells(R, "E") = "" Else Cells(R, "E") = Application.WorksheetFunction.CountIf(Sheet1.[D4:D30], Cells(R, "C") & "/" & Cells(R, "B") & "/" & Cells(R, "D")) End If Next End Sub شاهد المرفق، ______________________________________________.rar
  22. شاهد المرفق، _______________________.rar
  23. المرفق يحتوي على مويول يتضمن أربع دوال خاصة بحساب العمر .. لا بد من نقل هذا الموديول إلى الملف الذي لديك لتعمل الدوال بشكل سليم. شاهد المرفق، ____________________________________.rar
  24. نعم يمكن أن يكون ذلك إذا تم ربط الأكواد ببعضها بطريقة غير صحيحة أو إذا كان عمل كود يتعارض مع عمل كود آخر.
  25. لا يوجد أي ملف مرفق، قم بإستخدام أحد برامج الضغط كالـ WinZip أو الـ WinRar .. لضغط الملف ثم عاود إرفاقه.
×
×
  • اضف...

Important Information