بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
-
Posts
8730 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
37
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو محمد طاهر عرفه
-
من هنا http://soft.vip600.com/modules.php?name=Do...علم_الباوربوينت
-
هذا الكتاب وجدته فى موقع اقلاع سوفت لتعليم اكسس 97 بالعربي http://soft.vip600.com/modules.php?name=Do...7_-_الجزء_الأول http://soft.vip600.com/modules.php?name=Do..._-_الجزء_الثاني
-
شباب لماذا لا تظهر الخطوط في الاكسل
محمد طاهر عرفه replied to راعي الاولة's topic in منتدى الاكسيل Excel
يمكنك تسجيل ماكرو مباشرة من قائمة tools Macro Record new macro و فى هذه الحالة سيسجل لك خصائص كثيرة للخط و ما تحتاجه بعد حذف الخواص الأخري هو فقط الجزء التالي : Sub tohama() With Selection.Font .Name = "Tahoma" End With End Sub أو اختصارا حيث أنها خاصية واحدة Sub tohama() Selection.Font.name= "Tahoma" End Sub فافتح محرر البيزيك alt+f11 و ادرج موديول جديد و ضع فيه الكود السابق أو سجل أي ماكرو كما سبق ، ثم حرره و استبدل الكود بالكود السابق سيصبح لديك ماكرو يغير الخط الي خط تهامة للمنطقة المختارة و يمكنك نسخه و تغيير اسم الماكرو و نوع الخط داخل الكود الي الخطوط الأخري المطلوبة -
تغيير خيارات بدأ التشغيل برمجيا
محمد طاهر عرفه replied to محمد طاهر عرفه's topic in قسم الأكسيس Access
تابع موضوع أبو حمود ================ اعادة الشرح بتفصيل أكثر : ================ لتغيير الإعدادات في مربع حوار بدء التشغيل StartUp مربع حوار بدء التشغيل يتحكم في الكثير من الخصائص الخاصة بقاعدة البيانات وقد وضعت هذه الخيارات منفصلة عن خيارات قاعدة البيانات لأنها تختص بقاعدة البيانات المفتوحة ، يبدأ عمل مربع حوار بدء التشغيل قبل بدء ماكرو Autoexec فور تشغيل القاعدة . للوصول إلى مربع حوار بدء التشغيل انقر على قائمة أدوات ثم بدء التشغيل . بعض الخيارات الموجودة في مربع حوار بدء التشغيل تعمل مباشرة عند تغييرها والبعض الآخر تعمل عند فتح قاعدة البيانات مرة أخرى وبإمكانك تجاوز خيارات بدء التشغيل بالضغط على Shift مالم يعطل هذا الخيار . ================================== أولا : عنوان وأيقونة التطبيق (ملاحظة 1و2 يستدعيان نفس الدالة) 1- عنوان التطبيق Application Title يظهر هذا العنوان في شريط الأكسس وفي إطار قاعدة البيانات إذا لم تكن مبكرة بالحد الأقصى يزيل هذا العنوان العنوان الافتراضي لأكسس ، لتغيير العنوان برمجيا ضع في حدث عند النقر على زر الأمر مثلا الكود التالي : Dim intX As Integer Const DB_Text As Long = 10 intX = AddAppProperty("AppTitle", DB_Text, "عنوان جديد") intX = AddAppProperty("AppIcon", DB_Text, "C:WindowsCars.bmp") Application.RefreshTitleBar السطر الثاني في الكود السابق : إعلان عن ثابت من النوع Long ويمكنك حذف العبارة السابقة واستبدالها في السطر الثالث بـ dbtext أو db_text أو كتابة رقم 10 في نفس الموضع . السطر الثالث : تم وضع المتغير intX لتخزين القيمة العائدة من الدالة المعرفة من قبل المستخدم AddAppProperty تعيد الدالة إذا تم تغيير العنوان بنجاح قيمة -1 وإذا لم يتم تغيير العنوان 0 . ثم الوسيطة الأولى اسم الخاصية في الأكسس والثانية نوعها والثالثة العنوان الجديد . إذا لم ترغب في حفظ القيمه العائدة من الدالة فاحذف المتغير ويساوي والأقواس لتكون العبارة كالتالي : AddAppProperty "AppTitle", DB_Text, "عنوان جديد" السطر Application.RefreshTitleBar ليظهر العنوان الجديد مباشرة وإذا لم تضعها يتم حفظ العنوان الجديد في مربع الحوار بدء التشغيل دون ظهوره في الشريط العلوي لأكسس حتى تقوم بتشغيل قاعدة البيانات مرة أخرى . إذا كنت تريد تمكين المستخدم من تغيير العنوان بدون اللجوء إلى مربع حوار بدء التشغيل فاستخدم دالة InputBox كالتالي : intX = AddAppProperty("AppTitle", DB_Text, InputBox("اكتب العنوان الجديد:")) ملاحظة هامة : إذا كان عنوان القاعدة فارغ واستخدمت السطر السابق لمطالبة المستخدم بالعنوان الجديد ولكن المستخدم نقر زر Cancel ولم يضع عنوان فستظهر رسالة الخطأ التالية (الخصائص المعرفة من قبل المستخدم لاتدعم القيم الخالية) ولتصحيح الخطأ اكتب عبارة من عبارات معالجة الخطأ أو أعد مطالبة المستخدم أو أنظر ما يأتي . وبإمكانك اسناد قيم موجودة في جدول أو استعلام أو وضع حدث Timer لتغيير العنوان بشكل متتابع وغير ذلك . لمسح العنوان الذي كتبته اكتب : intX = AddAppProperty("AppTitle", DB_Text, " ") انتبه ضع مسافة بين الفاصلتين المزدوجتين . 2- السطر الرابع في الكود السابق : intX = AddAppProperty("AppIcon", DB_Text, "المسار واسم الأيقونة أو ملف الصورة") هذا السطر خاص بوضع أيقونة للبرنامج أو تغييرها أو حذفها . ملاحظة : لحذف الأيقونة : intX = AddAppProperty("AppIcon", DB_Text, "") تظهر الأيقونة في الجزء العلوي الأيسر من الشاشة . أما إذا أردت تغيير الأيقونة الخاصة بالقاعدة التي تظهر على ملفات الأكسس (المفتاح) فاجعل للقاعدة إختصار مثلاً على سطع المكتب ثم انقر عليه بزر الفأرة الأيمن واختر خصائص ثم تغيير الرمز ثم اختر الأيقونة المناسبة وإذا كانت الأيقونة موجودة في ملف آخر فاختر ملف الأيقونة من نوع ICO أو Exe أو dll أو غيرها من الملفات حسب نوع الملف الموجودة فيه ، ولتغير الأيقونة في قائمة أبدأ اعمل نفس الطريقة السابقة وأما تغيير أيقونة الملف نفسه فلا أعرف طريقتها وهناك برامج لتغيير الأيقونات . طبعاً يمكنك تغير العنوان فقط أو تغيير الأيقونة فقط أو كلاهما . -------------------------------------------- الحدث السابق يستدعي الدالة التالية : -------------------------------------------- Function AddAppProperty(strName As String, varType As Variant, varValue As Variant) As Integer On Error GoTo AddProp_Err Dim dbs As Object, prp As Variant Const conPropNotFoundError = 3270 Set dbs = CurrentDb dbs.Properties(strName) = varValue AddAppProperty = True AddProp_Bye: Exit Function AddProp_Err: If err = conPropNotFoundError Then Set prp = dbs.CreateProperty(strName, varType, varValue) dbs.Properties.Append prp Resume Else AddAppProperty = False Resume AddProp_Bye End If End Function وعملها يتلخص في البحث عن العنوان أو الإيقونة السابقة في مربع حوار بدء التشغيل ، فإذا لم يجدهما (أي قيمهما في مربعي النص الخاص بكل منهما) أو أحدهما يعطي خطأ فيبدأ تنفيذ الأسطر بعد الخطأ . ولقراءة خاصية العنوان : Dim dbs As Database Set dbs = CurrentDb MsgBox dbs.Properties![AppTitle] dbs.Close لكن لاحظ أن الطريقة السابقة تكون بعد إنشاء العنوان أو الأيقونة أو كتابتهما من قبل المستخدم وإلا ستظهر رسالة الخاصية غير موجودة . ولقراءة خاصية الأيقونة : Dim dbs As Database Set dbs = CurrentDb MsgBox dbs.Properties![AppIcon] dbs.Close ====================================== (ثانياً) لتغيير بقية خيارات مربع حوار بدء التشغيل : أعلن عن الثابتين التاليين : Const DB_Text As Long = 10 Const DB_Boolean As Long = 1 1- تشغيل نموذج عند بدء تشغيل القاعدة : ChangeProperty "StartupForm", db_Text, "اسم نموذج” لاختيار النموذج الذي يفتح عند بدء تشغيل البرنامج واسمه في مربع حوار بدء التشغيل (عرض النموذج/الصفحة). لعدم عرض نموذج عند بدء التشغيل استبدل اسم النموذج بالعبارة التالية "(None)" . غالباً ما يستخدم لتشغيل لوحة التبديل Switchboard أو وضع صورة على نموذج وجعلها مثل النوافذ التي تظهر عند بدء تشغيل الأكسس أو الوورد أو غيرهما من البرامج وتكون ذات تنسيق جيد وباسم البرنامج وبدون حدود للنموذج ، مع تشغيل حدث المؤقت لإغلاقها بعد مرور ثلاث ثواني مثلا . فائدة : بإمكانك إظهار صورة عند بدء تشغيل قاعدة بوضع الصورة في نفس مجلد القاعدة وتغيير اسمها إلى نفس اسم القاعدة ولكن يعيب هذه الطريقة سرعة ظهور وإختفاء الصورة ولو أمكن التحكم بسرعة ظهورها لكانت أفضل من طريقة وضع صورة على نموذج . 2- إظهار أو إخفاء إطار قاعدة البيانات : ChangeProperty "StartupShowDBWindow", DB_Boolean, قيمة إطار قاعدة البيانات هو الإطار الذي يحوي كائنات التطبيق من الجداول والاستعلامات والنماذج والتقارير وصفحات البيانات والماكروات والوحدات النمطية . لعرض إطار قاعدة البيانات اجعل مكان قيمه True ولعدم ظهوره اجعل False . قد تحتاج إلى إخفاء الإطار لغرض عدم تمكين المستخدم من الاطلاع على كائنات القاعدة أو التعديل فيها وهو خيار أفضل لكن مع مراعاة تمكين المستخدم من وظائف القاعدة لا أن تدعه أمام إطار فارغ . لإظهار الإطار انقر F11 ، يبدأ التطبيق بعد التشغيل التالي لقاعدة . 3- عرض أو إخفاء شريط المعلومات ChangeProperty "StartupShowStatusBar", DB_Boolean, قيمة لإظهار أو إخفاء شريط المعلومات وهو الشريط الذي يظهر في أسفل الأكسس ضع بدلا من القيمة True لعرض الشريط و False لإخفاءه . 4- منع أو السماح بأشرطة الأكسس الافتراضية في مربع حوار بدء التشغيل اسمها السماح بأشرطة الأدوات المضمنة ChangeProperty "AllowBuiltinToolbars", DB_Boolean, قيمة إظهار أشرطة الأدوات الافتراضية لأكسس ضع بدلاً من القيمة True ولإخفائها False . عند منع أشرطة الأدوات المضمنة تختفي كل الأشرطة الخاصة بالأكسس وتبقى الأشرطة الخاصة بالتطبيق (التي من إعداد المبرمج) . 5- السماح بالقوائم الكاملة ChangeProperty "AllowFullMenus", DB_Boolean, قيمة تختفي القوائم الافتراضية الخاصة بالأكسس وتظهر قوائم محدودة تختص بالتحرير والطباعة والتعامل مع السجلات والإطارات والتعليمات وهي تفي بحاجة المستخدم من حيث إدخال وعرض البيانات خاصة إذا لم ترغب في إنشاء قوائم خاصة بالتطبيق . لإظهار القوائم الكاملة ضع بدلاً من قيمة True ولإخفائها False . وإخفاء القوائم الكاملة مع إخفاء الأشرطة الإفتراضية لأكسس مفضل جداً حتى لايستطيع المستخدم تغييير تصميم قاعدة البيانات . 6- منع المستخدم من مقاطعة الإجراءات بضغط Ctrl+Braek ChangeProperty "AllowBreakIntoCode", DB_Boolean, قيمة تمنع المستخدم من إيقاف الإجراء الطويل بالنقر على زري Ctrl+Break . ضع بدلاً من قيمة True لمنع مقاطعة الإجراءات وFalse للسماح له بذلك ، وفي التعليمات الخاصة بالأكسس هذه العبارة : You can use the AllowBreakIntoCode property to specify whether or not the user can view Visual Basic code after a run-time error occurs in a module. ولكن بعد التجربة لم ألحظ أنها تمنع المستخدم من الاطلاع على الوحدة النمطية في حالة حدوث الخطأ فما أدري أين الخطأ ؟ . 7- استخدام مفاتيح وصول خاصة ChangeProperty "AllowSpecialKeys", DB_Boolean, قيمة لمنع أو السماح للمستخدم من استخدام للمفاتيح التالية : (ALT+F1 (F11), CTRL+F11, CTRL+BREAK, and CTRL+G) فالأولى للوصول إلى إطار قاعدة البيانات وجلبه إلى الأمام والثاني للتبديل بين شريط القائمة المخصص وشريط القائمة المضمن والثالث لإيقاف التعليمات البرمجية والرابع لإظهار إطار التصحيح Dubeg . Ctrl+F11 : إذا تم اختيار شريط قوائم مخصص في مربع حوار بدء التشغيل يظهر مباشرة عند فتح القاعدة ويخفي قوائم الأكسس الافتراضية وعند النقر على مفتاح Ctrl+F11 يختفي شريط القوائم المخصص ويظهر شريط القوائم الخاص بالأكسس ، قد يكون هنام صعوبة في فهمها ولكن انقر على أدوات ثم تخصيص ثم جديد ثم اكتب اسم لشريط الأدوات الجديد ثم سيظهر في قائمة أشرطة الأدوات اختاره ثم انقر على زر خصائص ثم حوله الى شريط قوائم ثم إغلاق ثم ضع فيه القوائم التي ترغب في ظهور وسواء تختار من القوائم المضمنه أو القوائم الجديدة ثم إغلاق ثم افتح مربع حوار بدء التشغيل وانتقل الى شريط القوائم تجد اسم القائمة التي أنشأتها اخترها ثم موافق ثم أغلق القاعدة وأعد تشغيلها ستجد شريط القوائم قد ظهر واختفى شريط القوائم الخاص بالأكسس اضغط Ctrl+F11 سيختفي الشريط ويظهر شريط القوائم الافتراضي الخاص بأكسس . إذا لم ترغب في ظهور شريط القوائم المخصص فاضغط Shift باستمرار أثناء فتحه القاعدة لتعطيل خيارات مربع حوار بدء التشغيل على أنه بإمكانك إظهار شريط القوائم بالنقر بزر الفأرة الأيمن على شريط الأدوات واختيار تخصيص ثم اختيار شريط القوائم ثم إغلاق إذا لم يعطل كما سيأتي . 8- منع أو السماح بتأثير Shift عند بدء تشغيل القاعدة هذا الخيار غير ظاهر في مربع حوار بدء التشغيل وطريقته : ChangeProperty "AllowBypassKey", DB_Boolean, قيمة منع المستخدم من إيقاف الماكرو AutoExec أو الخيارات المحددة في بدء التشغيل عن طريق ضغطه لـ Shift عند بدء فتح قاعدة البيانات . استبدل قيمه بـ True لتمكين تأثير Shift وFalse لإيقاف تأثيرها . 9- السماح بتغييرات أشرطة الأدوات القوائم ChangeProperty "AllowToolbarChanges", DB_Boolean, قيمة يعطل أمر تخصيص في قائمة أدوات وكذلك لاتظهر القائمة اليمنى عند النقر بزر الفأرة الأيمن على قائمة أو شريط أدوات .استبدل قيمه بـ True للسماح بالتغيير وFalse للمنع من التغيير . 10- السماح بالقوائم المختصرة الافتراضية ChangeProperty "AllowShortcutMenus", DB_Boolean, قيمة وهي القوائم التي تظهر عند النقر على أحد كائنات القاعدة بزر الفأرة الأيسر لتنفيذ أوامر على هذا الكائن فمثلا النقر بزر الفأرة الأيمن على النموذج تظهر قائمة تحوي تصميم النموذج – طريقة عرض صفحة البيانات – خصائص وقد تتغير هذه بنود القوائم حسب خيارات أخرى . استبدل قيمه بـ True للسماح بظهور القوائم المختصرة الافتراضية وFalse للمنع . 11- شريط القوائم المختصرة ChangeProperty "StartupShortcutMenuBar", db_Text, "اسم شريط منبثق” لإظهار شريط قوائم مختصر للتطبيق ككل (ويسمى في مربع حوار تخصيص منبثق) ، تظهر هذه القائمة عند النقر بزر الفأرة الأيسر على الجداول أو الاستعلامات أو النماذج أو التقارير مالم تخصص شريط قوائم منبثق لأحدها ، وإذا رغب أحد في تعلم كيفية إنشاء قائمة منبثقة كتبتها له . ولإزالة الشريط المختصر : ChangeProperty "StartupShortcutMenuBar", DB_Text, "(default)" 12- شريط القوائم ChangeProperty "StartupMenuBar", db_Text, "اسم شريط قوائم” تخصيص شريط قوائم للقاعدة ككل يظهر عند بدء تشغيل القاعدة ، ولإزالته : ChangeProperty "StartupMenuBar", db_Text, "(default)" 13- استخدام التقويم الهجري ChangeProperty "HijriCalendar", DB_Boolean, قيمة لاستخدام التقويم الهجري أو غيره ، غير قيمه إلى True لاستخدام التقويم الهجري وإلى False لجعل التقويم ميلادي . ---------------------------------------------------------- جميع أسطر الكود السابقة تستدعي الدالة التالية : --------------------------------------------------------- Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer On Error GoTo Change_Err Dim dbs As Object, prp As Variant Const conPropNotFoundError = 3270 Set dbs = CurrentDb dbs.Properties(strPropName) = varPropValue ChangeProperty = True Change_Bye: Exit Function Change_Err: If err = conPropNotFoundError Then Set prp = dbs.CreateProperty(strPropName, varPropType, varPropValue) dbs.Properties.Append prp Resume Next Else ChangeProperty = False Resume Change_Bye End If End Function طريقة مختصرة لتغيير أحد القيم السابقة بعد إنشائها بالدالة السابقة : Dim dbs As Database Set dbs = CurrentDb dbs.Properties![اسم الخاصية] = False dbs.Close وللقراءة أسند القيمة العائدة إلى متغير : Dim dbs As Database Dim Rr Set dbs = CurrentDb Rr= dbs.Properties![اسم الخاصية] dbs.Close ولكم تحياتي -
كاتب الموضوع : الأخ أبو حمود: =================== الأخوة اليكم طريقة تغيير خيارات مربع الحوار بدء التشغيل : لتغيير الإعدادات في مربع حوار بدء التشغيل StartUp تم تقسيم تغيير إعدادات مربع حوار بدء التشغيل إلى إجراءين ودالتين لأن عنوان قاعدة البيانات ودليل أيقونة البرنامج يمكن أن يكونا فارغين مما يعطي خطأ في الدالة . (أولا) لتغيير عنوان التطبيق وأيقونة البرنامج : ضع الحدث التالي في المكان المطلوب : Dim intX As Integer Const DB_Text As Long = 10 intX = AddAppProperty("AppTitle", DB_Text, "عنوان جديد") intX = AddAppProperty("AppIcon", DB_Text, "C:WindowsCars.bmp") Application.RefreshTitleBar 1- السطر الثاني : إعلان عن ثابت من النوع Long ويمكنك حذف العبارة السابقة واستبدالها في السطر الثالث بـ dbtext أو db_text أو كتابة رقم 10 في نفس الموضع . 2- السطر الثالث : تم وضع المتغير intX لتخزين القيمة العائدة من الدالة AddAppProperty ، ثم الوسيطة الأولى اسم الخاصية والثانية نوعها والثالثة العنوان الجديد . وللسؤال عن العنوان الجديد ضع السطر التالي : intX = AddAppProperty("AppTitle", DB_Text, InputBox("اكتب العنوان الجديد:")) 3- السطر الرابع : هذا السطر خاص بوضع أيقونة للبرنامج أو تغييرها أو حذفها . ملاحظة : لحذف الأيقونة : intX = AddAppProperty("AppIcon", DB_Text, "") 4- السطر الخامس لغرض ظهور التعديل مباشرة في البرنامج . الحدث السابق يستدعي الدالة التالية : Function AddAppProperty(strName As String, varType As Variant, varValue As Variant) As Integer On Error GoTo AddProp_Err Dim dbs As Object, prp As Variant Const conPropNotFoundError = 3270 Set dbs = CurrentDb dbs.Properties(strName) = varValue AddAppProperty = True AddProp_Bye: Exit Function AddProp_Err: If err = conPropNotFoundError Then Set prp = dbs.CreateProperty(strName, varType, varValue) dbs.Properties.Append prp Resume Else AddAppProperty = False Resume AddProp_Bye End If End Function وعملها يتلخص في البحث عن العنوان أو الإيقونة السابقة في مربع حوار بدء التشغيل ، فإذا لم يجدهما (أي قيمهما في مربع النص الخاص بكل منهما) أو أحدهما يعطي خطأ فيبدأ تنفيذ الأسطر بعد الخطأ ؛ وهي لإنشاء اسم جديد . ولقراءة خاصية العنوان : Dim dbs As Database Set dbs = CurrentDb MsgBox dbs.Properties![AppTitle] dbs.Close (ثانياً) لتغيير بقية خيارات مربع حوار بدء التشغيل : ضع الحدث التالي في المكان المطلوب : 1 Const DB_Text As Long = 10 2 Const DB_Boolean As Long = 1 3 ChangeProperty "StartupForm", db_Text, "اسم نموذج" 4 ChangeProperty "StartupShowDBWindow", DB_Boolean, قيمة 5 ChangeProperty "StartupShowStatusBar", DB_Boolean, قيمة 6 ChangeProperty "AllowBuiltinToolbars", DB_Boolean, قيمة 7 ChangeProperty "AllowFullMenus", DB_Boolean, قيمة 8 ChangeProperty "AllowBreakIntoCode", DB_Boolean, قيمة 9 ChangeProperty "AllowSpecialKeys", DB_Boolean, قيمة 10 ChangeProperty "AllowBypassKey", DB_Boolean, قيمة 11 ChangeProperty "AllowToolbarChanges", DB_Boolean, قيمة 12 ChangeProperty "AllowShortcutMenus", DB_Boolean, قيمة 13 ChangeProperty "StartupShortcutMenuBar", db_Text, "اسم شريط منبثق" 14 ChangeProperty "StartupMenuBar", db_Text, "اسم شريط قوائم" 15 ChangeProperty "HijriCalendar", DB_Boolean, قيمة توضيح العبارات السابقة : 1- السطر الثالث : لاختيار نموذج الذي يفتح عند بدء تشغيل البرنامج (عرض النموذج/الصفحة). لعدم عرض نموذج عند بدء التشغيل استبدل اسم النموذج بالعبارة التالية "(None)" . 2- السطر الرابع : إظهار أو إخفاء إطار قاعدة البيانات (عرض إطار قاعدة البيانات) – True =إظهار وFalse=إخفاء . هو الإطار الذي يحوي كائنات التطبيق من الجداول والاستعلامات والنماذج والتقارير وصفحات البيانات والماكروات والوحدات النمطية . 3- السطر الخامس : لإظهار أو إخفاء شريط المعلومات (عرض شريط المعلومات) – True =إظهار وFalse=إخفاء . هو الشريط الذي يظهر أسفل إطار أكسسس . 4- السطر السادس : المنع أو السماح بأشرطة الأدوات المضمنة (السماح بأشرطة الأدوات المضمنة) – True =السماح وFalse=المنع . عند إزالة العلامة من مربع الخيار هذا ثم إغلاق التطبيق وتشغيله مرة أخرى تختفي كافة أشرطة الأدوات الخاصة بالأكسس وتبقى الأشرطة الخاصة بالتطبيق (التي من إعداد المستخدم) . 5- السطر السابع : المنع أو السماح بالقوائم الكاملة – True =السماح وFalse=المنع . تختفي القوائم الخاصة بالأكسس وتظهر قوائم تختص بالتحرير والطباعة والتعامل مع السجلات والإطارات والتعليمات وهي تفي بحاجة المستخدم من حيث إدخال وعرض البيانات خاصة إذا لم ترغب في إنشاء قوائم خاصة بالتطبيق . 6- السطر الثامن : لمنع المستخدم من الاطلاع على التعليمات البرمجية والأخطاء التي تحدث في وقت التشغيل . 7- السطر التاسع : (استخدام مفاتيح وصول خاصة) لمنع المستخدم من الوصول للمفاتيح التالية : (ALT+F1 (F11), CTRL+F11, CTRL+BREAK, and CTRL+G) فالأولى للوصول إلى إطار قاعدة البيانات والثاني للتبديل بين شريط القائمة المخصص وشريط القائمة المضمن والثالث لإيقاف التعليمات البرمجية والرابع لإظهار إطار التصحيح Dubeg . 8- السطر العاشر : منع المستخدم من إيقاف الماكرو AutoExec أو النموذج الموجود في بدء التشغيل عن طريق ضغطه لـ Shift . 9- السطر الحادي عشر : (السماح بتغييرات أشرطة الأودات / القوائم) يعطل أمر تخصيص في قائمة أدوات وكذلك لايظهر هذا الأمر عند النقر بزر الفأرة الأيمن على قائمة أو شريط أدوات . 10- السطر الثاني عشر : (السماح بالقوائم المختصر الافتراضية) وهي التي تظهر عند النقر على أحد كائنات القاعدة بزر الفأرة الأيسر . 11- السطر الثالث عشر : (شريط القوائم المختصرة) لإظهار شريط قوائم مختصر للتطبيق . ولإزالته : ChangeProperty "StartupShortcutMenuBar", DB_Text, "(default)" 12- السطر الرابع عشر : (شريط القوائم) لإظهار شريط قوائم خاص بالنموذج . ولإزالته نفس السطر ماقبل السابق . 13- السطر الخامس عشر : (استخدام التقويم الهجري) لاستخدام التقويم الهجري أو غيره . — الحدث السابق يستدعي الدالة التالية : Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer On Error GoTo Change_Err Dim dbs As Object, prp As Variant Const conPropNotFoundError = 3270 Set dbs = CurrentDb dbs.Properties(strPropName) = varPropValue ChangeProperty = True Change_Bye: Exit Function Change_Err: If err = conPropNotFoundError Then Set prp = dbs.CreateProperty(strPropName, varPropType, varPropValue) dbs.Properties.Append prp Resume Next Else ChangeProperty = False Resume Change_Bye End If End Function طريقة مختصر لتغيير أحد القيم السابقة بعد إنشائها بالدالة السابقة : Dim dbs As Database Set dbs = CurrentDb dbs.Properties!اسم الخاصية = False dbs.Close (التالي كان عبارة عن جدول فيحتاج منكم إلى تنسيق) الاسم في مربع حوار بدء التشغيل اسم الخاصية القيم عنوان التطبيق AppTitle عنوان نصي رمز التطبيق AppIcon دليل إلى ايقونة عرض النموذج/الصفحة StartupForm اسم نموذج من القائمة عرض إطار قاعدة البيانات StartupShowDBWindow True False عرض شريط المعلومات StartupShowStatusBar True False شريط القوائم StartupMenuBar True False شريط القوائم المختصرة StartupShortcutMenuBar True False السماح بالقوائم الكاملة AllowFullMenus True False السماح بالقوائم المختصرة الافتراضية AllowShortcutMenus True False السماح بأشرطة الأدوات المضمنة AllowBuiltInToolbars True False السماح بتغييرات أشرطة الأدوات / القوائم AllowToolbarChanges True False استخدام مفاتيح وصول خاصة AllowSpecialKeys True False عرض أو منع إظهار الكود بعد الخطأ* AllowBreakIntoCode True False منع تجاوز مربع حوار بدء التشغيل وكذلك الماكرو *AutoExec AllowBypassKey True False استخدام التقويم الهجري HijriCalendar True False * الأول والأخير منهما لايوجد لهما أدوات في مربع الخيار وإنما يمكن تعيين قيمهما عن طريق الفيوجل بيسك . ------ ملاحظة : يوجد فى المشاركة التالية فى نفس هذا الموضوع اعادة للشرح بتفصيل أكثر لأبو حمود أيضا -----
- 1 reply
-
- 2
-
-
-
شباب لماذا لا تظهر الخطوط في الاكسل
محمد طاهر عرفه replied to راعي الاولة's topic in منتدى الاكسيل Excel
اذا كان المقصود اضافة خط بعينه فاعتقد أنه لا يمكنك اضافته مباشرة بالسحب مثل الوورد و لكن مازال يمكنك عمل ذلك بماكرو ووضع ايقون للماكرو او سحب الماكرو الي القائمة -
شباب لماذا لا تظهر الخطوط في الاكسل
محمد طاهر عرفه replied to راعي الاولة's topic in منتدى الاكسيل Excel
موجود مربع سرد الخطوط داخل قائمة تنسيق Tools Customize Commands Format fonts بالعربي غالبا ستكون : ادوات تخصيص اوامر تنسيق خطوط -
ممكن تساعدوني في تعريف الدوال التالية
محمد طاهر عرفه replied to الحدادي's topic in منتدى الاكسيل Excel
الموضوع ليس اكسيل فقط و لكنه مليء بالمصطلحات الرياضية و سافتح المجال لمن لديه المام أكثر بالموضوع : هذا ما فهمته من التعليمات : الدالة Trend تعطيها مجال البيانات المتاح من س و ص و تستنتج لك القيمة ص المناظرة ل س جديدة بناء علي المعطيات س = x ص = y بناء علي امتداد معادلة خطية يتم استنتاجها من القيم المتاحة باستخدام طريقة رياضية تسمي Least square الدالة FORECAST تقوم بنفس المهمة للمعادلة y=mx+b أي يمكن تعربف ثابت اضافي فيها و في النهاية تستنتج Y المناظرة ل x و b ايضا الاستنتاج يتم بما يسمي Linear regression و مرفق مثال يوضح حالة trend و حالة Forecast بثابت و بدون أما عن الفارق ببين الزيادة الخطية و الاسية فهذا لا يخص الدوال و لكنه يخص أمر Edit Fill Series فمثلا 1 2 يكملها اكسيل 3 4 لو الزيادة خطية و يكملها 4 8 16 لو الزيادة أسية Trend.rar -
أيضا فى احدي المرات من فترة واجهتني مشكلة عجيبة و هي تداخل اسماء الكائنات مع تسميات اسماء محجوزة فقد كان لدي جدول باسم database و كانت تحدث مشاكل عجيبة توقفت بتغيير اسم هذا الجدول نقطة أخري راجع الفهارس indexex فى تصميم الجداول ، فنتيجة لنسخ الجقول يتم تكوين فهارس كثيرة غير سليمة فى تصميم الجداول فراجع فهارس جميع الجداول , و احذف المكرر منها
-
فكرة بحث ذكية (Search) الحروف ( ة ه ا إ آ أ ي ى )
محمد طاهر عرفه replied to ahmedspcc's topic in قسم الأكسيس Access
مرفق المثال و يمكن اختيار مجموعات الحروف المطلوب اعتيارها متماثلة من مربعات الخيار علي اليسار و ايضا هو تطبيق لفكرة البحث الفوري بمجرد الكتابة التي طرحها الاخ طارق و مضاف عليها انه بالنقر المذدوج علي مربع كتابة حروف البحث تظهر شاشة zoom و التي تمكننا من كتابة كلمات متتالية و مسافات بين الكلمات ، و الذي لم يمكن عمله فى المثال الاصلي ملاحظة : أيضا يمكن تفعيل شاشة الزوم بخلاف النقر المذدرج بالكريقة الطبيعية بكتابة Shift + F2 Search.rar -
فكرة بحث ذكية (Search) الحروف ( ة ه ا إ آ أ ي ى )
محمد طاهر عرفه replied to ahmedspcc's topic in قسم الأكسيس Access
هذه الدالة لأخونا أبو هاجر و الهدف منها استبدال كلمة البحث التي تحوي الحروف المتناظرة مثل ا أ آ Dim tempstr As String Dim tempend As String tempstr = Me.ser_txt If tempstr Like "*[أاإ]*"Then tempend = "" For b = 1 To Len(tempstr) If mid(tempstr, b, 1) = "ا" Or mid(tempstr, b, 1) = "إ" Or mid(tempstr, b, 1) = "أ" Then tempend = tempend & "[أاإ]" Else tempend = tempend & mid(tempstr, b, 1) End If Next End If -
أخي الكريم لتسجيل القيمة فى جدول يتم الكود الذي ذكره الأخ أنسي و يمكن وضع نفس الجملة فى حدث بعد التعديل للتاريخ الأول و التاريخ الثاني مع اضافة nz لتحسب كون احد التاريخين خالي Private Sub d1_BeforeUpdate(Cancel As Integer) Me.dd.Value = Nz(Me.d2 - Me.d1 + 1) End Sub Private Sub d2_BeforeUpdate(Cancel As Integer) Me.dd.Value = Nz(Me.d2 - Me.d1 + 1) End Sub حيث dd هو الحقل الذي مصدر بيانته حقل المجموع فى الجدول
-
يوجد من ضمن مجموعة صندوق الادوات التي تختار منها الزر زر آخر يشبه العصا السحرية اضغط عليه قبل اختيار الزر
-
من مجلد الفونت داخل مجلد الويندوز أو من هنا http://www.arabsgate.com/software/arabic_f...nts/index.shtml
-
أيضا ربما تفتح نماذج كثيرة فوق بعضها او تقارير فوق نماذج أو تستخدم عدد كبير من المتغيرات فى الكود أو تفتح recrdsets و تنسي اغلاقها أو تستخدم برامج أخري كثيرة فى نفس الوقت
-
اذا كنت تقصد أنك أدرجت كائن عبارة عن ملف وررد جربت أوامر refresh , requery للكائن و المنوذج سريعا و لم تنجح فى التحديث الفوري حل مؤقت : فاذا كان الاغلاق و الفتح هو الحل فيمكنك وضع الكود التالي فى حدث عند عداد الوقت Private Sub Form_Timer() Dim m As String m = Me.Name DoCmd.Close DoCmd.OpenForm m End Sub و اختيار الفترة Timer interval 10000 مثلا أي 10 ثواني سيتم التحديث التلقائي
-
أداة إضافية لاستيراد النماذج والتقارير من الـ MDE
محمد طاهر عرفه replied to alhajri's topic in قسم الأكسيس Access
طريقة الاستخدام هي فتح قاعدة جديدة ثم تعريف الملف السابق ارفاقه كاضافة Add-in فى أي ملف جديد من Tools Add-ins ثم تشغيل هذه ال Add-in و منها نحدد القاعدة الهدف ثم نستورد منها التقارير و النماذج -
السلام عليكم الحمد لله أن الكود أن الكود وافق ما تريد :) و بالنسبة للتثبيت ، فنظام المنتدي هو نقل المشاركات المفيدة الي قسم خلاصة المشاركات و ليس تثبيتها كما هو فى أغلب المنتديات و ذلك لأن قسم الخلاصة مصنف ، و يسهل البحث فيه بحسب القسم مع تحياتي
-
لماذا يفشل استعلام الإلحاقAppend Query
محمد طاهر عرفه replied to aabedrabouh's topic in قسم الأكسيس Access
السلام عليكم بما أن عدد السجلات يظهر فى الرسالة ، فهذا مؤشر جيد لكن الا تأتيك رسالة بعدها بسبب فشل الالحاق ؟؟ أحد الاحتمالات هو عدم تناظر أنواع الحقول بين الجداول ، مثل أن تحاول الحاق قيمة نصية الي حقل رقمي أو أن يكون الالحاق يخالف قواعد الفهارس و التكرار بمعني أن هناك حقل مثلا ممنوع التكرار فيه و تريد الحاق قيمة مكررة اليه أو أن يكون هناك حقل مطلوب ( required ) و لا تشمله عملية الالحاق فبالتالي لا يتم تسجيل السجل اذا لم تنجح المحاولة ، فارجو رفع الملف علي اي موقع تحميل مجاني ، فقد تأتيك اجابة أفضل و أسرع من أحد الأخوة ، فضلا عن ان التراسل المباشر فى مواضيع المنتدي يخالف قواعد المشاركة طلبا لعموم الفائدة مع تحياتي -
مرفق الملف بعد التعديل و به الشرح جرب و اخبرني Tansiq.rar
-
لماذا يفشل استعلام الإلحاقAppend Query
محمد طاهر عرفه replied to aabedrabouh's topic in قسم الأكسيس Access
السلام عليكم راجع موضوع استعلامات الالحاق فى دورة الأكسس من هنا و أبسط الحلول هو عمل ربط للجداول المختلفة ثم عمل استعلام الحاق بينها -
أداة إضافية لاستيراد النماذج والتقارير من الـ MDE
محمد طاهر عرفه replied to alhajri's topic in قسم الأكسيس Access
الحمد لله الاستيراد يتم بدون الكود أي أن التعديل مازال شكلي -
حديث حول المتغيرات فى VB - لأبي هاجر أولاً : هل يجب تعريف المتغيرات ؟ لو حاولت استخدام أي متغير في الكود الذي تكتبه فإن أكسس سيعرض عليك رسالة خطأ تفيد بأن هذه المتغير غير معرف ، مع ذلك فإن تعريف المتغيرات ليس أمراً إلزاميا ففي أعلى كل وحدة نمطية سواء كانت هذه الوحدة عامة أم خاصة بنموذج أو تقرير ستجد العبارة التالية : Option Explicit وهي تخبر أكسس VB يجب تعريف المتغيرات ولو حذفت هذه العبارة فلن يتغير شيء في برنامجك سوى أنك لن تكون ملزماً بتعريف المتغيرات هذا يقودنا إلى النقطة الثانية ثانياً : إذاً لماذا نقوم بتعريف المتغيرات رغم أن تعريف المتغيرات يعني مزيداً من الأسطر ومزيداً من الجهد إلا أن فوائد تعريف المتغيرات تجعل منه أمراً ضرورياً لا سيما مع البرامج الكبيرة ومن هذه الفوائد ما يلي : 1- يؤدي عدم تعريف المتغيرات إلى حجز المتغير قدراً كبيراً من ذاكرة الجهاز مما يؤثر على عمل البرنامج 2- يساعد تعريف المتغيرات بشكل كبير على تتبع الأخطاء 3- يضمن عدم استخدام أكثر من متغير بنفس الاسم وفي نفس المجال الزمني وهو الأمر الذي قد ينتج عنه أخطاء يصعب اكتشافها ثالثاً : المدى المكاني للمتغيرات أقصد بهذه النقطة أننا عند تعريف متغير فأين نستطيع استخدامه هناك ثلاث فئات من المتغيرات : 1- المتغيرات التي يتم تعريفها داخل الدالة أو الإجراء الفرعي وهذه يمكن استخدامها داخل الدالة أو الإجراء الفرعي فقط ولا تستطيع إسناد قيم لها بحيث تستدعي هذه القيم من خارج الدالة أو الإجراء مثال : Public Function fun1() Dim a As String a = "كيف الحال؟" End Function Public Function fun2() MsgBox a End Function عند استدعاء الدالة fun2 سيعرض البرنامج رسالة خطأ تفيد بأن المتغير a غير معرف 2- المتغيرات التي يتم تعريفها في أعلى الوحدة النمطية الخاصة بالنموذج أو التقرير وهي ما يسمى بمنطقة التعريفات هذه يمكن استخدامها داخل النموذج أو التقرير ولا يمكن استخدامها في نموذج أو تقرير آخر وهذه تعرف عادة باستخدام العبارة Dim مثل Option Compare Database Option Explicit Dim myvar As Integer 3- المتغيرات التي يتم تعريفها داخل الوحدات النمطية العامة يمكن استخدامها في أي مكان من البرنامج وهذه تعرف عادة باستخدام العبارة Public أما إذا عرفت باستخدام العبارة Private فيمكن استخدامها من داخل الوحدة النمطية فقط وكذلك لو عرفتها باستخدام العبارة Dim بقي أن أشير إلى أن العبارة Static تستخدم عادة لتعريف المتغيرات التي نريد أن تحافظ على قيمتها عند استدعائنا لها عدة مرات الأمر المهم هنا هو ضرورة استخدام هذه الأنواع بدقة لا سيما المغيرات العامة حيث يتم تحميلها عند تشغيل البرنامج وتبقى محملة في الذاكرة حتى يتم إيقاف البرنامج ، وهذا يؤثر على عمل البرنامج بلا شك ، أضف إلى ذلك أن الأسماء التي تستخدمها لتلك المتغيرات العامة يجب أن تكون فريدة حتى لا يحدث تعارض بينها وبين بعض المتغيرات الأقل مدى رابعاً : أنواع المتغيرات يحتوي الأكسس على عدد كبير من المتغيرات التي يصعب حتى ذكرها هنا فضلاً عن شرحها لكن يمكنك الاطلاع عليها عن طريق القائمة التي يتم عرضها بعد أن تكتب عبارة As أثناء تعريفك لمتغير ما وهذه المتغيرات منها ما هو عام يمكن استخدامه في لغة VBA في أي من برامج أوفيس ومنها ما هو خاص بأكسس VB وهذه في الغالب هي المتغيرات المتعلقة بتعريف كائنات أكسس أي الجداول والاستعلامات والنماذج وغيرها وسأعرض هنا قائمة بالمتغيرات العامة في لغة VBA وهي موجودة أيضاً في أغلب لغات البرمجة وهي : Boolean قيمة False ,True Byte بايت Integer عدد صحيح Long عد صحيح طويل Currency عملة Double رقم مزدوج String سلسلة Date تاريخ Variant غير محدد النوع هذه هي أنواع المتغيرات الأكثر شهرة واستخداماً ويجب استخدامها بدقة إذ يودي الاختلاف بين نوع المتغير والقيمة المسندة إليه إلى خطأ أثناء تنفيذ البرنامج فالعبارة التالية خطأ Dim a as integer A= "name" وكذلك العبارة التالية Dim a as integer A = 50000 لأن أكبر رقم يمكن أن يحتويه متغير من نوع Integer هو 32767 وهكذا هذه نبذة مختصرة عن تعريف المتغيرات ==== تم ====
-
- 3
-
-
-
هذا الشرح لأبي هاجر أقدم لكم شرحا مبسطاً عما يسمى بدوال تدفق البرنامج وهي الدوال التالية : دالة Choose تستخدم دالة Choose من أجل تحويل قيمة حقل من رقم إلى نص أو بمعنى آخر لنفترض أن لديك في الجدول حقلاً يحتوي على قيم رقمية ابتداء من 1 حتى 6 مثلاً وكل رقم تستخدمه في الدلالة على شيء معين مثلاً 1 يعني سعودي 2 يعني مصري وهكذا بالطبع حين تريد عرض هذه القيم للمستخدم فإنك تحتاج إلى تفسيرها أي تحويلها إلى نص في هذه الحالة فإنك ستحدد الحقل الذي يحتوي على الأرقام في متغير الفهرس بالنسبة للدالة وترتب القيم النصية حسب ما يعنيه كل رقم بالترتيب وتستخدم دالة Choose بالصيغة التالية : Choose(index, value1, value-2, value-3) حيث index هو الحقل أو المتغير الذي يحتوي على الفهرس value1, value-2, value-3 القيم 1 و2 و3 بحسب ما تستوعبه الدالة وهي تستوعب متغيرات بطول 255 حرفاً في حالة وجود قيم في الفهرس أصغر من 1 أو أكبر من القيم المحددة فإن الدالة ترجع قيمة خالية NULL دالة Switch تستخدم دالة Switch بنفس الطريقة التي تستخدم بها عبارة Select Case أي تبدأ بشرط ثم قيمة ثم شرط ثم قيمة وهكذا فإذا تحقق الشرط 1 أرجعت الدالة القيمة 1 وإذا تحقق الشرط 2 أرجعت الدالة الشرط 2 وهكذا أما إذا لم يتحقق أي من الشروط فإن الدالة ترجع قيمة خالية NULL وتستخدم دالة Switch بالصيغة التالية : Switch(expr-1, value-1, expr-2, value-2, expr-3,value-3) حيث expr هو الشرط و value القيمة التي سيتم عرضها عند تحقق الشرط السابق لها دالة IIF تستخدم دالة IIF بنفس الطريقة التي تستخدم بها عبارة If then else حيث يتم تمرير شرط واحد وقيمتين إلى الدالة فإذا تحقق الشرط فإن الدالة ترجع القيمة الأولى أما إذا لم يتحقق فإن الدالة ترجع القيمة الثانية وتستخدم دالة IIF بالصيغة التالية IIf(expr, truepart, falsepart) حيث expr هو الشرط و truepart القيمة التي ترجعها الدالة عند تحقق الشرط و falsepart القيمة التي ترجعها الدالة عند عدم تحقق الشرط
-
- 1
-
-
التعارف بين أعضاء المنتدي
محمد طاهر عرفه replied to محمد طاهر عرفه's topic in المنتدى التقني العام و تطبيقات الأوفيس الأخرى
الاسم : محمد طاهر سنة الميلاد : 1968 م المهنة : مهندس مدني و أعمل فى مجال إدارة المشاريع الهندسية التعليم : بكارولويس هندسة مدنية 1991 - هندسة القاهرة ماجيستير إدارة مشروعات 1998 - هندسة القاهرة PMP 2008 RMP 2012 MVP 2010-2013 الحالة الاجتماعية : متزوج و رزقني الله ب 4 أطفال بلد الجنسية / بلد الاقامة : مصر / الامارات أقسام الاهتمام فى المنتدي : كل الأقسام - و بالذات الأكسيس و الإكسيل معلومات أخري : أحب الأكسس و أنشأت تطبيقات مختلفة له ، و أيضا أحب جدا الاكسيل و استخدام ال vba به . تتركز خبرتي فى مجال ادارة المشاريع عموما و مشاريع التشييد بصفة خاصة، و لدى خبرة عملية فى هذا المجال من حيث التطبيق و التدريب. أجيد إستخدام برامج ادارة المشروعات بالاضافة الي بعض البرامج الهندسبة و أستخدم بعض برامج الرسم و الجرافيك بصورة متوسطة. و لدي دراية بسيطة بتصميم الويب و لغاته . خبرتي فى المنتديات : عضو شرف و مشرف قسمي الأكسس و الأوفيس ( سابقا ) و مراقب سابق فى الفريق العربي للبرمجة و إفتتحت هذا الموقع رسميا فى فى الثاني من جمادي الأولي 1424 هـ الموافق أول يوليو 2003 مـ