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

Foksh

الخبراء
  • Posts

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

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

  • Days Won

    240

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

  1. وعليكم السلام ورحمة الله وبركاته .. انا عندي نسخة أوفيس 2021 - واجهة انجليزية . وقمت بتحويل الأرقام من العربية الى الهندية وبعدها تصدير ملفك وتم الأمر بنجاح . وهذا ملفك PDF الملف.pdf
  2. أهلاً بكم في التحدي الرابع ؛ استكمالاً لسلسلة "الفعاليات والتحديات الشهرية" ( نظراً لأن التحدي الثالث لم يتم حسم أمره بعد ) .. 📖 قصة التحدي :- لدينا شاشة إدخال فواتير مشتريات تحتوي على نموذج فرعي مستمر SubFrm_InvoiceDetails . وتضم مربعات نص مرتبطة بالحقول التالية :- CategoryID ( القسم الرئيسي : إلكترونيات ، أطعمة ، أدوات منزلية ... إلخ) SubCategoryID ( القسم الفرعي : هواتف ، شاشات ، ألبان ... إلخ) ItemID ( المنتج النهائي كمثال : آيفون 15 ، سامسونج S24 ، حليب مراعي ... إلخ) Quantity ( الكمية ) Price ( السعر ) 🎯 المطلوب :- عند اختيار "القسم الرئيسي" في أي سطر ، يجب أن تقتصر قائمة "القسم الفرعي" و "الصنف" على التابع للقسم المختار في ذلك السطر فقط 🚫 الشرط أنه يجب ألا تختفي أسماء الأقسام الفرعية أو المنتجات في الأسطر السابقة أو اللاحقة نهائياً عند التحديث أو التنقل بين السجلات 🚫 عند التنقل بالأسهم أو الماوس بين السجلات أو الفرز والترتيب ، يجب أن تبقى جميع البيانات في جميع الأسطر ظاهرة بوضوح وسلاسة تامة 🚫 قوانين المشاركة :- السقف مفتوح للمشاركين بالطريقة والوسيلة والأسلوب الذي يراه مناسباً لتنفيذه فكرة التحدي فترة المشاركة بتقديم الأعمال والأفكار سيكون 30 يوماً من تاريخ الموضوع اليوم 21-08-2026 ، وتنتهي بإذن الله بتاريخ 21-09-2026 ♻ كيف تشارك ؟ قم بتنفيذ العمل على الملف المرفق أدناه ، ثم قم برفعه في مشاركتك . 📁 ملف العمل :- التحدي الرابع.accdb إختصاراً للوقت والجهد ، قمت بتعبئة أصناف بأسعار عشوائية متنوعة التصنيفات داخل الجداول .
  3. نرجو تصويب الوضع من المشرفين 😇 .
  4. مداخلة سريعة بعد إذن أستاذنا @hegazee .. برأيي الغير ملزم طبعاً .. أن أفضل حل عملي ونظيف :- بدلاً من الدخول في دوامة تنبيهات إكسل الذكية . اذهب إلى تبويب File (ملف) ثم Options (خيارات) ثم Formulas (الصيغ) ، ثم ألغِ تفعيل الخيار :- Formulas which omit cells in a region . كما في الصورة أدناه :- بهذه الخطوة البسيطة ستظل بياناتك وأرقامك وتنسيقاتك كما تحب ؛ وستختفي جميع المثلثات الخضراء المزعجة من الملف نهائياً . للتوضيح :- طبعاً سبب هذا المنطق الغريب والعجيب من إكسل هو أن اكسل يقوم بتنبيه المستخدم إلى أنه قد يكون قد سهى عن إضافة الخلية المجاورة B10 الى معادلة الجمع . وبالتالي تظهر علامة المثلث الأخضر هذه . وللتأكد ، جرب من علامة التعجب اختيار Update Formula to Include Cells ، ستجد أن المعادلة تحولت إلى :- =SUM(B10:G10) فما علاقة الخلية أو العمود B بالأمر ، ليس لدي معلومة دقيقة ، إلا أنه يمكن أن يكون هذا مقترحاً من مايكروسوفت لمساعدة المحاسبين حين تحدث أمور قد سهوا عنها . يعني على رأي أخواني في مصر الشقيق ( حركة جدعنه منهم 😅 )
  5. ممكن إنك تثبت نسخة أوفيس 2010 - 32 بت ويصبح لديك نسختين الأولى 64 ، والجديدة 32 .
  6. اعتذر منك .. علك تجد حلاً لتعدد وتنوع الطلبات متابع معك
  7. علشان تعدل ، استخدم مفتاح Shift عند فتح الملف ، وبهذا سيعمل معك الملف كأنك لم تفتح النموذج.
  8. وعليكم السلام ورحمة الله وبركاته .. جرب هذا الملف المرفق اخي @ابو مارفن .. خروج وبحث-لصق-نسخ.xlsb
  9. وعليكم السلام ورحمة الله وبركاته .. ما الذي لا يعمل به ؟؟ فقط قمت بتحميل الملف وفتحه وتسجيل كلمة مرور المدير m44 وعمل بشكل طبيعي على اصدار اكسيس 2010 - 32 بت !!!
  10. امممم .. الأصل أخي الكريم أن يتم التوقف عن التوسع في الطلبات داخل هذا الموضوع . لأنه لم يلتزم بسياسة المنتدى بحيث يكون لكل موضوع طلب واحد فقط لا أكثر .. لذا أرجو منك فتح موضوع جديد بعنوان :- "إخفاء واجهة اكسل للملف الحالي فقط ، مع إمكانية عرض واجهة اكسل لملفات أخرى عند فتحها"
  11. الأمر غريب فعلاً ...🤔... فقد قمت بالتجربة على نسخة أوفيس 2010 - 32 ، وبعد إلغاء السطور الثلاثة بقيت عملية النسخ واللصق تعمل .. ولكن إليك الحل السليم بعد تجربته على أكثر من إصدار بإذن الله تعالى .. أولاً سنضيف تعريف الثابت التالي داخل المديول :- Public Const WS_EX_NOACTIVATE As Long = &H8000000 ثم نعدل حدث النموذج بحذف أسطر الشفافية القديمة ونستبدلها بالثابت الذي قمنا بتعريفه WS_EX_NOACTIVATE ، ليصبح :- Private Sub UserForm_Activate() #If VBA7 Then Dim Style As LongPtr Dim ExStyle As LongPtr #Else Dim Style As Long Dim ExStyle As Long #End If Dim ScreenWidth As Long Dim FormWidthPixels As Long Dim RightX As Long hWndForm = FindWindow(vbNullString, Me.Caption) If hWndForm <> 0 Then Style = GetWindowLongPtr(hWndForm, GWL_STYLE) Style = Style And Not WS_CAPTION Style = Style And Not WS_SYSMENU SetWindowLongPtr hWndForm, GWL_STYLE, Style DrawMenuBar hWndForm ExStyle = GetWindowLongPtr(hWndForm, GWL_EXSTYLE) SetWindowLongPtr hWndForm, GWL_EXSTYLE, ExStyle Or WS_EX_NOACTIVATE ScreenWidth = GetSystemMetrics(SM_CXSCREEN) FormWidthPixels = Me.Width * 1.33 RightX = ScreenWidth - FormWidthPixels SetWindowPos hWndForm, HWND_TOPMOST, RightX, 100, 0, 0, SWP_NOSIZE End If End Sub والنقطة الثالثة وهي كيفية الإستدعاء للنموذج بحيث نستدعيه بدون قيود :- Private Sub Workbook_Open() us.Show vbModeless End Sub بهذه الطريقة سيعمل شريط الأدوات العائم بكفاءة تامة وبدون شفافية ، وسينفذ الأوامر مباشرة داخل إكسل وجميع برامج أوفيس والتطبيقات الخارجية بدون أي تعليق أو فقدان للتركيز . فالمشكلة كانت في فقدان التركيز للنموذج . حيث يتم منع النموذج من سحب التركيز نهائياً عند النقر عليه ، وبالتالي تظل الخلية أو النص المحدد في وورد أو إكسل محتفظاً بالتركيز ويتم النسخ واللصق فوراً . بحث-لصق-تسخ.xlsb
  12. أخي الأستاذ @عبدالله بشير عبدالله ، المشكلة جداً بسيطة إن شاء الله .. فقط قم بإلغاء أو إيقاف السطور الثلاثة التالية :- ExStyle = GetWindowLongPtr(hWndForm, GWL_EXSTYLE) SetWindowLongPtr hWndForm, GWL_EXSTYLE, ExStyle Or WS_EX_LAYERED SetLayeredWindowAttributes hWndForm, 0, 160, LWA_ALPHA من الدالة Private Sub UserForm_Activate فقط .. حيث كانت تقوم بإضافة خاصية الشفافية بقيمة 160
  13. أسعدني مرورك أستاذي @شايب . ولهو من سوء حظي أنني لم أكن مهتماً بشغف قبل هذه السنوات الـ 10 التي مضت . ولكن لم تمت فكرة وليدة في رأس صاحبها إلا إن أهملها .. والفكرة هذه أحمد الله على نجاحها وإتمامها المطلوب كما يحب المستخدم . سؤالي ، هل الصورة المرفقة في مشاركتك من تصميم الأداة ؟؟ سؤالي يتعلق بالواجهة العربية من آكسيس وفكرة عرض شريط الريبون أثناء التصميم من اليمين لليسار . دمتم بخير
  14. جزاك الله خيراً أستاذ @عبدالله بشير عبدالله ، فعلاً كنت قد التفت الى حل المشكلة التي أشار لها صاحب الموضوع أخي أبو مارفن ، ولم أتيقن أنه قد يكون إصدار الآكسيس 2010 .. ففعلاً على الإصدار 2010 لم تعمل معي النسخة حتى مع تعديلي لاسم النموذج في الاستدعاء . ولكنه عمل معي حين ردي السابق على الاصدار 2019 في جهاز آخر .. فعلاً في العجلة الندامة 😅
  15. وعليكم السلام ورحمة الله وبركاته.. جرب المعادلة التالية في الخلية B3 كمثال ، وعلى افتراض ان الخلية A3 تحتوي الرقم القومي المكون من 14 رقم :- =IF(A3="","",IF(MOD(VALUE(MID(A3,13,1)),2)=1,"ذكر","أنثى"))
  16. من المستحيل اخي الكريم.. تحقق وتأكد جيداً، فهذا محتوى الرسالة من المرفق 🕵🏻‍♂️
  17. ما شاء الله أخي منتصر ، الموضوع جميل جداً وشيق كثيراً .. ولكن فرحتي لم تبدأ 😥 . حيث كانت نتيجة تجربتي :-
  18. أخي الكريم الخطأ واضح وصريح جداً .. فقط غير قيمة usl.Show لتصبح us.Show فقط . يعني مقصدي هو تصحيح استدعاء اسم النموذج فقط لا غير .
  19. وعليكم السلام ورحمة الله وبركاته .. أخي جو والمتاهات في مشروعك 😅 . بعد تتبع المشكلة المشكلة لاحظت أنك كنت تستخدم المتغير strSelectedChoice مباشرة في الزر CArea ، في السطر :- Area = strSelectedChoice Call SetProperty("AreaValue", dbText, strSelectedChoice) لكن لم تكن هناك أي خطوة تسند القيمة للمتغير بعد إغلاق الرسالة . فكان المتغير يعود فارغاً للدالة . أيضاً في الدالة SetProperty ، كانت المشكلة عند الجزء dbs.CreateProperty !!! ففي أكسيس ( DAO ) لا تقبل إطلاقاً حفظ قيمة فارغة Null ، وعند إرسال قيمة فارغة كانت تعود لك بالخطأ 3385 . وهنا فقط قمنا بإضافة السطر If IsNull(varValue) Or IsEmpty(varValue) Then varValue = "" أيضاً التصريح الصريح لكائنات DAO . حيث تم إضافة تعريفات Dim dbs As DAO.Database لضمان عدم حدوث تضارب بين مكتبتي DAO و ADO داخل أكسيس . وإليه فالملف المرفق التالي بعد إجراء التعديلات :- TEST.zip
  20. وعليكم السلام ورحمة الله وبركاته .. بداية اعتقد ان العنوان ونص الموضوع مخالفان لشروط وسياسة المنتدة و وجب التصحيح بالتعديل . ثانياً اعتقد أيضاً أن هذا الموضوع قد يساعدك قليلاً
  21. ما الجديد في هذا التحديث .. ضبط الحاوية بحيث تتأقلم مع طول التسمية التوضيحية لأطول زر . ضبط حجم الأزرار داخل الحاوية بحيث تكون بالحجم العادي عندما يكون اتجاه الحاوية عامودي ، والحجم الكبير للزر اذا كان اتجاه الحاوية أفقي . ضبط زر الإغلاق ليقوم بوظيفتين . * الإغلاق التام للأداة اذا كانت تعمل بشكل مستقل وليس كوظيفة Add-in داخل مشروعك لتلافي اغلاق قاعدة بياناتك كاملة . * الإغلاق المقتصر على النموذج الرئيسي للأداة اذا كانت تعمل كوظيفة Add-in . ملف الأداة للتحميل للإصدار 64 :- Ribbon Builder - 64.zip ملف الأداة للتحميل للإصدار 32 :- Ribbon Builder - 32.zip
  22. أخي منتصر .. الحاوية وظيفتها مثل الكيس اللي يحتوي تفاح أحمر وأخضر ذو السعر الواحد .. فإن كنت تريد فصل التفاح الأصفر عنهم داخل الكيس نفسه فيلزمك كيس آخر حتماً . وهنا سنتوقف لأن الموضوع سيكون منطقياً أكثر بأن يكون التفاح الأصفر في كيس منفصل . أي أن الفاصل وظيفته تحويل الكيس العشوائي الى كيس ذو حجرات منتظمة . ولهذا تم تقييده ليكون اذا كان موضع الأزرار أفقي فقط لأن ارتفاع الشريط قد يتلف المنظر . وبالتالي جعلت لك الكيس فقط يستوعب الفاصل عندما يكون تصميمه افقي فقط 😅 . أضف إلى ذلك أن عنصر الفاصل في ملفات الـ XML للريبون مصمم هيكلياً ليعمل كـ خط فاصل عامودي يفصل بين المجموعات أو العناصر العامودية . يعني لا يوجد عنصر فاصل أفقي مخصص للريبون العامودي . أخي موسى .. ملاحظتك الأولى أعتقد أن حلها هو إما تصميم الشريط من الأساس في مشروعك باستخدام Add-in ، أو الإبقاء على استخدام الأداة منفصلة وضبط الإحداث كاملة وتصديرها الى قاعدة بياناتك ... وكلاهما واحد 😉 . وطبعاً لا تنسى أن استيراد أو فتح مشروع محفوظ مسبقاً من خارج الجداول سيتطلب منك ضبط الأيقونات فقط لأنها تتبع مسار مختلفاً عن تصميم الشريط الأساسي . والسبب هو انه يتم دمج الأيقونات داخل جداول النظام وليس داخل الجداول الخدمية للأداة . الوظيفة هنا واضحة ومفهومة ومفادها بالنتيجة عند اعتمادك للشريط الذي قمت بتصميمه هو عدم إظهار تبويبات آكسيس الأصلية .. ولكن يمكنك فتح قاعدة بيانات للتعديل على سبيل المثال باستخدام مفتاح الـ Shift 😁 . هذه النقطة قد يكون لها علاج بحيث يتم التمييز ما إذا كانت الأداة تعمل بشكل منفصل أو من خلال استدعائها من الوظائف Add-in ، ويمكن تقييد زر الخروج وجعله زر واحد يقوم بالمهمتين ( الإغلاق لقاعدة البيانات اذا كانت الأداة تعمل منفصلة ، أو الخروج من الأداة اذا كانت تعمل من خلال استدعاء الوظيفة من الـ Add-in ) . لم يصدف أن رأيت شريطاً اتجاهه من اليمين الى اليسار اذا كانت واجهة آكسيس باللغة الانجليزية 🤔 . فهدف دعم الإتجاهين هو فقط لدعم النسخ العربية ذات الواجهة العربية فقط . هذه النقطة تم حلها والحمد لله ، والسبب كان حجم الازرار الافتراضي كان = كبير عندما يكون اتجاه الحاوية العامودي . وتم علاجه بضبط حجم الزر إلى العادي . ما دام الهدف واضحاً و واحداً في الرسالتين ، فليست ذات مشكلة 😅 . كنت أطمح أن تكون باقي الإنتقادات ذات صلة أكبر في التنفيذ كأخطاء أو عقبات من شأنها أن تجعل الأداة غير ناجحة 😅 . ولكن طبعاً ملاحظاتكم وأي ملاحظات أخرى تهمني للتطوير بلا شك .. وشكراً لكم التجربة طبعاً
  23. عافاك الله مهندسنا الغالي @Moosak 💐 .. خذ وقتك بالتجربة 😋
  24. بارك الله فيكم أخي أبو الحسن .. شكراً لكم مروركم الكريم
×
×
  • اضف...

Important Information