أحمد العيسى
03 عضو مميز-
Posts
411 -
تاريخ الانضمام
-
تاريخ اخر زياره
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو أحمد العيسى
-
تم التعديل على هذا الملف من مشاركة الأخ العزيز / عبدالله بشير عبدالله Private Sub Form_Open(Cancel As Integer) Dim tb As DAO.Recordset ' التأكد من استخدام DAO Recordset Dim Q As Integer Q = DCount("*", "tbl_Student1") If Q > 0 Then Set tb = CurrentDb.OpenRecordset("tbl_student1", dbOpenDynaset) tb.MoveFirst Else MsgBox ("لا يوجد سجلات لعرضها "), vbOKOnly + vbMsgBoxRight, "تنبيه" Exit Sub End If Do While tb.EOF = False tb.Edit ' وضع السجل في وضع التحرير tb.Fields("OnlyYou") = False ' تعديل قيمة الحقل tb.Update ' تحديث السجل في قاعدة البيانات tb.MoveNext ' الانتقال للسجل التالي Loop tb.Close ' إغلاق الكائن بعد الاستخدام Set tb = Nothing ' إلغاء الإشارة إلى الكائن End Sub وإلى الآن التجربة مع المثال تبشر بعمل شبه كامل لكن لماذا عملية البحث بطيئة جداً بهذا الشكل ؟؟؟ db2.mdb
-
ما زال المثال يحتاج إلى الكثير من التعديلات ، فمثلاً إذا حذفت كامل السجلات يقطع البرنامج مساره برسالة خطأ وقد استطعت التغلب على هذه الرسالة من خلال التعديل على الكود السابق Private Sub Form_Open(Cancel As Integer) Dim tb As DAO.Recordset Dim Q As Integer Q = DCount("*", "tbl_Student1") If Q > 0 Then Set tb = CurrentDb.OpenRecordset("tbl_student1", dbOpenDynaset) tb.MoveFirst Else MsgBox ("لا يوجد سجلات لعرضها "), vbOKOnly + vbMsgBoxRight, "تنبيه" Exit Sub End If Do While Not tb.EOF tb.Edit tb.Fields("OnlyYou") = False tb.Update tb.MoveNext Loop tb.Close Set tb = Nothing End Sub كذلك لى بعض الملاحظات على عملية الفلترة من خلال تلك الصور أدناه
-
بارك الله فيك أخى موسى ، وأطال الله عمرك ونفع بك تعديلك فى المثال ممتاز للبحث ، والحذف للسجلات المختارة بعد البحث جربته على أكسس 2010 وجدته يعمل بكفاءة لكن عند تجربته على أكسس 2003 وهو الإفتراضى عندى كانت هناك بعض أخطاء التوافق فى المكتبات لكن الغريب عندما أردت إضافة تلك المكتبات وجدت الأمر References باهت ولا يمكن اختياره أما بخصوص كلمة Name لم أجد لها تأثير فى أكسس 2003 .. لكن جاري تغييرها فى أصل التطبيق تحسباً لعدم تسامح البرنامج فى مواضع أخرى لكلماته المحجوزة
-
السلام عليكم هذا نموذج يحتوي على عدد كبير من الأسماء به حقل اختيار (نعم/لا) المطلوب تكرماً إضافة إمكانية البحث فى حقل الأسم بالحروف الأولى بحيث يجعل الاختيار سهلاً من خلال تقليص المعروض على النموذج دون اللجوء لتحريك الأسماء أعلى وأسفل من خلال مسطرة الإنزلاق وإذا تم حذف كل السجلات لا تخرج رسالة خطأ عقب هذا الحذف ( Debug ) مع جزيل الشكر مقدمأ db1.mdb
-
وجدت " كود " كنت قد استخدمته فى برنامج أكسل ويعتبر متوافق 100% مع الطريقة التقليدية فى حساب الفرق بين تاريخين بوضعهما يدوياً اسفل بعضهما ويتم الطرح مباشرة أو بالإستلاف Function d_ay(Calculate As Date, birth As Date) As Integer If Day(Calculate) >= Day(birth) Then d_ay = Day(Calculate) - Day(birth) Else d_ay = Day(Calculate) + 30 - Day(birth) End If End Function Function m_on(Calculate As Date, birth As Date) As Integer If Day(Calculate) >= Day(birth) Then If Month(Calculate) >= Month(birth) Then m_on = Month(Calculate) - Month(birth) Else m_on = Month(Calculate) + 12 - Month(birth) End If Else If Month(Calculate) > Month(birth) Then m_on = Month(Calculate) - 1 - Month(birth) Else m_on = Month(Calculate) + 11 - Month(birth) End If End If End Function Function y_er(Calculate As Date, birth As Date) As Integer If Day(Calculate) >= Day(birth) Then If Month(Calculate) >= Month(birth) Then y_er = Year(Calculate) - Year(birth) Else y_er = Year(Calculate) - 1 - Year(birth) End If Else If Month(Calculate) > Month(birth) Then y_er = Year(Calculate) - Year(birth) Else y_er = Year(Calculate) - 1 - Year(birth) End If End If End Function
-
مطلوب كود يخفى واجهة أكسس لأي إصدار من 2003 إلى 2024
أحمد العيسى replied to أحمد العيسى's topic in قسم الأكسيس Access
شكراً على النصيحة لكن أأكد لك أن كل برامجى المصممة على أكسس 2000 وليست 2003 وحدها تعمل على كل الإصدارات التالية إنما كلامك _ أكيد _ أن كل البرامج المصممة على أكسس 2007 وما بعدها من المؤكد أنها لا تعمل على 2003 -
السلام عليكم الكود التالى هو الذى أستخدمه لإيجاد الفرق بين تاريخ الميلاد وتاريخ اليوم ليخرج عمر الموظف باليوم والشهر والسنة كذلك يتم استخدامه لإيجاد الفرق بين تاريخ الإحالة للمعاش وتاريخ اليوم ليخرج الزمن المتبقى على الخروج باليوم والشهر والسنة لأننى أحياناً أجد فرق يوم بين استخدام هذا الكود وبين الحساب اليدوى كما تعودنا قديماً Function d_ay(Calculate As Date, birth As Date) As Integer Dim m_on As Integer m_on = DateDiff("m", birth, Calculate) d_ay = DateDiff("d", DateAdd("m", m_on, birth), Calculate) If d_ay < 0 Then m_on = m_on - 1 d_ay = DateDiff("d", DateAdd("m", m_on, birth), Calculate) End If End Function Function m_on(Calculate As Date, birth As Date) As Integer Dim d_ay As Integer m_on = DateDiff("m", birth, Calculate) d_ay = DateDiff("d", DateAdd("m", m_on, birth), Calculate) If d_ay < 0 Then m_on = m_on - 1 End If m_on = m_on Mod 12 End Function Function y_er(Calculate As Date, birth As Date) As Integer Dim m_on As Integer, d_ay As Integer m_on = DateDiff("m", birth, Calculate) d_ay = DateDiff("d", DateAdd("m", m_on, birth), Calculate) If d_ay < 0 Then m_on = m_on - 1 End If y_er = m_on \ 12 End Function مرفق ملف مختصر للملف الأصلى به الكود المراد التعقيب عليه db1.mdb
-
مطلوب كود يخفى واجهة أكسس لأي إصدار من 2003 إلى 2024
أحمد العيسى replied to أحمد العيسى's topic in قسم الأكسيس Access
أعلم ذلك لكن ما يخص تطبيق تم عمله ب أكسس 2003 (mdb ) لا يؤثر عند تشغيله على أكسس 2016 مثلاً ( accdb ) هل معنى ذلك أنه يجب عمل تطبيقان بنفس الوظيفة لكل منهما ؟ -
مطلوب كود يخفى واجهة أكسس لأي إصدار من 2003 إلى 2024
أحمد العيسى replied to أحمد العيسى's topic in قسم الأكسيس Access
لم يتفضل أحد بالرد ممكن أو غير ممكن !!! -
السلام عليكم أفضل دائماً العمل على أكسس 2003 ، لسهولة العمل فيه وربما لتعودى عليه ولا يوجد أى مشكلة فى عمل هذا التطبيق على كافة إصدارات الأكسس التالية له وفى قائمة شاشة بدء التشغيل لـ 2003 يمكن التحكم فى إخفاء أشرطة الأدوات وفى بداية تشغيل التطبيق فعلاً يتم إخفاء واجهة وأشرطة وقوائم أكسس 2003 لكن عند تشغيل نفس التطبيق على إصدار أكسس 2024 يعمل بكفاءة لكن مع ظهور القوائم الغير مطلوبة هل يوجد إجراء أو كود يمكن استخدامه يصلح لجميع الإصدارات من 2003 إلى 2024 لإخفاء واجهة الأكسس ؟
-
ما الخطأ فى استعلام التحديث فى الصورة المرفقة
أحمد العيسى replied to أحمد العيسى's topic in قسم الأكسيس Access
تمام كلا السطرين صحيحين وجدت الخطأ بعد فحص لكل عناصر الجدول المشكلة كانت فى قاعدة التحقق من الصحة بالجدول ، إذ أنها كانت "مستجد" Or "محول" Or "باق" Or "دمج" والمفترض أن يكون بها "منقول " ، أو الإستغناء عن كتابة شروط القاعدة بالجدول -
السلام عليكم فى الجدول حقل يحتوى على كلمة "مستجد" أو "باق" أو ... وأريد تغيير كل هذه الكلمات بهذا الحقل مرة واحدة إلى كلمة "منفول" هذا التكوين لا يلبى الطلب ، ما الخطأ فى الصورة التالية وحبذا لو وجدت عبار ة SQL تقوم بهذه الوظيفة مثل: DoCmd.RunSQL "UPDATE tbl_student1 SET tbl_student1.[Case] = ""منقول"";"
-
فكرة توزيع شرائح الكهرباء لمعرفة قيمة الفاتورة
أحمد العيسى replied to figo82eg's topic in قسم الأكسيس Access
جميل جداً هذا الـ "بريمج " حسب وصفك لكن أريد تصحيح كلمة للأخ figo82eg وحدات الكهرباء تقاس بالكيلو وات وليس بالأمتار !!!! -
السلام عليكم بالمرفقات تطبيق قديم بقوم بتفعيل ميزة الـ Shift أو تعطيلها ولكن فى ملفات أكسس 2003 المطلوب التعديل _إن أمكن_ ليشمل أيضاً ملفات "accdb" بجانب "mdb" هذه صورة البداية لعمله: وعند الضغط على زر "البحث فى قاعدة البيانات" يظهر هذا التحذير لكن لا يعطل باقى الخطوات فى هذه الشاشة يظهر اختيارك للملف الهدف ، ولكن دون التعرف عليه إن كان الشيفت مغلق أم لا بعد تحديد الاختيار والنقر على زر تفعيل الاختيار shiftCancel.mdb
-
تمام إذن لا يوجد فى خصائص الـ List Box وكذلك الـ Queries ما يجعل محازاة معاينة الناتج العربى يميناً وذلك فى الواجهة الإنجليزية للأوفيس مهما كان إصداره ، وهذا غير مطلوب للطباعة .. فقط للمعاينة لكن الحمد لله أن هذا لا ينطبق على Text Box فى الـ Reports فمنه تكون الطباعة الاحترافية . إذن النصيحة مؤقتاً لمن يطلب رؤية عربية 100% أن يستخدم الواجهة العربية فى تطبيقات الأكسس
-
شكراً أخى على ردك كما ذكرت _ أنا _ هذا الوصف لا يحدث إلا لو كان برنامج الأكسس بالواجهة الإنجليزية (بأى إصدار ) تغلبت على هذه المشكلة فى الــ Text Box بـ ( المحازاة يمين ) لكن فى الـ List Box لا توجد فى خصائصة (المحازاة يمين) علماً بأن عنصر الـ List Box مصدر محتوياته هو : SELECT DISTINCTROW Mid([Name],7) AS Expr1, MSysObjects.Type FROM MSysObjects WHERE (((MSysObjects.Type)=-32764 Or (MSysObjects.Type)=-32768) AND ((MSysObjects.Name) Like "تقرير1*")) ORDER BY MSysObjects.Name; أكتشفت أيضاً أن معاينة أى Queries به نفس المشكلة أى أن محازاة أى حقل به يكون من اليسار إلى اليمين "إجباريا"