نجوم المشاركات
Popular Content
Showing content with the highest reputation since 02/04/26 in all areas
-
السلام عليكم وجدت لكم صيدا سمينا لمن يواجه صعوبة في استخدام شجرة الحسابات اسميتها الحرة .. لأنها لا تستخدم اداة ActiveX TreeView تعتبر مشكلة أداة ActiveX TreeView في الإصدارات الحديثة من Microsoft Access (خاصة مع ظهور النسخ 64-بت) من أكثر التحديات شيوعاً، لأن الأداة القديمة (MSCOMCTL.OCX) غير مستقرة، تسبب مشاكل في "المكتبات" (DLLs)، ولا تدعم بنية 64-بت بشكل أصيل. هذا هو الخيار "الاحترافي" حالياً. بدلاً من أداة خارجية، يتم استخدام وحدات نمطية (Class Modules) برمجها مطورون لتغيير شكل النماذج العادية لتشبه الشجرة تماماً باستخدام عناصر التحكم الأصلية (مثل الـ Labels والـ Textboxes) تعتبر أداة Jan Karel Pieterse (المعروفة بـ JKP TreeView) واحدة من أرقى الحلول البرمجية التي تعتمد على "الفئات" (Class Modules) لتعويض أداة ActiveX، لأنها لا تعتمد على ملفات خارجية، بل تُبنى بالكامل داخل كود VBA إليكم المثال العملي تم فيه إنشاء شجرة حسابات احترافية بدون الاعتماد على ActiveX ولمن أراد التوسع والاستفادة يوجد امثلة ومرفقات متنوعة مجانية خاصة بأكسس اصدارات قديمة وأكسل وورد .. في هذا الرابط Treeview 26-5.rar6 points
-
6 points
-
عن تجربتي الشخصية سأتحدث . حيث قمت سابقاً بتنفيذ الفكرة لمشروع آخر ليرسل الإيميلات من بريده في Gmail إلى أي ايميل تريده ؛ دون إدخال أي وسيط أو موقع خارجي . حيث سيكون تعاملك مع خدمات جوجل مباشرة قمت بإنشاء جدول جديد باسم tbl_EmailSettings . ويحتوي الحقول التالية :- IDMail = حقل ترقيم تلقائي . SenderEmail = حقل نصي ، ويمثل أيميلك الذي تريد استخدامه كإيميل مرسل . SMTPServer = حقل نصي ، ويمثل الخدمة المستخدمة في Gmail لإرسال البريد الإلكتروني . وتكون عادة = smtp.gmail.com SMTPPort = حقل رقمي ، ويمثل المنفذ الذي سنستخدمه للإيميلات الصادرة . وهو عادة لـ Gmail يكون 465 . SMTPPassword = حقل نصي ، وهو الحقل المهم جداً هنا والذي ستكون قيمته كلمة مرور التطبيق الذي سنقوم بإنشائه من خلال بريدك الإلكتروني الذي سجلت به في الحقل SenderEmail . أما كيف نحصل عليه فسيكون الشرح تالياً . UseSSL = حقل من نوع Yes/No . وهو مهم إلى حد ما . والسبب أنه جميع خدمات البريد الحديثة (Gmail, Yahoo, Hotmail) تشترط وجود تشفير SSL . لذا فقيمته بالنسبة لك ستكون دائماً True . الآن كيف نحصل على SMTPPassword المقدم من Gmail ؟ إليك الطريقة خطوة بخطوة ببساطة . في متصفحك ، ادخل إلى ( إعدادات حساب Google ) . تحقق أولاً وقبل كل شيء من تفعيل ميزة ( التحقق بخطوتين ) أو ( 2-Step Verification ) في حسابك . ابحث في خانة البحث عن ( كلمة مرور التطبيق ) أو ( كلمات مرور التطبيقات )، او ( App Password ) ، حسب لغة الموقع لديك . ادخل كلمة المرور الخاصة بالإيميل الذي تريد استخدامه كإيميل مرسل . في خانة ( اسم التطبيق ) أو ( App Name ) ، أدخل اسم للتطبيق ، مثلاً ( SenderMailer ) . ثم انقر زر ( إنشاء أو Creat ) . الآن سيزودك الموقع بكلمة من 16 حرف ، انسخها والصقها في الحقل SMTPPassword . الآن في الجدول المخصص للأعدادات ، سيكون لديك الحقول المهمة وقيمها كالتالي :- SMTPServer = عنوان الخادم وهو smtp.gmail.com SMTPPort وهو المنفذ = 465 SMTPPassword = كلمة المرور التي حصلنا عليها من 16 حرف ( يفضل بدون مسافات ) UseSSL = نعم أو علامة صح SenderEmail = إيميلك الذي سجلت به والذي ستستخدمه للإرسال الآن في زر الإرسال المخصص لكل ايميل بشكل فردي ، سنستخدم الكود البسيط التالي :- Dim result As String Dim strRecipient As String Dim strMessageBody As String strRecipient = Trim(Nz(Me.B2.Value, "")) strMessageBody = Nz(Me.Fonda.Value, "") If strRecipient = "" Then MsgBox "يرجى إدخال إيميل المستلم أولاً", vbExclamation + vbMsgBoxRight, "" Me.B2.SetFocus Exit Sub End If result = SendSmartEmail(strRecipient, "رسالة تجريبية", strMessageBody) If result = "Success" Then MsgBox "تم الإرسال بنجاح", vbInformation + vbMsgBoxRight, "" Else MsgBox "فشل في الإرسال", vbCritical + vbMsgBoxRight, "خطأ" End If وفي زر الإرسال الجماعي ، سنستخدم الكود التالي :- Dim rs As DAO.Recordset Dim result As String Dim counter As Integer Dim strTo As String Dim strMsg As String Set rs = Me.RecordsetClone If rs.RecordCount = 0 Then MsgBox "لا توجد سجلات للإرسال إليها في هذا النموذج", vbInformation + vbMsgBoxRight, "" Exit Sub End If If MsgBox("هل أنت متأكد من إرسال إيميلات لجميع السجلات الحالية؟", vbQuestion + vbYesNo + vbMsgBoxRight, "تأكيد الإرسال") = vbNo Then Exit Sub counter = 0 rs.MoveFirst Do Until rs.EOF strTo = Nz(rs!Gmail, "") strMsg = Nz(rs!Fonda, "") If strTo <> "" Then result = SendSmartEmail(strTo, "تنبيه بريدي", strMsg) If result = "Success" Then counter = counter + 1 End If End If rs.MoveNext Loop MsgBox "تمت عملية الإرسال بنجاح" & vbCrLf & _ "عدد الإيميلات المرسلة: " & counter, vbInformation + vbMsgBoxRight, "" Set rs = Nothing وملاحظة بسيطة ، وهي تستطيع تغيير موضوع عنوان البريد الذي سيصل لأي شخص ترسل له ( بشكل منفرد ) بتغيير قيمة "رسالة تجريبية" داخل زر الإرسال . أو من خلال الزر المخصص للإرسال الجماعي بتغيير قيمة "تنبيه بريدي" ليكون هو العنوان لموضوع البريد . وهذا ملف تجريبي بعد الإضافات التي ذكرتها . فقط يرجى ملئ الجدول بالإيميل و كلمة المرور التي تتكون من 16 حرف فقط . Nouveau.zip الفكرة و المشاركة كانت تتبع الموضوع التالي هنا ، وتم فصلها لإفرادها وكي تعم الفائدة على من يمر باحثاً عن فكرة إرسال بريد من آكسيس دون قيود . التحديث الجديد في هذه المحادثة هنا :- التحديث الجديد في هذه المحادثة هنا :- التحديث الجديد في هذه المحادثة هنا :-4 points
-
4 points
-
3 points
-
برنامج مكتبي لتنظيم الملفات التي علي جهازك و إدارة اعمالك وتذكريرك بوقت العمل وهو مقتبس من عدة افكار واريد ان اساهم في هذا الموقع الذي له فضل عليه بعد الله في تعليمي وإتقاني لقواعد البيانات وايضا استعنت بالله ثم بالذكاء الصناعي لعمل هذا المشروع وهذا كنوع من رد الجميل لهذا الموقع الذي له فضل عليه بعد الله واملي ان يعجبكم مشروع تنظيم الاعمال والملفات.accdb3 points
-
ممكن وبكل سهولة هذا البرنامج يسهل عليك أدخال الدرجات والتاريخ كذلك الشرح يطول ولكن ثق تماما أنك بمجرد أن تفتحه وتثبت الماكرو وتستخدمه ستفهم البرنامج ثم بعد التجربة أذا أردت أي توضيح نحن في الخدمة محرر الأكواد مفتوح ويمكنك التعديل عليه كما تريد الطريقة : افتح ملفك الذي تريد الأدخال فيه ثم افتح هذا الملف ثم اضغط على إحدى الأيقونتين (الدرجات أو التاريخ) وعندما يفتح الفورم انتقل مباشرة إلى ملفك الذي تريد الأدخال فيه ستجد أن الفورم ينتقل إلى الملف الجديد تفضل إدخال الدرجات والتاريخ.xls3 points
-
الطرح مبهم يجب عليك الشرح بتفصيل على النحو التالي : 1- نوع العمل او المشروع الذي تعمل عليه 2- نوع البيانات المدخلة بكل شيت 3- ما هي البيانات الثابتة تقريبا 4- ما هي البيانات المتجددة التي يتم ادخالها بانتظام 5- ارفاق الشيتات بلمف مضغوط بشرط ان تشتمل على بيانات حتى لو كانت هذه البيانات وهمية 6- ما المطلوب في المخرجات .. اي : ما التقارير التي تريد اخراجها وطباعتها هنا يمكن للاخوة هنا مساعدتك في بناء برنامجك3 points
-
3 points
-
3 points
-
وعليكم السلام ورحمة الله وبركاته نستخدم دالة Abs في VBA. هذه الدالة تقوم بتحويل أي رقم سالب إلى موجب مع تغيير اسماء التكست لديك TextBox3.Value = Abs(Val(TextBox1.Value) - Val(TextBox2.Value))3 points
-
3 points
-
وعليكم السلام ورحمة الله وبركاته الطريقة حدّد كل الجدول (أو النطاق الكبير اللي تشتغل فيه). من القائمة: اختر (تنسيق شرطي) ثم (قاعدة جديدة) ثم (استخدام صيغة لتحديد الخلايا المراد تنسيقها) اكتب الصيغة التالية: =ROW()=CELL("row") اختر اللون اللي تحبّه. اضغط (موافق) الأن كلما تكتب في أي خلية في السطر اضغط السهم لليمين أو اليسار وواصل الكتابة ـ يعني لاتنزل سطر جديد ولكن تابع الكتابة في نفس السطر تقبل تحياتي3 points
-
تمهيداً للتحدي الثاني ، وللإنتقال إلى مرحلة أكبر عن المستوى الأول . وإنطلاقاً من باب المشاركة للجميع . سنتجه للأخذ بترشيحكم لموضوع من بين 3 مواضيع ، ليتم طرحه كسؤال التحدي الثاني . 1️⃣ إنشاء مؤقتة الصلوات .. 2️⃣ إنشاء نظام تسجيل دخول احترافي برمجياً ، مع نظام صلاحيات متعدد المستويات .. 3️⃣ إنشاء نظام قارئ للنصوص متعدد الخصائص ..2 points
-
أخواني وأساتذتي ومعلمينا ( دون استثناء ) الكل مر بحياته على هاي اللعبة البسيطة والجميلة ، إن كان في طفولته أو في شبابه .. واليوم جسدناها بطريقة فوكشية جديدة من خلال آكسيس ، وتحدي معوقاته بالتعامل مع الصور .. وبدون ما نتكلم في هذه النقطة - واللي رح أتركها لكم للتجربة - رح أشرحلكم اليوم اللعبة ببساطة للي ما بعرفها من قبل . تتكون اللعبة من مجموعة من الأوراق ، تتمثل في :- أوراق الأرقام : تحتوي اللعبة على أوراق الأرقام (9-0) ضمن ألوان مختلفة : الأحمر ، الأصفر ، الأزرق ، الأخضر . بطاقات الأوامر : تختلف هذه البطاقات في اللون والأمر الذي يترتب على استخدامها ، وهي كالآتي :- بطاقة تغيير الاتجاه : تُمكن اللاعب من تغيير سير اللعبة من اليسار إلى اليمين أو العكس . وإذا كانت اللعبة مكونة من لاعبين اثنين فقط ، يتم تخطي دور اللاعب الآخر ويعود الدور للّاعب الذي لعب البطاقة . بطاقة السحب +2 : وتمكن اللاعب من إجبار اللاعب التالي على سحب ورقتين من كومة الأوراق . ويتم تخطي دوره وينتقل الدور للّاعب الذي يليه . بطاقة تخطي الدور : تمكن اللاعب من منع اللاعب التالي من لعب دوره القادم وينتقل الدور للاعب الذي بعده . بطاقة السحب +4 : وتمكن اللاعب من اختيار اللون الذي سيلعبه اللاعب التالي ، وإجباره على سحب 4 أوراق من كومة الأوراق . ويتم تخطي دوره وينتقل الدور للّاعب الذي يليه . بالنسبة إلى توزيع الأوراق في الأونو ، يتم التوزيع بشكل عشوائي ، حيث يوزع 7 أوراق لكل لاعب ويضع باقي الأوراق بشكل مقلوب على يسار منطقة اللعب ، وتسمى ( كومة اللسحب ) . وييتم وضع آخر ورقة بشكل مكشوف في منتصف منطقة اللعب ، وهذا المكان يسمى ( النار ) ، وإذا كانت أوّل ورقة مكشوفة في النار هي بطاقة تغيير اللون أو بطاقة اسحب 4 ، هنا يجب إعادتها لكومة الأوراق وتسحب ورقة أخرى غيرها . طريقة اللعب :- يبدأ اللاعب باللعب في نسختنا ، وذلك برمي أي ورقة في النار ، على أن توافق هذه الورقة آخر ورقة في النار بأحد الشرطين :- - اللون نفسه من أي قيمة . - القيمة نفسها من أي لون . ينتقل الدّور بين اللاعبين باتجاه عقارب الساعة ، وإذا لم يمتلك أحد اللاعبين ورقة أو بطاقة مناسبة للّعب ، يجب عليه أن يسحب من كومة الأوراق . زر الأونو :- وهي كلمة يقولها اللاعب إذا تبقت في يده ورقة أو ورقتان ، وسيلعب إحداهما ويضعها في كومة النار ، هنا يجب أن يقول " أونو " لتحذير اللاعبين الآخرين قبل رمي ورقته ما قبل الأخيرة ، وإذا لم يُحذّر اللّاعب من امتلاكه بطاقة واحدة وانتبه عليه اللاعبون الآخرون سيُعاقب بسحب بطاقتين من كومة الأوراق وهذا ما أطلقنا عليه اسم تحدي الأونو 😁 . في نموذج البداية ، تم إضافة وتفعيل 3 خيارات للتحكم بخصائص اللعبة . بحيث لديك :- 1️⃣ السماح بالسحب التراكمي عند رمي ورقة السحب +2 . ماذا يعني هذا ؟ يعني لو اللاعب رمى ورقة +2 ، والكمبيوتر معه ورقة +2 ، فالكمبيوتر بقدر يرمي الورقة اللي معه بغض النظر عن لونها . وهيك بكون الدور عندك إنك تسحب 4 ورقات . إلا إذا كان معك ورقة +2 ثانية ، فبتقدر ترميها . وبرجع الدور للكمبيوتر يسحب 6 ورقات ..... وهيك بشكل تراكمي . 2️⃣ السماح بتبديل الأوراق عند رمي أي لاعب ورقة 0 أو ورقة 7 مهما كان لونها . فسيتم تبديل الأوراق التي بيدك لتصبح بيد الكمبيوتر والعكس طبعاً 😜 . 3️⃣ السحب من كومة الورق حتى يجد اللاعب ورقة صالحة للّعب . يعني بدل ما تسحب ورقة وحدة ، رح تضل تسحب حتى تلاقي ورقة ترميها للنار . 4️⃣ تحديد قيمة النتيجة التي يفوز اللاعب الذي يصل لها أولا . فعند فوز أي لاعب ، يأخذ مجموع القيم للأوراق التي في اللاعب الثاني . والإحتساب كما يلي لقيمة كل ورقة . طريقة حساب النقاط :- تحسب النقاط في لعبة أونو كما يأتي :- أوراق الأرقام = قيمة الورقة نفسها . بطاقة اسحب 2 = 20 نقطة . بطاقة تخطّي الدّور = 20 نقطة . بطاقة تغيير الاتّجاه = 20 نقطة . بطاقة تغيير اللّون = 50 نقطة . بطاقة اسحب 4 = 50 نقطة . صورة حية من اللعبة :- ملفات اللعبة للإصدارين ، 64 و 32 :- للإصدار 32 :- Uno Game - 32.zip للإصدار 64 :- Uno Game - 64.zip :- يجب أن يكون ملف اللعبة بجانب مجلد الصور حتى لا تواجه مشاكل في اللعب .2 points
-
السلام عليكم ورحمة الله وبركاته اعتقد ان المشكلة في تنسيق الخلايا حيث التنسيق الحالي _-* #,##0.00 _€_-;-* #,##0.00 _€_-;_-* "-"?? _€_-;_-@_- _-* "-"?? _€_- هذا الجزء يخبر إكسل أن يعرض علامة "-" بدلًا من الصفر. اجعل تنسيق الخلايا لكل النطاق c6:k76 _* #,##0.00 _€_-;_* #,##0.00 _€_-;_;;_-@_- حيث ;; يجعل الخلية فارغة طبقت التعديل على بعض الصفحات التي تم الغاء الحماية عنها كتجربة ورقة الإستهلاك اليومي جانفي100% 2026.xls ارجو ان يكون في ردي بعض الافادة2 points
-
وعليكم السلام ورحمة الله وبركاته هذا الطلب غير موجود في عنوان مشاركتم الاساسية ولا في شرح طلبكم وبالنسبة لهذا الطلب اردت تقديم ما يفيد ولكن حسب ملقكم و حسب طلبكم الاحير ومن الملاحظات:- خلية "الاسم" و"مكان العمل" غير مرتبطة بقوائم الأسماء أو البيانات في الصفحات الأخرى، والاسم المكتوب غير موجود أصلاً في السجلات؛ دمج آلاف الخلايا من V إلى XFC (أكثر من 16,000 خلية) لعمل قائمة منسدلة هو إجراء غير صحيح، في حين أن خلية واحدة تكفي تماماً فاذا كان طلبكم الاساسي وهو ادراج كود معاينة قد تحقق في الرد السابق عليه قم بادراج موضوع جديد به طلب واضح مقرون بملف مستوف للبيانات ومنظم تقنياً ومحدداً في أهدافه إلغاء الدمج ، واستخدام خلية واحدة فقط (مثلاً V6) وتوسيع حجمها ظاهرياً فقط إذا لزم الأمر واربطها بمصدر البيانات الفعلية والاسماء الحقيقية الموجودة بالملف ولا احفيك سرا ان اي ملف عشوائي في التنسيق وغير مستوف البيانات لا يشجع أحداً على العمل عليه قم بذلك والجميع سيقدم المساعدة والحلول المناسبة تقبل الله صيامكم2 points
-
وعليكم السلام ورحمة الله وبركاته اليك الملف وبه كود المعاينة ملف الحجز.xlsb2 points
-
2 points
-
2 points
-
مميزات التحديث الجديد :- واجهة رسومية متطورة وجميلة وتحاكي الحداثة والتطور . إنشاء ديناميكي للجداول ، بحيث ما عليك سوى نقل النموذج والمديول فقط . إمكانية اختيار أكثر من بريد إلكتروني مستلم ، أو حتى بريد واحد بحيث تم دعم الإرسال المنفرد والجماعي كحزمة . وهنا الجدير بالذكر لتجربة النموذج المنبثق الغير موجود . دعم للمرفقات بكامل الأنواع . دعم الأرسال كنسخة مكربنة أو نسخة مخفية ( Cc , Bcc ) . لتلافي مشاكل الحظر الناتجة عن الأرسال الكبير بالدفعات ، تم إضافة فكرة مؤقت الانتظار بالثواني لكل عدد إيميلات تحدده من الواجهة . إمهال المستخدم مدة 5 ثواني لتأكيد عملية الإرسال . والهدف منها في حال الرغبة بعدم الإرسال لتصحيح أو تعديل قبل الأرسال . دعم رسائل الخطأ بالتوضيح الصريح لكل خطأ داخل جدول الأرشفة الذي يقوم بتخزين جميع الإرسالات التي تمت . تم إضافة نموذج لإدخال الإعدادات المستخدمة في الخدمة . .. والعديد من الميزات التي ستكتشفونها بأنفسكم .. دعم الواجهة بالكامل باللغة العربية . وللتذكير بآلية ضبط الإعدادات في الجدول :- كيف نحصل على SMTPPassword المقدم من Gmail ؟ إليك الطريقة خطوة بخطوة ببساطة . في متصفحك ، ادخل إلى ( إعدادات حساب Google ) . تحقق أولاً وقبل كل شيء من تفعيل ميزة ( التحقق بخطوتين ) أو ( 2-Step Verification ) في حسابك . ابحث في خانة البحث عن ( كلمة مرور التطبيق ) أو ( كلمات مرور التطبيقات )، او ( App Password ) ، حسب لغة الموقع لديك . ادخل كلمة المرور الخاصة بالإيميل الذي تريد استخدامه كإيميل مرسل . في خانة ( اسم التطبيق ) أو ( App Name ) ، أدخل اسم للتطبيق ، مثلاً ( SenderMailer ) . ثم انقر زر ( إنشاء أو Creat ) . الآن سيزودك الموقع بكلمة من 16 حرف ، انسخها والصقها في الحقل SMTPPassword . في المشروع ، سيتم انشاء إستعلام بإسم Qur_Foksh تلقائي . كل ما عليك فعله هو إضافة الأسماء والإيميلات الى الجدول Tbl_Emails ، ثم في الاستعلام إضافة حقل الإسم أولاً ثم حقل الايميل ثانياً ، كي يظهر معكم الإيميلات التي تم تسجيلها في النظام للإرسال داخل النموذج أو في نفس الاستعلام اختر الجدول الذي يحتوي الأيميلات ، وقم بإضافة حقلي الإسم والإيميل فقط :- الملف المرفق مفتوح المصدر .. EmailSender 2026.zip2 points
-
لا ابدا ليس هناك ضرر .. الاختصار والاحكام نلجأ اليه غالبا في حالات منها ان تكون داخل اجراء أو حدث واحد .. وتكون الاكواد فيه طويلة وكثيرة جدا ويمكن اختصارها الى الأفضل .. بشرط ان تكون افضل في السرعة والأداء او ربما عدة احداث طويلة ومكررة يمكن جمعها في دالة واحدة ومناداتها بسطر واحد والفائدة من هذه هي سهولة التعديل مستقبلا او التطوير حيث سيكون التعديل في مكان واحد بدلا اماكن عديدة متفرقة .2 points
-
عفوا .. اقصد ان الدالة تقوم بحماية الحقول بينما هي محمية بالفعل لجعل الحقول قابلة للتحرير اعتقد ستصبح الدالة هكذا Private Sub Add_New_Record() Me.comresearch_01 = Null dateoftrans.Locked = False Me.stat.Locked = False Me.F_DATAILS.Locked = False DoCmd.GoToRecord , , acNewRec End Sub2 points
-
ولماذا لا نجمع بين مزايا كل حل كما بالمرفق هنا؟ ولكن لاأدري إذا ما كان ماكرو البيانات يندرج ضمن المحضورات المذكورة في التحدي Challange_01_03.accdb2 points
-
وعليكم السلام ورحمة الله وبركاته هناك امر لم استوعبه في ملفك هل المعادلة في N1 تتعامل مع الحلية C2 فقط ام مع كل العمود C2:C اذا كانت مع كل العمود فيفضل كتابتها في N2 ثم تسحب الى اسقل حتى تتعامل كل حلية في C مع ما يقابلها في N اما اذا كانت المعاملة محدودة C2 مع N1 فقط جرب الملف المرفق ج مساعدة.xlsm2 points
-
وعليكم السلام ورحمة الله وبركاته أهلا بك أخي أسمح لي أن أقول لك وبكل احترام وتواضع السبب هو : أنت كتبت في الكود وقة5 بدون راء والصحيح ورقة5 بحرف الراء2 points
-
السلام عليكم وتماشيا مع روح الشروط (وليس تماشيا مع الشروط 🙂 ) ، وهي ثغرة قانونية استندت عليها في المرفق 🙂 هممم ، اعتقد هذه العبارة ذو اكثر من تأويل ، فإذا استعملناها بحذافيرها ، فيمكن ان نعمل المطلوب ولكن الكود سيكون غير واضح بسبب إستعمال عدد كبير من iif في بعضها البعض !! ولذلك من مرفقات الشباب اعلاه ، ارى انهم لم يلتزموا بالعمل على مستوى إعدادات الجدول فقط ، وانما انتقلوا الى إعدادات الحقول ايضا 🙂 Challange_01_02.zip2 points
-
2 points
-
2 points
-
وهذي مشاركتي المتواضعة 🙂 التحدي 1 - التعامل مع الجداول وخصائصها - موسى.accdb2 points
-
2 points
-
وعليكم السلااااااام ورحمة الله وبركاته .. وبما أنني من عشاق تصميم الألعاب في آكسيس .. وقد كان لي تجربة مع هذه اللعبة الجميلة ، وقد قمت بتضمينها ضمن برنامج إدارة النوادي الرياضية في هذا الموضوع هنا .. وكانت تجربتي بالشكل القديم التالي :- ولكن وبما أننا في 2026 ، فسأقوم بتطويرها بشكل أجمل ضمن هوايتي المتواضعة .😁.2 points
-
2 points
-
2 points
-
شكراً للجميع ... إستعنت بـ شات جي بي تي وإتضح إنه المشكلة كانت في إعدادات إكسل وتم إعادة تعيين الإعدادات وحُلت المشكلة2 points
-
وعليكم السلام ورحمة الله وبركاته غن طريق كود صغييييير Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) Dim ws As Worksheet Set ws = Me ws.Cells.Interior.ColorIndex = xlNone Target.EntireRow.Interior.Color = RGB(220, 230, 241) Target.Interior.Color = RGB(255, 255, 150) End Sub ملف كمثال تلوين صف وحلية.xlsb اذا اردت تغيير اللون اليك قائمة بالالوان أحمر فاتح: RGB(255, 200, 200) أخضر فاتح: RGB(200, 255, 200) أزرق فاتح: RGB(200, 220, 255) أصفر فاتح: RGB(255, 255, 150) برتقالي فاتح: RGB(255, 220, 180) رمادي فاتح: RGB(220, 220, 220) بنفسجي فاتح: RGB(230, 200, 255) سماوي: RGB(180, 240, 255) تحياتي2 points
-
حاولت بقدر المستطاع الموضوع صعب بدون اكواد جداول مصنع تقنى.accdb2 points
-
انتهت المدة المحددة للتحدي الأول ، ونشكر جميع من قام على هذا الدعم والمشاركة .. وسيتم إختيار الإجابة التي نالت الإعجاب بالتقييم قريباً. وسيتم الإعلان أيضاً عن التحدي الثاني قريباً جداً بإذن الله تعالى ، وذلك بالتصويت لنوع وموضوع التحدي الذي تفضلونه من بين مجموعة مواضيع. شكراً لكم 💐1 point
-
تفضل استاذ @فؤاد الدلوي مرفقك حسب مافهمت . اولا الجزء المهم جدا إعداد (CaptureOnTouch V5 Pro) افتح البرنامج الآن 👇 1️⃣ ادخل إلى: 🔹 Job Mode 2️⃣ أنشئ Job جديد اضغط: New 3️⃣ اختر نوع الإخراج اختر: Save to Folder اضغط Next 4️⃣ اختر المجلد اضغط Browse واختر: D:\Archive\Temp اضغط OK 5️⃣ أهم خطوة (اسم الملف) ستجد خيار: File Name Settings اختر: Custom واكتب اسم ثابت: scan ⚠️ بدون أرقام ⚠️ بدون تاريخ ⚠️ بدون Auto numbering ثم اختر: File Format = PDF مهم جداً داخل برنامج CaptureOnTouch V5 Pro تأكد أن: الحفظ في: · D:\Archive\Temp اسم الملف دائماً: · scan.pdf لا يوجد تاريخ أو ترقيم مضاف للاسم ثانياً اليك المرفق ' مسار برنامج CaptureOnTouch (تأكد منه عندك) AppPath = """C:\Program Files\Canon Electronics\CaptureOnTouch V5 Pro\TouchDR.exe""" او عدل كما لديك . الناتج D:\Archive\2026\02\1258.pdf ووافني بالرد . Fouad_ElDolwi.rar1 point
-
فعلاً هذا هو المطلوب بارك الله فيك مع شكري وتقديري للأساتذة الكرام الذين كانوا لهم دورٌ بارزٌ في المساعدة والتوجيه1 point
-
وهذه فكرة تجمع بين عرض التكرارات التي يتنافس فيها الطلاب حسب رغبتك .. Data_Base_Rep.zip1 point
-
عمل رائع أخي @Foksh والحقيقة أنها المرة الأولى التي ينجح مع إرسال الإيميل بهذه السهولة لدي ملاحظتين الأولى غير مهمة وهي أن Yahoo يتعرف على الأيميل الصادر من التطبيق بأنه بريد إحتيالي ولا أدري إذا كان بالإمكان حل المشكلة اما الملاحظة الثانية أنه يجب تعديل السطر التالي db.CreateQueryDef "Qur_Foksh", "SELECT * FROM Tbl_Emails" إلى هذا السطر db.CreateQueryDef "Qur_Foksh", "SELECT NameOfComp,EmailOfComp FROM Tbl_Emails" لأن نتيجة السطر الأول ينتج عنه أن أول عمود في الاستعلام سيكون حقل الترقيم التلقائي والثاني سيكون الإسم مع أن طريقة العمل تتم بأخذ قيمة العمود الثاني في مربع القائمة كمصدر للأيميلات مما يسبب خطأ وعدم نجاح إرسال أي رسالة تحياتي1 point
-
1 point
-
الف مليون شكرا لا تفي بحقك ابداع وحوكمة وجمال منقطع النظير نسأل الله الكريم ان يجعل عملك هذا خالصا لوجهه ، وأن يجزاك عنا وعن اخوانك خير الجزاء1 point
-
وعليكم السلام ورحمة الله وبركاته ارسل الملف لفحصه والتعديل عليه1 point
-
بالنسبة للدالة فمكانها الفورم نفسه .. لأنك تطبق على حقول موجودة فعلا في الفورم انظر التعديل .. الامر يسير يمكنك صنع اي دالة تحمل اجراءات محددة تتكرر في اكثر من موقع على النموذج Private Sub Add_New_Record() Me.comresearch_01 = Null dateoftrans.Locked = True Me.stat.Locked = True Me.F_DATAILS.Locked = True DoCmd.GoToRecord , , acNewRec End Sub 'نناديها هكذا : 'Call Add_New_Record علما لا اعلم ما فائدة تمكين الحقول في الدالة لأنها ممكنة فعلا .. الا اذا كانت في الأصل عندك غير ممكنة في المثال المرفق طبقت الدالة خلف زر جديد مشروع خليفة2.rar1 point
-
نعم من خلال المديول انا لم ارفع المرفقات كاملة هنا في المرفق تجد الاصدار 2000 treeviewaccess.zip1 point
-
وعليكم السلام ورحمة الله أنا معلم وتحولت إلى إداري على الحاسوب فكنت أعاني من هذا الأمر مهمتي هي العمل على الحاسوب وكل ما يلزم من أعمال المدرسة ومن ضمنها ادخال الدرجات للطلاب المعلم يسلمني الكشوفات وأنا بدوري أدخل الدرجات إلى النظام في البداية كنت متحمسا لهذا الشيء بسبب أن النظام كله هو من تصميمي ولكن ! مع مرور الوقت وجدت أن عملية الأدخال للدرجات فيها شيء من الصعوبة بسبب الأخطاء التي قد أرتكبها أنا من غير قصد مني ثم تظهر في نتيجة الطالب ويتم مراجعتي بعد ذلك لتعديلها فتداركت الموضوع حتى لا تتكرر الأخطاء في المرات القادمة وقمت بتطوير عملية الأدخال بعد المرحلةالاولى التقليدية كما يأتي : المرحلة الأولى : الطريقة التقليدية : كيبورد والضغط على الأزرار * في هذه المرحلة أي خطأ أنا أتحمله وبعدها فكرت التطوير وتقليل الاعتماد على الكيبورد وتقليل الضغط على الأزرار عندما أدخل الرقم 13 مثلا أحتاج للضغط على 3 أزرار : 1 و 3 و ENTER حتى يتنقل المؤشر للخلية التالية المرحلة الثانية : قمت بتصميم برنامج على الاكسل (لا أستخدم الكيبورد إطلاقا) يقوم بإظهار لوحة الدرجات على الشاشة وعن طريق الفارة (الماوس) أختار و أضغط على الدرجة المطلوبة فقط فيقوم البرنامج بادخال الدرجة للخلية وينزل المؤشر للأسفل تمهيدا لإدخال الدرجة الأخرى إذا 3 ضغطات في المرحلة الأولى = ضغطة واحدة من الماوس في المرحلة الثانية * وهذا أنجاز لكن في هذه المرحلة أيضا أنا أتحمل أي خطأ في الأدخال استمرت المرحلة الثانية عدة سنوات وطورت الفكرة إلى المرحلة الثالثة والنهائية وهي التي أعمل بها الآن المرحلة الثالثة : عملت كشوفات اكسل لكل صف ونزلتها في قروب واتساب الخاص بالمدرسة الذي يجمع كل المعلمين فكل معلم يحمل الكشف الخاص بصفه ومادته فقط ثم يعبي الدرجات ويرسل الكشوفات لي بالواتساب وأنا أقوم (عن طريق البرمجة وليس نسخ ولصق ) بإدراجها في النظام * وهنا أنهيت مسؤولتي وأصبح كل معلم هو المسؤول عن اخطائه إذا كان هناك طريقة أسهل من هذه فأرجو من الأخوة القراء أتحافنا بها فالجميع يريد الوصول لهدف واحد وهو تبسيط العمل تقبل تحياتي .1 point
-
تفضل كان عليك بدء المشاركة بالتحية ... السلام عليكم , يمكنك استخدام هذه المعادلة ,كما تم عمل التنسيق الشرطى اللازم كما تريد اذا كان هناك اختلاف - كما تـــم ضبط الملف والغاء وحذف الخلايا المدمجة بالجدول (على الرغم ان هذا أتعبنى كثيراً الى ان تم على خير) فهذا يصعب من أعمال اى شيء على الإكسيل ..ورجاءاً لا تقوم بعمل اى خلايا مدمجة بعد ذلك فى ملفاتك , وذلك حتى لا تجعل الجميع يبتعد عن مساعدتك فى طلبك لأنه سيأخذ ويستغرق وقت طويل منهم =IF(OR(SUM(K16:N16)<>$O16,SUM(F16:J16)<>$O16,SUM(B16:E16)<>$O16),"هناك اختلاف","") 1OutPatientStatistic.xlsx1 point
-
يمكنك استخدام هذا الكود فى حدث Thisworkbook Private Sub Workbook_Open() Worksheets("æÑÞÉ1").Activate Range("c2").Select End Sub ورقة عمل1 Microsoft Excel جديد.xlsm1 point