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

Foksh

الخبراء
  • Posts

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

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

  • Days Won

    225

كل منشورات العضو Foksh

  1. وعليكم السلام ورحمة الله وبركاته ،، في المسميات العربية والتي دائماً ننبه من خطأ وخطورة استعمالها في الحقول والجداول من جهة ، ومن جهة أخرى الفصل بمسافة بين اسماء الحقول والجداول بدلاً من استعمال إشارة "_" ، يجب استعمال الحاصرتين [] لتمييز اسماء الحقول والجداول بالعربية .. جرب هذا التعديل :- SELECT MAX([G n]) FROM [جدول تسجيل الكتب]
  2. وعليكم السلام ورحمة الله وبركاته ,, اذا إجابتك هي من يجب اختيارها ، وليس إجابتي يا صديقي . شكراً على متابعتك وثقتك .
  3. طيب أخي الكريم ، جرب قم بإضافة أسماء الى الجدول الأيسر ، لأنه حتى في الأيسر يتم تحديد الأسماء جميعها التي اخترتها من القائمة المنسدلة 🤔
  4. بعد تجربة المرفق ، وجدت أنه يفعل المطلوب الذي تريده بدون اي مشاكل ، إلا إذا كنت لم استفهم المشكلة بشكل واضح ؛ لأن المعطيات 11 كلمة 😅 . لكن انظر الصورة من مرفقط دون أي تعديل :-
  5. لا ولا يهمك ,, حصل خير دي تستخدم كنوع من التعبير عن الشكر لصاحب الإجابة اللي هو تعب في كتابتها ونشرها لوجه الله مساهمة منه . وكنوع من الدعم المعنوي للأعضاء للمشاركة في جميع المواضيع . ونتمنى إنك تلاقي إجاباتك وحلول مشاكلك هنا مع نخبة من الأساتذة والمعلمين . دمتم بخير .. سالمين
  6. يا صاحبي ، في المشاركة اللي انت اخترتها لي . حتلاقيها أصبحت الغاء اختيار تمت الإجابة .
  7. ولا يهمك ، وألف سلامة عليك .. ونسأل الله لكم الشفاء من كل بلاء .. في إجابتي اللي حضرتك اخترتها ، حتلاقي زر الغاء اختيار تمت الإجابة ، دوس عليه ، وبعدين روح لإجابة الأستاذ محمد هشام واختارها بالضغط على زر تمت الإجابة . وسلامتك
  8. قم بإلغاء إختيارك لإجابتي ، و اختر إجابته ، بدلاً من إجابتي
  9. أشكرك على ثقتك أخي الكريم ، ولكن صاحب الكود الأستاذ @محمد هشام. . لذا هو صاحب الفضل باختيارك اجابته كأفضل إجابة أو تمت الإجابة له
  10. متأسفاً لعدم المتابعة سابقاً لأسباب كثيرة ، أتى على ذكرها معلمي الفاضل ، حيث نهدف إلى تقديم المساعدة قدر المستطاع لأخوتنا أينما كانوا ، ولكن أحياناً عندما تساهم في حل مشكلة تجد أن الأصل في تأسيس المشروع غير سليم ، مما يساعد على ظهور مشاكل وعقبات وصعوبات أخرى ... أرجو منكم المعذرة لعدم ردي سابقاً ، ولكن شعرت بأنه إن بدأت في إصلاح نقطة فستجد أنها حبل قد تمت العقد فيه متتالية .. وهذا للأسف ما يخجلني من عدم المتابعة
  11. مشاركة بتوضيح فكرة الأستاذ @محمد هشام. مشكوراً على فكرته الجميلة .. 1. انسخ الدالة السابقة الى مديول جديد في مشروعك الرئيسي واحفظه . 2. تستطيع تشغيل الماكرو بالنقر على Alt + F8 ، ثم تختار اسم الماكرو ، وانقر زر تشيل Run . 3. سيتم إنشاء مجلد جديد حسب الكود ( Workbook_Copy ) . وبداخله نسخة من مشروعك الأصلي لا تحتوي معادلات أو أزرار أو أكواد ... الخ . 💡 والتوظيف الذكي في الكود ، أن النسخة الناتجة لا تدعم الماكرو حتى لو حاولت إعادة تضمينها ، انظر السطر :- xlOpenXMLWorkbook ' أي .xlsx أي أنه لم يستخدم فكرة استنساخ الملف الجديد عن الأصل بنفس الإمتداد . ودمتم بخير جميعاً
  12. اغلق قاعدة البيانات التي ارفقها معلمي أبو خليل ، وانقر زر يمين بالماوس عليها واختر آخر أمر = خصائص = وعلى الأغلب ستجد في مكان المستطيل الأحمر الموضح في الصورة أدناه خيار ثالث = Unblock ، فقط قم بالتعليم عليه ، ثم انقر موافق
  13. بارك الله فيك معلمنا الفاضل على هذه المعلومة التي قد يكون الكثيرين ومن بينهم أخوك الصغير الي لا يعلمها فعلاً ، وقد اكون لم أستخدمها ابداً في تطبيقاتي ... شكراً لك مراراً وتكراراً على هذه المدرسة التي نتعلم منها الكثير دائماً
  14. وإياكم مثلما دعيتم وأكثر في هذا اليوم الطيب .. العفو يا صديقي ..
  15. تحسينات جديدة ، وإضافات جديدة في التحديث الجديد لجعل المشروع كاملاً متكاملاً
  16. عذراً على المداخلة ، لكني لم افهم الفكرة من تكرار الطلب مرتين 😅 أو ما الفرق بين الطلبين 😁 .
  17. وعليكم السلام ورحمة الله وبركاته .. أخي الكريم أسعد ، محتاجين توضح لنا ما الذي قمت بتأسيسه وأين نجد تقريرك الذي تريد التعديل عليه ؟
  18. وضحت الفكرة أخي الكريم ،، امهلني بعض الوقت للتفرغ من العمل . كما ارجو منك شرح طريقة تسجيل بيانات لمريض اواعطنا اسم مريض لديه تحاليل أخرى ، لأن تتبع طريقة العمل يأخذ وقتاً 🤗
  19. وعليكم السلام ورحمة الله وبركاته ,, جرب هذا التعديل !! Sub imad() Dim doc As Document Dim db As Object Dim rs As Object Dim f As FileDialog Set doc = ActiveDocument Set db = CreateObject("DAO.DBEngine.120").OpenDatabase(ActiveDocument.Path & "\10 - TMLEK.mdb") Set rs = db.OpenRecordset("qtsder") Application.ScreenUpdating = False While Not rs.EOF With doc.Content.Find .ClearFormatting .Text = rs.Fields(0).Value .Replacement.ClearFormatting .Replacement.Text = rs.Fields(1).Value .Execute Replace:=wdReplaceAll, _ Format:=True, _ MatchCase:=True, _ MatchWholeWord:=True, _ Wrap:=wdFindContinue End With rs.MoveNext Wend rs.Close db.Close Set rs = Nothing Set db = Nothing Application.ScreenUpdating = True MsgBox "تم الانتهاء من الاستبدال بنجاح", vbInformation + vbMsgBoxRight, "" End Sub افتح الملف المرفق على اصدار 2016 ،واخبرنا بالنتيجة مجلد جديد (2).zip
  20. كلامك سليم ومنطقي 100% 👍 ، الإعتماد على الدرجات في الخلايا لتحديد اللون فكرة أذكى وأدق ، وأنا فعلاً لم أتوجه الى هذا المنطلق بل حسب طلب الأخ في سؤاله 😅 وحتى يعمل السطر الذي تفضلتم به مع اصدارات اكسل 2010 ، هذا السطر بعد تعديله :- =IF(I9>=85,"أزرق",IF(I9>=65,"أخضر",IF(I9>=50,"أصفر","أحمر")))
  21. اعتقد أنني اكتشفت أين يكمن الخلل . سأعدله قريباً بدلاً من الحيلة السخيفة السابقة
  22. كلامك سليم 100% ، لاحظت ان هذه المشكلة ظهرت عندما جعلت الجدول الذي كان سابقاً غير مرتبط الى جدول مرتبط في قاعدة البيانات الخلفية . لذا كحل مؤقت ، سأقوم بتعديل المرفق في المشاركة على نحوه الجديد كحيلة مؤقتة .
  23. وعليكم السلام ورحمة الله وبركاته ,, بداية أود أن أوضح لك أنه لا يمكن لأكسل التعرف على اسم اللون كما في طلبك ، ولكن يمكننا التحايل عليه بفكرة إلتفافية حول الموضوع ، حيث أولاً يمكن استخراج رقم ( كود ) اللون ، وبذلك أولاً سنستخدم دالة بسيطة تساعدنا في هذه المهمة كالآتي :- Function GetColorCode(rng As Range) As Long GetColorCode = rng.Interior.Color End Function الآن بعد أن حصلنا على النتيجة ، سنستخدم دالة تقوم بالتعرف على اللون الناتج من الدالة السابقة ومحاولة تقريبه الى أقرب درجة معروفة سنقوم بإدخال قيمها يدوياً داخل الدالة ، كالآتي :- Function GetApproximateColorName(rng As Range) As String Dim colorCode As Long, R As Integer, G As Integer, B As Integer colorCode = rng.Interior.Color R = colorCode Mod 256 G = (colorCode \ 256) Mod 256 B = (colorCode \ 65536) Mod 256 If R > 200 And G < 50 And B < 50 Then GetApproximateColorName = "أحمر" ElseIf R > 200 And G > 200 And B < 100 Then GetApproximateColorName = "أصفر" ElseIf R > G And R > B Then GetApproximateColorName = "أحمر" ElseIf G > R And G > B Then GetApproximateColorName = "أخضر" ElseIf B > R And B > G Then GetApproximateColorName = "أزرق" ElseIf R = G And G = B Then GetApproximateColorName = IIf(R < 128, "غامق", "فاتح") & " رمادي" Else GetApproximateColorName = "لون مختلط" End If End Function طبعاً قمت بتغيير الألوان في مثالك إلى الألوان الصريحة لكل لون ( الأخضر ، الأزرق ، الأصفر ، الأحمر ) . وبهذا ، سيتم الاستدعاء في الخلية التي تريد إدراج اسم اللون فيها بهذا الشكل :- =GetApproximateColorName(K7) طبعاً فقط ضع هذا الكود في الخلية L7 ثم اسحب تحديد الخلية الى باقي الخلايا لتطبيق الكود عليها جميعاً . وهذا ملفك بعد التعديل :- Book2.xlsm
×
×
  • اضف...

Important Information