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

ma4fd2010

02 الأعضاء
  • Posts

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

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

مشاركات المكتوبه بواسطه ma4fd2010

  1. كيف يمكن ربط الاكسيس بجهاز الدفع لنقطاع البيع

    احتاج الي المساعده في اضافه قيمه كل فاتوره بمجرد الحفظ الي جهاز الدفع لنقطاع البيع neoleap 

    بحيث يمكن للعميل الدفع من خلال الفيزا بمجرد حفظ الفاتوره في الاكسيس

    مرفق صوره الجهاز و مع العلم ان الجهاز لايدعم خاصيه السيرال بورت 

     

    image.png.c027ad68817e3fe491f4ba6a1439c8ba.png

     

     

    • Like 1
  2. مميزات الشيت و طريقه التعامل معه

     
    • تكويد العاملين و هنا  بيانات العميل يتم إضافة جميع الموظفين بها وبياناتهم
    • يومية السلف يتم تسجيل جميع سلف الموظيف الصغيره يتم خصمها في نفس الشهر&الطويلة تخصم كل شهر
    • يتم خصم السلف مستحقة السداد في نفس الشيت اذا كانت صغيرة او طويلة يرجي كتابة تاريخ الشهر صحيح
    • كشف حساب السلف تقرير عن سلف الموظفين الصغيرة والطويلة
    • البونص والجزاءات تسجيل للموظفين البونص والجزاءات
    • الحضور والغياب تسجيل حضور الموظفين بـ1 الغياب بـ0
    • المرتبات يتم ترحيل جميع البيانات للشيت يرجي فقط تغير بداية الشهر ونهايته من اعلي الشيت كما موضح بالداخل
    • كشف حساب المرتبات اختيار اسم الموظف وطباعة تقرير بالمرتب
    • بمجرد تسجيل الحضور والانصراف و تحديد السلف – والعقوبات وعند ادخالها سيتم تخصيم المبالغ من المرتب حسب الشهر و اعداد كشف المرتبات و أيضا قيد المرتبات الشهري بشكل تلقائي
    • يمكن تسجيل و متابعه سلف الموظفين عمل جدوله لسلف الموظفين علي اكثر من شهر
    • جميع المعادلات مفتوحه المصدر و قابله للتعديل ( حيث ان الشيت بدون اي حمايه علي المعادلات لسهوله التعديل عليه )
    • بيان بمفردات المرتب لكل موظف عن الشهر
    • مع سهوله التبديل في بيان مفردات المرتب بين الموظفين بالاخيار من قائمه بجميع الموظفين بالشركه

    الملف حجمه صغير فلا يستدعى الأمر وضع رابط خارجى ... تــــم رفع الملف هنا مباشرة

    5-2022مرتبات.xlsx

    • Like 3
  3.  

    برنامج حسابات كامل مجاني  يدعم النموذج الشجري لدليل الحسابات لشركات المقاولات و الانشطه الخدميه برنامج كامل مجاني

    https://acc-arab.com/2021/06/my-accounts.html

     

     

    acc-arab_com.png.6891fefd2a0c96e5f349b9284cbf8220.png

    مميزات البرنامج
    شاشه تسجيل دخول مزوده بنظام صلاحيات لكل مستخدم
    نظام تكويد مبسط يتم عرضه علي نموذج شجره الحسابات و يمكن التكويد بدون الحاجه الي النموذج الشجري للحسابات عن طريق نموذج تعديل التكويد
    نموذج لتسجيل قيود اليوميه مصمم بشكل احترافي يمنع حفظ القيد اذا كان غير متساوي مع امكانيه طباعه كل قيد بشكل مستقل كانك تتعامل مع دفتر يوميه حقيقي بمزايا الدفاتر الالكترونيه
    و أيضا نموذج مراجعه قيود اليوميه لضمان دقه البيانات المدخله علي البرنامج
    امكانيه اغلاق الفتره المحاسبيه او اغلاق القيد المحاسبي لمنع التعديل عليه
    امكانيه الاطلاع علي دفتره الاستاذ و معاينه كافه التغيرات علي كل حساب بعد تسجيل اي قيد و أيضا طباعه كل حساب بشكل مستقل او طباعه كل الدفاتر بشكل مجمع او تحويلها لاي صيغه ( اكسيل او pdf ) برنامج حسابات متكامل
    سهوله الاطلاع علي دفتر اليوميه و سهوله الطباعه للدفتر بالكامل او طباعه كل قيد بشكل مستقل او تحويلها لاي صيغه ( اكسيل او pdf )
    امكانيه الاطلاع علي كافه التقاير المجاسبيه بما في ذلك الميزانيه العموميه و قائمه الدخل و حساب المتاجره و ميزان المراجعه او تحويلها الي اكسيل او pdf
    برنامج حسابات متكامل  مصمم بالاكسيس
    سهوله تفريغ محتويات البرنامج و ذلك بالدخول الي اعدادات البرنامج و اضافه كلمه سر الادمن للامان الضغط علي تفريغ المعاملات الماليه
    امكانيه الاحتفاظ بنسخه احياطيه من البرنامج
    سهوله العمل علي البرنامج علي شبكه داخليه مما يسمح بعمل اكثر من مستخدم علي البرنامج في نفس الوقت برنامج حسابات متكامل

    متطلبات تشغيل البرنامج
    نسخه اوفيس 2010 علي الاقل
    اسم المستخدم admin
    كلمه السر 123


    رابط تحميل البرنامج

    https://acc-arab.com/2021/06/my-accounts.html#المحاسب_العربي
    #برنامج_محاسبة_مستخلصات_المقاولات
    #شير_في_الخير
    #برنامج_حسابات

     

    #المحاسب_العربي
    #برنامج_محاسبة_مستخلصات_المقاولات
    #شير_في_الخير
    #برنامج_حسابات

    • Like 2
  4. تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه

    Acc: Mohamed ElSayed 3 مايو، 2020 اضف تعليق 722 زيارة

     
     
     
    تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه في الاكسيس
    يتم اضافه شريط ريبون لاعطاء البرنامج شكل احترافي مبسط لسهوله الاستخدام من قبل المستخدم النهائي للبرنامج
     
    في اصدار اوفيس 2003 كان من السهل تصميم شريط ادوات يشبه شكل الريبون بشكل مبسط
    لانه كان بنظام قوائم منسدله مبسطه  لكن بدايه من اصدار اوفيس 2007 تطور شكل الريبون ليعطي شكل مصور بالقوائم بشكل احترافي و تم تعديل طريقه تصميمه ليكون بناء علي نموذج بلغه xml

    لغه xml

    هي لغه تنتمي للغهHTML و هي شبيه بها في قواعد كتابه اللغه الي حد كبير و هي اختصار لـ eXtendable Markup Language و هي لغةالترميز القابلة للتوسع . XML صُمّمت لتخزين و نقل البيانات يمكن استخدامها في تصميم بعض البرامج للاندرويد او تصميم المواقع وغيرها

    دعنا الان نبدا في تصميم شريط ريبون جديد

    في البدايه نحتاج الي اضافه جدولين جدول لحفظ كود xml و جدول لحفظ الصور المصغره التي نريد وضعها علي الشريط( يمكن ان هذه الصور في ملف مستقل خارج قاعده البيانات الا ان هذا الامر قد يؤثر ببعض المشاكل عند محاوله نقل ملف قاعده البيانات من جهاز الي اخر )
    1. سنقوم بانشاء الجدول الاول جدول حفظ كود xml و سنقوم بحفظه باسم USysRibbons
    id
    AutoNumber
    RibbonName
    Text
    RibbonXml
    Memo او Long Text
     
    حيث ان RibbonName يمثل اسم شريط الريبون

    RibbonXml

    يمثل مكان حفظ كود xml و تم وضعه هذا الحقل Memo او Long Text حتي يتناسب مع الاكود التي تزيد عن 255 حرف حيث ان short text او text اقصي قدره استعابيه لها في الاكسيس 255 حرف يعد اسم جدول USysRibbons
    من جدول النظام و بمجرد حفظها لن تظهر بشكل افتراضي و يجب اظهار جداول النظام حتي نستطيع التحكم بها
    و أيضا  أذا اردنا ان يكون شريط الريبون مصور والصور داخل قاعده البيانات سنقوم باضافه جدول باسم tblImagesRibbons
     
    idImage
    AutoNumber
    imageRibbon
    Attachment
     
    حيث ان imageRibbon من النوع”Attachment” و ذلك

    تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه

    لحفظ الصور داخل القاعده البيانات

    يفضل ان تكون صيغه هذه الصور من النوع ico  لتكون متناسقه مع شريط الريبون 
    الان دعنا نتعرف علي كود xml و أيضا طريقه كتابه هذا الكود ليتناسب مع الاكسيس نبدا بكتابه معرف التالي
     
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
    onLoad="fncRibbon"
    loadImage="fncLoadImage">
    <ribbon startFromScratch="true">
    <tabs>
    <!-- نص الكود هنا -->
    </tabs>
    </ribbon>
    </customUI>

     

    و نلاحظ أيضا التشابه الكبير في بين لغه xml و لغه html و طريقه صياغه الاوامر البرمجيه هذا الوسم يتوافق مع اصدار اوفيس 2010 فيما فوق 
    و أيضا نحتاج طبعا الي بعض الخبره البسيطه في قواعد كتابه لغات xml او لغه htmlلنتمكن من كتابه هذا الكود نقوم باضافه الوسم
    <tab id="MyTab1"
    label="اسم القائمه">
    </tab>
     
     
    وذلك بعد الوسم tabs في كل مره نريد اضافه قائمه جديده و أيضا لاضافه مجموعه جديده داخل القائمه نستخدم الوسم group و يكون بالصيغه التاليه
    <group id="MyGroup1"
    label="اسم المجموعه">
     
    </group>

     

    button

    و لاضافه الازرار داخل الجروب نستخدم الوسم button
    <button
    id = "bt1"
    label = "الاسم الظاهر للزر"
    image="1.ico"
    size="large"
    onAction = "fncOnAction"
    />
     
    و نلاحظ أيضا ان المعامل id يكون لاعطاء اسم برمجي عند استدعاء هذا الزر برمجيا و يختلف هذا المعامل عن معامل label فهو للاسم الظاهر للمستخدم النهائي بينما الخاصيه imageتستخدم لاضافه صوره علي هذا الزر و المعامل onActionيستخدم لحجز متغر في الكود
    البرمجي عند استدعاء الزر البرمجي او عند الضغط علي هذا الزريتم اعطاء ارقام او اسماء لكل زر بحيث لا يتكرر اي اسم حيث انه
    في حاله تكرر اي اسم سيتوقف كود 
    xml و لن يظهر شريط الريبون في التصميم ليظهر الكود بشكل كامل كما يلي
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
    onLoad="fncRibbon"
    loadImage="fncLoadImage">
    <ribbon startFromScratch="true">
    <tabs>
    <tab id="MyTab1"
    label="الاعدادات">
    <group id="MyGroup0"
    label="اعدادات">
    <button
    id = "bt00"
    label = "اعدادات النسخ الاحتياطي"
    image="00.ico"
    size="large"
    onAction = "fncOnAction"
    />
    </group>
     
    </tab>
    </tabs>
    </ribbon>
    </customUI>

     

    يتم تخزين جميع الصور في جدول الصور الذي سبق و ان قمنا بتصميمه tblImagesRibbons

    اضافه مكتبه برمجيه

    نحتاج في هذا العمل لأضافه مكتبه برمجيه التي تسهل علي الاكسيس استدعاء الصور من الجداول
    و أيضا  يمكن ان نستخدم المكتبه البرمجيه Microsoft office 16.0 object libraryحيث يمثل الرقم 16 لرقم اصدار الاوفيس و بالتالي سيختلف من اصدار الي اصدار اخر و في حاله عدم عثورنا علي هذه المكتبه البرمجيه يمكن البحث عنها داخل ملفات النظام و هي موجوده ضمن الملف MSO.DLL 
    نقوم أيضا باضافه داله برمجيه لتشغيل ازار شريط القوائم و نستخدم الامر البرمجي Select Case و ذلك للمرور علي كافه ازار التشغيل في الشريط ففي حاله الضغط علي زر يقوم هذا الكود بتحديد الزر و تشغيل الكود الذي يخص هذا الامر
    Public Sub fncOnAction(control As IRibbonControl)
     
    Select Case control.Id
     
    Case "bt0"
     
    MsgBox "مرحبا"
     
    Case "bt1"
     
    MsgBox "22222222"
     
    Case Else
     
    MsgBox "عفوا لا تمتلك صلاحيه الوصل " & control.Id, vbInformation, "انتبه"
     
    End Select
     
    End Sub

    تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه

    يمكن استخدام الداله dlookup لاستخراج الصور من الجدول لاضافتها في الشريط يجب تشغيل xml بمجرد تشغيل قاعده البيانات
    و أذا قمنا باي تعديل علي هذا الكود لن يظهر تاثير هذا التاثير الا عند اعاده فتح ملف قاعده البيانات من جديد
     
     
  5. تجميع و دمج عده ملفات عمل اكسيل في ملف عمل واحد

    Acc: Mohamed ElSayed 24 مارس، 2020 اضف تعليق 1,217 زيارة

     

    دمج عده ملفات عمل اكسيل في ملف عمل واحد

    كثيرا من الاحيان نحتاج في اعمالنا اليوميه الي تجميع و دمج عده ملفات عمل اكسيل في ملف عمل لنتعامل مع ملف واحد بدلا من التعامل مع عده ملفات

    و في هذا المقال نستعرض طريقه عمل ذلك بضغطه زر عن طريق كود برمجي مهما كان عدد شيتات العمل الذي نحتاج الي اضافته

    تجميع و دمج عده ملفات عمل اكسيل في ملف عمل واحد

    في البدايه دعنا نتعرف علي طريقه عمل هذا الملف ثم نستعرض فكره عمل هذا الكود كي نتمكن من تطوير هذا الكود في اعمالنا

    فالاهم من مجرد تطبيق اي كود هو فهمه كي نستطيع التعامل مع هذا الكود

    خطوات العمل

    دعنا نبدا بنسخ الكود المرفق و فتح ملف الاكسيل الذي نريد اضافه اليه كل الشيتات الاخري

    ثم اضغط Alt + F11    او  اضغط ضغطه بزر الماوس الايمن علي اسم الشيت ثم اختر view code  ليفتح محرر الاكواد

     
     
    view2Bcode.jpg?w=618&ssl=1
    ثم اختر من قائمه insert   اختر module
    module-1.jpg?resize=327%2C166&ssl=1

    ثم قم بلصق الكود بعد ذلك قم بالحفظ و اغلق محرر الاكواد ثم انتقل الي الاكسيل و قم باختيرا save as

      من خلال القائمه file  و غير صيغه الملف file type  الي اي صيغه تقبل الكود و ليكن الصيغه xlsm

    الصيغه excel Macro-Enabled Workbook

    هي صيغه تتيح حفظ الاكواد و الوحدات النمطيه و النماذج داخل شيت العمل و تاخذ الامتداد .Xlsm

    بعد ذلك قم بنسخ هذا الملف داخل مجلد فارغ و قم بعمل مجلد اخر داخل هذا المجلد الفارغ

    و قم باعده تسميه هذا الملف الي اسم

    test  ثم قم بوضع كل الملفات المراد دمجها  الي مجلد test الجديد

    ثم انتقل الي ملف العمل الموجود به الكود و افتحه اضغط علي macro  من خلال


    القائمه view  اختر CollectWorkbooks اسم الماكرو الذي قمنا باضافته عن طريق الكود بمجرد عمل هذا الكود ينتقل كافه شيتات العمل

    من المجلد test  الي الشيت المفتوح بنفس الترتيب خلال ثواني

     
    Option Explicit
     
    ()Sub CollectWorkbooks
    'تعريف متغير من النوع النصي و اعطيناه اسم
    '( path)
    Dim Path As String
    'تعريف متغير من النوع النصي و اعطيناه اسم
    '(Filename)
    Dim Filename As String
    'تعريف متغير من النوع ورقه عمل و اعطيناه اسم
    ' (SH)
    Dim SH As Worksheet
    ' تعريف المتغير لترتيب اوراق العمل بالترتيب الصحيح و قمنا بافتراض قيمه اسميه له
    'x
     
    Dim X As Long
    'افترضنا قيمه افتراضيه للمتغير x بقيمه 1
    X = 1
    'تعين المتغير ليحدد مسار الملفات المراد دمجها بجوار مسار الملف الاساسي داخل مخلد test كاسم افتراضي
     
    Path = ThisWorkbook.Path & "\Test\"
     
    'تعين المصنف ليساوي اسم كل مصنف داخل ملف العمل و مسار ملف العمل بصيغه ملف اكسيل ماكرو كضيغه افتراضيه يمكنها حفظ كود العمل
    Filename = Dir(Path & "*.xlsm")
    'الغاء خاصيه اهتتزاز الشاشه
    Application.ScreenUpdating = False
    'الغاء خاصيه الرسائل التنبهيه
    Application.DisplayAlerts = False
    'حلقه تكراريه لحذف ورقه ما عدا ورقه المسار
    For Each SH In ThisWorkbook.Sheets
    If SH.Name <> "Collector" Then SH.Delete
    Next SH
     
    'حلقه تكراريه للمصنفات الموجوده في المسار المحدد الي ان يجد اي مصنف في هذا المسار
    Do While Filename <> ""
    'فتح المصنف
    Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
    'حلقه تكراريه لكل اوراق العمل داخل المصنف النشط
    For Each SH In ActiveWorkbook.Sheets
    'نسخ ورقه العمل و لصقها بنهايه فهرس اوراق العمل
    SH.Copy After:=ThisWorkbook.Sheets(X)
    'زياده قيمه المتغير بمقدار 1
    X = X + 1
    'الانتقال لورقه العمل التاليه
    Next SH
    'اغلاق المصنف
    Workbooks(Filename).Close
    'اعاده ضبط المتغير
    Filename = Dir()
    Loop
    'تنشيط او تحديد ورقه العمل الاولي
    Sheets("Collector").Activate
    'تفعيل خاصيه التنبيه بالرسائل
    Application.DisplayAlerts = True
    'تفعيل خاصيه اهتزاز الشاشه
    Application.ScreenUpdating = True
    End Sub

     

    حيث ان هذا الكود يقوم بعمل حلقه تكراريه علي اسماء الشيتات داخل المجلد test  و البدا باول شيت ثم اعاده عمل حلقه تكراريه اخري جديده علي اسماء الشيتات الموجوده في هذا الشيت
    لنقلها بالترتيب و بعد الانهاء يقوم باغلاق ملف الاكسيل الاول و الانتقال الي الحلقه التكراريه الاولي لياخذ الملف التالي و يعود و يكرر نفس الحلقه التكراريه حتي ينتهي من كل ملفات الاكسيل داخل المجلد test  
    و بعد الانتهاء تقف الحلقه التكراريه و يقف الكود تم وضع شرح للكود بكافه تفاصيله

    قد يعجبك ايضا تصميم شيت اليوميه الامريكيه
    قد يعجبك ايضا 
    شرح داله البحث الداله vlookup بالامثله و التطبيقات العمليه

    المصدر موقع المحاسب العربي

    https://acc-arab.com/2020/03/blog-post_24-2.html

    • Like 6
  6. تلوين الخليه النشطه في الشيت

    تلوين الخليه النشطه في الشيت

    نقدم لكم اليوم كود لتلوين الخليه النشطه بمجرد الضغط بالماوس حيث يسمح هذا الكود بمجرد الضغط بالماوس بتلوين الخليه النشطه و بمجرد الانتقال الي خليه اخري يتم الغاء اللون و يعود بدون لون فهذا الكود يساعد في التعامل مع شيتات العمل كبيره البينات الا ان المشكله في هذا الكود انه سيقوم بمسح التنسيقات الاساسيه للشيت و عليك اعاده تنسيق الشيت بعد انتهاء العمل

    كيف يمكن اضافه الكود انتقل الي اسم الشيت و اضغط بزر الماوس الايمن و اختار view code ثم من القائمه الجانبيه اختر الشيت الذي تريد تنشيط هذا الكود به و قم بوضع الكود المرفق

     

    view code
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim rowNumberValue As Integer, columnNumberValue As Integer, i As Integer, j As Integer
    ' اجعل جميع خلايا ورقة العمل الحالية بدون لون
    Cells.Interior.ColorIndex = 0 rowNumberValue = ActiveCell.Row columnNumberValue = ActiveCell.Column
    ' لون عمود الخلية الفعالة مابين الخلية الفعالة واسم العمود
    For i = 1 To rowNumberValue Cells(i, columnNumberValue).Interior.ColorIndex = 19 Next i
    ' لون سطر الخلية الفعالة مابين الخلية الفعالة واسم العمود
    For j = 1 To columnNumberValue Cells(rowNumberValue, j).Interior.ColorIndex = 19 Next j
    End Sub

     

     

    تستطيع التحكم في لون التظليل من خلال تغير القيمه للمتغير Interior.ColorIndex باحد الارقام التاليه

    تغيير اللون المستخدم في هذا الكود:

    يمكنك استخدام أي لون من الالوان الموجوده في القائمة التالية فقط استبدل رمز اللون في الكود ثم  لاحظ أن القيمة 0 تعني لا لون.
     
     
    VB-Color-List

     

     

    تلوين الخليه النشطه في الشيت

    و في الختام يتضح لنا بعض من امكانيات البسيطه التي يمكن ان ننفذها من خلال برمجه الاكسيل المتقدم و ننصحك بمزيد من الدروس في هذا المجال الشيق و يمكن متابعه المزيد من الافكار في هذا المجال من خلال تحميل افضل مرجع عربي لتعلم برمجه الاكسيل المتقدم

    و لكن اذا كنت من المهتمين ببرمجه الاكسيس المتقدم تحميل  كتاب استخدام الاكسيس في تصميم البرامج التجاريه يوجد به العديد من الافكار البرمجيه في مجال تصميم البرامج التجاريه و المحاسبيه

    يمكنك ان تشاهد ايضا الدوال المبرمجه في الاكسيل

     

    مواضيع ذات صله

    المصدر  موقع المحاسب العربي

    https://acc-arab.com/2020/07/active-cell-color.html

    • Like 2
  7. تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه

     

    تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه في الاكسيس
    يتم اضافه شريط ريبون لاعطاء البرنامج شكل احترافي مبسط لسهوله الاستخدام من قبل المستخدم النهائي للبرنامج
     
    في اصدار اوفيس 2003 كان من السهل تصميم شريط ادوات يشبه شكل الريبون بشكل مبسط
    لانه كان بنظام قوائم منسدله مبسطه  لكن بدايه من اصدار اوفيس 2007 تطور شكل الريبون ليعطي شكل مصور بالقوائم بشكل احترافي و تم تعديل طريقه تصميمه ليكون بناء علي نموذج بلغه xml

    لغه xml

    هي لغه تنتمي للغهHTML و هي شبيه بها في قواعد كتابه اللغه الي حد كبير و هي اختصار لـ eXtendable Markup Language و هي لغةالترميز القابلة للتوسع . XML صُمّمت لتخزين و نقل البيانات يمكن استخدامها في تصميم بعض البرامج للاندرويد او تصميم المواقع وغيرها

    دعنا الان نبدا في تصميم شريط ريبون جديد

    في البدايه نحتاج الي اضافه جدولين جدول لحفظ كود xml و جدول لحفظ الصور المصغره التي نريد وضعها علي الشريط( يمكن ان هذه الصور في ملف مستقل خارج قاعده البيانات الا ان هذا الامر قد يؤثر ببعض المشاكل عند محاوله نقل ملف قاعده البيانات من جهاز الي اخر )
    1. سنقوم بانشاء الجدول الاول جدول حفظ كود xml و سنقوم بحفظه باسم USysRibbons
    id
    AutoNumber
    RibbonName
    Text
    RibbonXml
    Memo او Long Text
     
    حيث ان RibbonName يمثل اسم شريط الريبون

    RibbonXml

    يمثل مكان حفظ كود xml و تم وضعه هذا الحقل Memo او Long Text حتي يتناسب مع الاكود التي تزيد عن 255 حرف حيث ان short text او text اقصي قدره استعابيه لها في الاكسيس 255 حرف يعد اسم جدول USysRibbons
    من جدول النظام و بمجرد حفظها لن تظهر بشكل افتراضي و يجب اظهار جداول النظام حتي نستطيع التحكم بها
    و أيضا  أذا اردنا ان يكون شريط الريبون مصور والصور داخل قاعده البيانات سنقوم باضافه جدول باسم tblImagesRibbons
     
    idImage
    AutoNumber
    imageRibbon
    Attachment
     
    حيث ان imageRibbon من النوع”Attachment” و ذلك

    تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه

    لحفظ الصور داخل القاعده البيانات

    يفضل ان تكون صيغه هذه الصور من النوع ico  لتكون متناسقه مع شريط الريبون 
    الان دعنا نتعرف علي كود xml و أيضا طريقه كتابه هذا الكود ليتناسب مع الاكسيس نبدا بكتابه معرف التالي
     
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
    onLoad="fncRibbon"
    loadImage="fncLoadImage">
    <ribbon startFromScratch="true">
    <tabs>
    <!-- نص الكود هنا -->
    </tabs>
    </ribbon>
    </customUI>

     

    و نلاحظ أيضا التشابه الكبير في بين لغه xml و لغه html و طريقه صياغه الاوامر البرمجيه هذا الوسم يتوافق مع اصدار اوفيس 2010 فيما فوق 
    و أيضا نحتاج طبعا الي بعض الخبره البسيطه في قواعد كتابه لغات xml او لغه htmlلنتمكن من كتابه هذا الكود نقوم باضافه الوسم
    <tab id="MyTab1"
    label="اسم القائمه">
    </tab>
     
     
    وذلك بعد الوسم tabs في كل مره نريد اضافه قائمه جديده و أيضا لاضافه مجموعه جديده داخل القائمه نستخدم الوسم group و يكون بالصيغه التاليه
    <group id="MyGroup1"
    label="اسم المجموعه">
     
    </group>

     

    button

    و لاضافه الازرار داخل الجروب نستخدم الوسم button
    <button
    id = "bt1"
    label = "الاسم الظاهر للزر"
    image="1.ico"
    size="large"
    onAction = "fncOnAction"
    />
     
    و نلاحظ أيضا ان المعامل id يكون لاعطاء اسم برمجي عند استدعاء هذا الزر برمجيا و يختلف هذا المعامل عن معامل label فهو للاسم الظاهر للمستخدم النهائي بينما الخاصيه imageتستخدم لاضافه صوره علي هذا الزر و المعامل onActionيستخدم لحجز متغر في الكود
    البرمجي عند استدعاء الزر البرمجي او عند الضغط علي هذا الزريتم اعطاء ارقام او اسماء لكل زر بحيث لا يتكرر اي اسم حيث انه
    في حاله تكرر اي اسم سيتوقف كود 
    xml و لن يظهر شريط الريبون في التصميم ليظهر الكود بشكل كامل كما يلي
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
    onLoad="fncRibbon"
    loadImage="fncLoadImage">
    <ribbon startFromScratch="true">
    <tabs>
    <tab id="MyTab1"
    label="الاعدادات">
    <group id="MyGroup0"
    label="اعدادات">
    <button
    id = "bt00"
    label = "اعدادات النسخ الاحتياطي"
    image="00.ico"
    size="large"
    onAction = "fncOnAction"
    />
    </group>
     
    </tab>
    </tabs>
    </ribbon>
    </customUI>

     

    يتم تخزين جميع الصور في جدول الصور الذي سبق و ان قمنا بتصميمه tblImagesRibbons

    اضافه مكتبه برمجيه

    نحتاج في هذا العمل لأضافه مكتبه برمجيه التي تسهل علي الاكسيس استدعاء الصور من الجداول
    و أيضا  يمكن ان نستخدم المكتبه البرمجيه Microsoft office 16.0 object libraryحيث يمثل الرقم 16 لرقم اصدار الاوفيس و بالتالي سيختلف من اصدار الي اصدار اخر و في حاله عدم عثورنا علي هذه المكتبه البرمجيه يمكن البحث عنها داخل ملفات النظام و هي موجوده ضمن الملف MSO.DLL 
    نقوم أيضا باضافه داله برمجيه لتشغيل ازار شريط القوائم و نستخدم الامر البرمجي Select Case و ذلك للمرور علي كافه ازار التشغيل في الشريط ففي حاله الضغط علي زر يقوم هذا الكود بتحديد الزر و تشغيل الكود الذي يخص هذا الامر
    Public Sub fncOnAction(control As IRibbonControl)
     
    Select Case control.Id
     
    Case "bt0"
     
    MsgBox "مرحبا"
     
    Case "bt1"
     
    MsgBox "22222222"
     
    Case Else
     
    MsgBox "عفوا لا تمتلك صلاحيه الوصل " & control.Id, vbInformation, "انتبه"
     
    End Select
     
    End Sub

    تصميم شريط ريبون احترافي في الاكسيس – بايقونات احترافيه

    يمكن استخدام الداله dlookup لاستخراج الصور من الجدول لاضافتها في الشريط يجب تشغيل xml بمجرد تشغيل قاعده البيانات
    و أذا قمنا باي تعديل علي هذا الكود لن يظهر تاثير هذا التاثير الا عند اعاده فتح ملف قاعده البيانات من جديد
     
    لمزيد من المعلومات يمنكم زياره رابط الموضوع علي موقع المحاسب العربي
     
     
    • Thanks 2
  8. تصميم النموذج الشجري treeview لدليل الحسابات بالاكسيس

     

    دليل-الحسابات

    تصميم النموذج الشجري treeview لدليل الحسابات بالاكسيس

    تصميم النموذج الشجري treeview لدليل الحسابات بالاكسيس نتناول خطوات تصميم النموذج الشجري في الاكسيس treeview و استدعاء المكتبات البرمجيه اللازمه له و نستعرض كل ذلك علي نموذج دليل ال الحسابات و أيضا مزايا و مشاكل treeview

    مميزات تصميم  النموذج الشجري

    يعطي النموذج الشجري في اي برنامج شكل تصميم احترافي و سهوله فهم نظام التكويد المراد داخل البرنامج و أيضا سهوله التكويد و سهوله في تنظيم التكويد و سهوله البحث دخل التموذج الشجري

    عيوب التصميم  الشجري

    مشاكل عند مرحله التكويد بعض المشاكل التي قد تواجهك يجب مراعاه التكويد بشكل المتبع دخل البرنامج بشكل صحيح حيث ان التكويد بشكل غير صحيح في اغلب الاحوال سيؤدي الي انهيار النظام الشجري و أيضا قد يؤدي الي الخلل البرمجي في النموذج الشجري فعلي سبيل المثال يتم ادراج حساب اساسي يندرج تحته حساب فرعي يندرج تحت الحساب الفرعي كود الحاساب فان الكود الاب لكود الحساب هو الحساب الفرعي و ليس الكود الاساسي بينما كود الحساب الاب للكود الفرعي هو كود الحساب الاساسي فاذا حدث خلل في التكويد عن هذا النظام سيحدث مشاكل برمجيه اي يجب بناء دليل الحسابات بشكل صحيح كامل حتي نتمكن من عرض النموذج الشجري لدليل الحسابات

    مشاكل اثناء نقل ملف العمل بين جهاز و اخر

    حيث باختلاف نسخ الاوفيس بين الاجهزه قد تظهر  مشاكل المكتبات البرمجيه و ذلك في حاله نقل البرنامج لجهاز اخر يمكنك التعرف علي حل هذه المشاكل من هنا

    خطوات تصميم النموذج الشجري treeview لدليل الحسابات بالاكسيس

    تصميم جدول التكويد

    في البدايه سنحتاج الي تصميم جدول الاساسيه لتكويد الحسابات المستخدمه دخل النموذج الشجري و المراد عرضها و يتم ذلك من خلال الضغط علي القائمه Create و اختيار منها Table Design دعنا نفترض في حالتنا اننا نريد عمل دليل حسابات بالنموذج الشجري لسهوله تكويد الحسابات و أيضا لسهوله البحث عن الحسابات نستعرض حقول هذا الجدول و اهم خصائص هذه الحقول

     

    دليل حسابات

     

     
    Fied Size Date Type Caption Field Name
    15 Text كود الحساب AccID
    255 Text اسم الحساب ArAccDes
    15 Text كود الحساب الاب ParAcc
    255 Text اسم الحساب الاب ArParDes
    —- Yes/NO هل هو حساب رئيسى IsPrimary
    15 Text مستوى الحساب AccLevel
    25 Text التوجية المحاسبى Accdir
    15 Text طبيعة الرصيد Panat
    15 Text كود المجموعة الفرعية كود المجموعة الفرعية

     

    لاحظ أيضا ان حقل كود الحساب و الذي افترضنا له اسم AccID تم اعطاءه خاصيه متفتاح اساسي Primary Key نقوم بحفظ الجدول و تعطيه اسم افتراضي accounts

    انشاء نماذج العرض

    الان نقوم باستخدام معالج النماذج في انشاء نموذج للجدول التكويد من خلال الضغط علي القائمه Create و اختيار منها Form Wizard يمكنك أيضا انشاء النموذج بوضع التصميم و اضافه الحقول بشكل يدوي

     

    معالج تصميم النماذج

     

    اضافه النموذج الشجري للنموذج TreeView

    و بعد الانتهاء من بناء النموذج ندخل الي النموذج في وضع التصميم لاضافه النموذج الشجري

    Untitled-2.jpg?resize=429%2C182&ssl=1

     

    من خلال القائمه Design اضغط علي زر More كما هو في الصوره  و اختر ActiveX Control , و من خلال هذا المعالج ابحث عن Microsoft TreeView Control  سيقوم المعالج باضافه النموذج الشجري للنموذج

    اضافه الاكواد الازمه لاستعراض شجره الحسابات

    الان بدا في اضافه الاكواد الازمه لاستعراض شجره الحسابات

    Private Sub Form_Load()
    
    On Error Resume Next
     
    Dim dbs As dao.Database, rst As dao.Recordset
      Dim nodX As Node
      Set dbs = CurrentDb
      Set rst = dbs.OpenRecordset("Accounts", dbOpenDynaset)
      Set nodX = TreeView2.Nodes.Add(, , "A", "Accounts")
      With rst
        Do While Not .EOF
          Set nodX = TreeView2.Nodes.Add("A" & CStr(Nz(!ParAcc)), tvwChild, "A" & CStr(!AccID), CStr(!AccID) & ":" & (!ArAccDes))
           nodX.EnsureVisible
            .MoveNext
        Loop
      End With
      rst.Close
      Set dbs = Nothing
      On Error Resume Next
      For Each nodX In TreeView2.Nodes
       nodX.Expanded = False
       nodX.Sorted = True
      Next
      
    End Sub
    

    استدعاء المكتبه البرمجيه dao

    في هذا الكود قمنا باستدعاء المكتبه البرمجيه dao  هذه المكتبه و هي المكتبه الخاصه بالتحكم في قواعد البيانات حيث تستطيع هذه المكتبه البرمجيه انشاء قاعده بيانات و الدخول الي الصفوف و الدوران بين هذه الصفوف و استدعاء القيم من بينها و التحكم بها

    قمنا نانشاء متغير من النوع Database و اضفنا له عنصر التحكم dao

    Dim dbs As dao.Database 
    
    
     
     rst As dao.Recordse
    

    اضفنا هذا السطر للدوران بين صفوف قاعده البيانات و التحكم بها

     

    Set rst = dbs.OpenRecordset(“Accounts”, dbOpenDynaset) Set nodX = TreeView2.Nodes.Add(, , “A”, “Accounts”)

    من خلال هذا السطر قمنا بفتح قاعده البيانات التي افترضنها كمتغير و أيضا قمنا بتعبئه محتوياتها في النموذج الشجري TreeView

    تم اعطاء راس النموذج الشجري اسم Accounts يمكنك تغير الاسم كيف تشاء

    With rst
        Do While Not .EOF
          Set nodX = TreeView2.Nodes.Add("A" & CStr(Nz(!ParAcc)), tvwChild, "A" & CStr(!AccID), CStr(!AccID) & ":" & (!ArAccDes))
           nodX.EnsureVisible
            .MoveNext
        Loop
      End With
      rst.Close
    

     

    فهم خطوات عمل الكود

    من خلال هذا الكود تبدا المكتبه البرمجيه dao في الدوران علي قاعده البيانات علي شكل حلقه تكراريه من النوع Do While و تحديد كل عنصر من عناصر هذه القائمه و تحديد مستوي هذا العنصر تبدا بالدوران بدايه من اول صف في قاعده البيانات ليظهر في النموذج الشجري في المستوي المناسب مضاف اليه كود الحساب و الوصف الخاص بالحساب ( اسم الحاب ) ثم يدور الكود علي العنصر التالي بالامر MoveNext و هكذا و يتكرر هذا الامر باستخدام الامر Loop حتي تنتقل الي اخر صف و الانتقال بين جميع الصفوف و بعد الانتهاء يتم الخروج من هذه الحلقه التكراريه End With

    استدعاء اسماء الحسابات في النموذج الشجري

    لاستدعاء اسم الحساب من جدول الحسابات نستخدم الداله DLookup حيث تقوم هذه الداله بالبحث في جدول accounts في عمود ArAccDes الخاص باسم الحساب و استراج اسم الحساب من بين كل الحسابات بشرط كود الحساب AccID=ParAcc

    Private Sub ParAcc_AfterUpdate()
    
    On Error Resume Next
    ArParDes = DLookup("ArAccDes", "accounts", "AccID=ParAcc")
    End Sub
    

     

     

    Private Sub TreeView2_NodeClick(ByVal Node As Object)
    On Error Resume Next
      Dim mykey As String
        With Node
         mykey = Right(.Key, Len(.Key) - 1)
         Finder (mykey)
        End With
    End Sub
    

     

     

    Private Sub Finder(Skey)
    On Error Resume Next
    Dim rs As Object
     Me.Filter = ""
     Set rs = Me.Recordset.Clone
     rs.FindFirst "[AccID] = '" & Trim(Skey) & "'"
     Me.Bookmark = rs.Bookmark
    End Sub
    
     

    المصدر موقع المحاسب العربي

    • Like 1
  9. تصميم شريط ريبون احترافي في الاكسيس - بايقونات احترافيه

    تصميم شريط ريبون احترافي في الاكسيس - بايقونات احترافيه في الاكسيس يتم اضافه شريط ريبون لاعطاء البرنامج شكل احترافي مبسط لسهوله الاستخدام من قبل المستخدم النهائي للبرنامج
     
    في اصدار اوفيس 2003 كان من السهل تصميم شريط
    ادوات يشبه شكل الريبون بشكل مبسط لانه كان بنظام قوائم منسدله مبسطه
    لكن بدايه من اصدار اوفيس 2007 تطور شكل الريبون ليعطي شكل مصور بالقوائم بشكل احترافي و تم تعديل طريقه تصميمه ليكون بناء علي نموذج بلغه xml

    لغه xml

    هي لغه تنتمي للغهHTML و هي شبيه بها في قواعد كتابه اللغه الي حد كبير و هي اختصار لـ eXtendable Markup Language و هي لغةالترميز القابلة للتوسع . XML صُمّمت لتخزين و نقل البيانات يمكن استخدامها في تصميم بعض البرامج للاندرويد او تصميم المواقع وغيرها

     

    دعنا الان نبدا في تصميم شريط ريبون جديد

    في البدايه نحتاج الي اضافه جدولين جدول لحفظ
    كود
    xml و جدول لحفظ الصور المصغره التي نريد وضعها علي
    الشريط( يمكن ان هذه الصور في ملف مستقل
    خارج قاعده البيانات الا ان هذا الامر قد يؤثر ببعض المشاكل عند محاوله نقل ملف
    قاعده البيانات من جهاز الي اخر )
     
    1. سنقوم بانشاء الجدول الاول جدول حفظ كود xml و سنقوم بحفظه باسم USysRibbons
    id
    AutoNumber
    RibbonName
    Text
    RibbonXml
    Memo او Long Text
     
    حيث ان RibbonName
    يمثل اسم شريط الريبون

    RibbonXml

    يمثل مكان حفظ كود xml و تم وضعه هذا الحقل Memo او Long Text حتي يتناسب مع الاكود التي تزيد عن 255 حرف حيث ان short text او text اقصي قدره استعابيه لها في الاكسيس 255 حرف
    يعد اسم جدول USysRibbons
    من جدول النظام و بمجرد حفظها لن تظهر بشكل افتراضي و يجب اظهار جداول النظام حتي
    نستطيع التحكم بها
    و اذا اردنا ان يكون شريط الريبون مصور و
    الصور داخل قاعده البيانات سنقوم باضافه جدول باسم
    tblImagesRibbons
     
    idImage
    AutoNumber
    imageRibbon
    Attachment
     
    حيث ان imageRibbon من النوع"Attachment" و ذلك

    تصميم شريط ريبون احترافي في الاكسيس - بايقونات احترافيه

    لحفظ الصور داخل القاعده البيانات

    يفضل ان تكون صيغه هذه الصور من النوع ico
    لتكون متناسقه مع شريط الريبون
    الان دعنا نتعرف علي كود xml و طريقه كتابه هذا الكود ليتناسب مع الاكسيس
    نبدا بكتابه معرف التالي
     
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
    onLoad="fncRibbon"
    loadImage="fncLoadImage">
    <ribbon startFromScratch="true">
    <tabs>
    
    <!-- نص الكود هنا -->
    </tabs>
    </ribbon>
    </customUI>
    

     

    و نلاحظ التشابه الكبير في بين لغه xml و لغه html و طريقه
    صياغه الاوامر البرمجيه

    هذا الوسم يتوافق مع اصدار اوفيس 2010 فيما فوق 
     
    نحتاج طبعا الي بعض الخبره البسيطه في قواعد
    كتابه لغات
    xml او لغه htmlلنتمكن من كتابه هذا الكود
    نقوم باضافه الوسم
    <tab id="MyTab1"
    label="اسم القائمه">
    </tab>
    
     
    لمزيد من المعلومات 
  10.  

    تصميم شريط ريبون احترافي في الاكسيس

    تصميم شريط ريبون احترافي في الاكسيس يتم اضافه شريط ريبون لاعطاء البرنامج شكل احترافي مبسط لسهوله الاستخدام من قبل المستخدم النهائي للبرنامج لذا نستعرض ( تصميم شريط ريبون احترافي في الاكسيس )
    تصميم شريط ريبون احترافي في الاكسيس
    في اصدار اوفيس 2003 كان من السهل تصميم شريط
    ادوات يشبه شكل الريبون بشكل مبسط لانه كان بنظام قوائم منسدله مبسطه
    لكن بدايه من اصدار اوفيس 2007 تطور شكل الريبون ليعطي شكل مصور بالقوائم بشكل احترافي و تم
    تعديل طريقه تصميمه ليكون بناء علي نموذج بلغه 
    xml

    لغه xml

    هي لغه تنتمي للغهHTML و هي شبيه بها في قواعد كتابه اللغه الي حد كبير و هي اختصار لـ eXtendable Markup Language و هي لغةالترميز القابلة للتوسع . XML صُمّمت لتخزين و نقل البيانات يمكن استخدامها في تصميم بعض البرامج للاندرويد او تصميم المواقع وغيرها

    دعنا الان نبدا في تصميم شريط ريبون جديد

    في البدايه نحتاج الي اضافه جدولين جدول لحفظ
    كود 
    xml و جدول لحفظ الصور المصغره التي نريد وضعها علي
    الشريط( يمكن ان هذه الصور في ملف مستقل
    خارج قاعده البيانات الا ان هذا الامر قد يؤثر ببعض المشاكل عند محاوله نقل ملف
    قاعده البيانات من جهاز الي اخر )
     
    سنقوم بانشاء الجدول الاول جدول حفظ كود xml و سنقوم بحفظه باسم USysRibbons
     
    id
    AutoNumber
    RibbonName
    Text
    RibbonXml
    Memo او Long Text
     
    حيث ان RibbonName
    يمثل اسم شريط الريبون

    RibbonXml

    يمثل مكان حفظ كود xml و تم وضعه هذا الحقل Memo او Long Text حتي يتناسب مع الاكود التي تزيد عن 255 حرف حيث ان short text او text اقصي قدره استعابيه لها في الاكسيس 255 حرف
    يعد اسم جدول USysRibbons
    من جدول النظام و بمجرد حفظها لن تظهر بشكل افتراضي و يجب اظهار جداول النظام حتي
    نستطيع التحكم بها
    و اذا اردنا ان يكون شريط الريبون مصور و
    الصور داخل قاعده البيانات سنقوم باضافه جدول باسم 
    tblImagesRibbons
     
    idImage
    AutoNumber
    imageRibbon
    Attachment
     
    حيث ان imageRibbon من النوع”Attachment” و ذلك

    لحفظ الصور داخل القاعده البيانات

    يفضل ان تكون صيغه هذه الصور من النوع ico
    لتكون متناسقه مع شريط الريبون
    الان دعنا نتعرف علي كود xml و طريقه كتابه هذا الكود ليتناسب مع الاكسيس
    نبدا بكتابه معرف التالي
     
    
     
     
    و نلاحظ التشابه الكبير في بين لغه xml و لغه html و طريقه
    صياغه الاوامر البرمجيه

    هذا الوسم يتوافق مع اصدار اوفيس 2010 فيما فوق 
     
    نحتاج طبعا الي بعض الخبره البسيطه في قواعد
    كتابه لغات 
    xml او لغه htmlلنتمكن من كتابه هذا الكود
    نقوم باضافه الوسم
    
     
    وذلك بعد الوسم tabs في كل مره نريد اضافه قائمه جديده و لاضافه
    مجموعه جديده داخل القائمه نستخدم الوسم 
    group و يكون
    بالصيغه التاليه
    
     

     

    و لاضافه الازرار داخل الجروب نستخدم الوسم button
     
    
     
     
    و نلاحظ ان المعامل id يكون لاعطاء اسم برمجي عند استدعاء هذا الزر
    برمجيا و يختلف هذا المعامل عن معامل 
    label فهو للاسم الظاهر للمستخدم النهائي بينما
    الخاصيه 
    imageتستخدم لاضافه صوره علي هذا الزر
    و المعامل 
    onActionيستخدم لحجز متغر في الكود
    البرمجي عند استدعاء الزر البرمجي او عند الضغط علي هذا الزريتم اعطاء ارقام او اسماء لكل زر بحيث لا يتكرر اي اسم حيث انه
    في حاله تكرر اي اسم سيتوقف كود 
    xml و لن يظهر شريط الريبون في التصميم

    ليظهر الكود بشكل كامل كما يلي

     
    
     
     


    يتم تخزين جميع الصور في جدول الصور الذي سبق
     

    يتم تخزين جميع الصور في جدول الصور الذي سبق
    و ان قمنا بتصميمه 
    tblImagesRibbons
     
     
    نحتاج في هذا العمل لاضافه مكتبه برمجيه التي
    تسهل علي الاكسيس استدعاء الصور من الجداول و يمكن ان نستخدم المكتبه البرمجيه 
    Microsoft office 16.0 object libraryحيث يمثل الرقم 16 لرقم اصدار الاوفيس و بالتالي سيختلف من اصدار الي
    اصدار اخر و في حاله عدم عثورنا علي هذه المكتبه البرمجيه يمكن البحث عنها داخل
    ملفات النظام و هي موجوده ضمن الملف 
    MSO.DLL
    نقوم باضافه داله برمجيه لتشغيل ازار شريط
    القوائم و نستخدم الامر البرمجي 
    Select Case و ذلك
    للمرور علي كافه ازار التشغيل في الشريط ففي حاله الضغط علي زر يقوم هذا الكود
    بتحديد الزر و تشغيل الكود الذي يخص هذا الامر
     
    Public Sub fncOnAction(control As IRibbonControl)
    
    Select Case control.Id
    
        Case "bt0"
    
        MsgBox "مرحبا"
    
            Case "bt1"
    
        MsgBox "22222222"
    
        Case Else
    
            MsgBox "عفوا لا تمتلك صلاحيه الوصل " & control.Id, vbInformation, "انتبه"
    
    End Select
    
    End Sub

     

    لمزيد من المعلومات يمكنك زياره رابط المقال

    • Sad 1
  11.  

    تحويل صيغه ملف الاكسيس برمجيا من   accdb الي accde

     
    برمجه قواعد البيانات المصممه بالاكسيس تتوفر بها العديد من وسائل حمايه التي توفرها شركه مايكروسوفت في البرنامج او التي يستطيع ان يصممها مبرمج قواعد البيانات فيسطيع المبرمج اخفاء الجداول و الاستعلامات و النماذج و وضع كلمه سر علي ملف قاعده البيانات بحيث لا يستطيع احد فتح الملف الا بعد معرفه كلمه السر او كلمه سر علي محرر الاكواد او يسطيع المصمم حمايه النماذج من الفتح في وضع التصميم من خلال ايقاف تفعيل زر Shift  او عمل صلاحيات للنماذج برمجيا بحيث لا يسطيع المستخدم الدخول الا للنماذج المسموح له بها فقط كل هذه الوسائل بالاضافه الي تغير صيغه ملف الاكسيس الي صيغه  accde    ليتم تشفير الكود البرمجي و النماذج بحيث لا يمكن التعديل ليس علي النماذج فقط انها علي قاعده البيانات كلها و كل ما يكون متاح فقط هو ادخال و استعراض البيانات بالصور التي يحددها المصمم للمستخدم النهائي لقاعده البيانات

    ما هي صيغه accde  

    صيغه accde  هي صيغه ملفات اكسيس قدمتها شركه مايكروسوفت لمزيد من الحمايه فهي صيغه محميه غير قابله للتعديل يتم فيها تشفير الكود و النماذج و جميع وحدات الماكرو

    شروط استخدام هذه الصيغه accde

    لتحويل ملف الاكسيس الي هذه الصيغه لابد من ان يكون الكود البرمجي سليم 100% و لا يوجد به اي مشاكل برمجيه و ذلك لعده اسباب اولها انه لايمكن الرجوع مره اخري الي الصيغه الاسابقه حيث يعتبر هذه الضيغه صيغه نهائيه يمكن ان يستخدمها مبرمجي قواعد البيانات حتي يتم حمايه الاكواد البرمجيه و لا يسطيع اي مبرمج اخر التعديل علي الكود مره اخري لانه اصبح مشفر و لا يمكن اضافه نماذج او استرداد نماذج من و الي هذا الملف مره اخري
     
    كيف نستطيع تحويل اي ملف اكسيس عادي الي ملف اكسيس من نوع صيغه التشفير accde 
     
    اولا عليك التاكد من الكود البرمجي و التاكد من صلاحيته و مراجعته و يتم ذلك من خلال فتح محرر الاكواد  ثم الضغط علي debug   و من خلال هذه القائمه الامر compile 1 ليتم عمل مراجعه للكود فاذا اكتشفت اي مشكله في الكود عليه علاج هذه المشكله حتي تستطيع ان تكمل باقي الخطوات
    بعد التاكد من سلامه الكود البرمجي قم باغلاق محرر الاكواد
    انتقل الي شاشه الاكسيس وافتح القائمه File   من خلال هذه القائمه اختر Save as
    ثم اختر من خلال save Datebase as   اختر الصيغه المشفره Mack Accde
    كل هذه الخطوات تمت بشكل يدوي لكن كيف يتم ذلك بالكود
     
    %25D8%25AA%25D8%25AD%25D9%2588%25D9%258A%25D9%2584%2B%25D8%25B5%25D9%258A%25D8%25BA%25D9%2587%2B%25D9%2585%25D9%2584%25D9%2581%2B%25D8%25A7%25D9%2584%25D8%25A7%25D9%2583%25D8%25B3%25D9%258A%25D8%25B3%2B%25D8%25A8%25D8%25B1%25D9%2585%25D8%25AC%25D9%258A%25D8%25A7%2B%25D9%2585%25D9%2586%2B%2B%2Baccdb%2B%25D8%25A7%25D9%2584%25D9%258A%2Baccde2.jpg


     

    فقد نحتاج الي عمل كل ذلك بالكود خاصا اذا كنا نعمل علي جهاز المستخدم النهائي لقاعده البيانات و نريد ان ننجز عملنا في خطواه واحده بضغطه واحده و قد نحتاج الي عمل ذلك علي جهاز العميل حيث اننا قد نحتاج الي الدخول الي وضع التصميم علي جهاز العميل قبل تشفير قاعده البيانات مثلا لاضافه مكتبه برمجيه او اي شئ من هذا القبيل
    علي افتراض اننا قد وصلنا الي مرحله مراجعه الكود قبل نقل ملف قاعده البيانات الي جهاز المستخدم النهائي و تاكدنا من سلامه الكود البرمجي
     
     
    كل ما علينا القيام به هو اضافه داله برمجيه الي قاعده البيانات لتقوم بتحويل صيغه الملف و لكن لن نستطيع عمل ذلك من نفس الملف حيث اننا علي جهاز المستخدم النهائي نحتاج الي حذف ملف قاعده البيانات الاساسي بعد تحويل الصيغه لضمان عدم تعديل الكود فلن يستطيع الاكسيس حذف ملف مفتوح فلذلك نستخدم ملف قاعده بيانات اخري ليمكننا من تحويل اي قاعده بيانات و نقوم باضافه هذه الداله في مديول جديد
    و يمكن  ربط هذه الداله بزر في نموذج بحيث بمجرد الضغط عليه يتم تحويل قاعده البيانات المحدده بالكود برمجيا

    لتحميل الكود المستخدم

     

    • Like 1
    • Thanks 2
  12. تصميم شريط ريبون احترافي في الاكسيس

    يتم اضافه شريط ريبون الي البرامج المصممه بالاكسيس لاعطائها شكل احترافي مبسط لسهوله الاستخدام من قبل المستخدم النهائي للبرنامج ليسهل عليه البحث علي الادوات داخل البرنامج
     
    في اصدار اوفيس 2003 كان من السهل تصميم شريط ادوات يشبه شكل الريبون بشكل مبسط لانه كان بنظام قوائم منسدله مبسطه لكن بدايه من اصدار اوفيس 2007 تطور شكل الريبون ليعطي شكل مصور بالقوائم بشكل احترافي و تم تعديل طريقه تصميمه ليكون بناء علي نموذج بلغه xml
    لغه xml    هي لغه تنتمي للغه  HTML و هي شبيه بها في قواعد كتابه اللغه الي حد كبير  و هي اختصار لـ eXtendable Markup Language و هي لغة الترميز القابلة للتوسع . XML صُمّمت لتخزين و نقل البيانات يمكن استخدامها في تصميم بعض البرامج للاندرويد او تصميم المواقع و غيرها
    دعنا الان نبدا في تصميم شريط ريبون جديد
     
    لمشاهده المقال بالكامل قم بزياره موقع المحاسب العربي
     
    في البدايه نحتاج الي اضافه جدولين جدول لحفظ كود xml  و جدول لحفظ الصور المصغره التي نريد وضعها علي الشريط  ( يمكن ان هذه الصور في ملف مستقل خارج قاعده البيانات الا ان هذا الامر قد يؤثر ببعض المشاكل عند محاوله نقل ملف قاعده البيانات من جهاز الي اخر )
    سنقوم بانشاء الجدول الاول جدول حفظ كود xml  و سنقوم بحفظه باسم USysRibbons
     
    id
    AutoNumber
    RibbonName
    Text
    RibbonXml
    Memo  او Long Text
     
    حيث ان RibbonName يمثل اسم شريط الريبون
    RibbonXml يمثل مكان حفظ كود xml  و تم وضعه هذا الحقل Memo  او Long Text   حتي يتناسب مع الاكود التي تزيد عن 255 حرف حيث ان short text او text  اقصي قدره استعابيه لها في الاكسيس 255 حرف
     يعد اسم جدول USysRibbons من جدول النظام و بمجرد حفظها لن تظهر بشكل افتراضي و يجب اظهار جداول النظام حتي نستطيع التحكم بها
    و اذا اردنا ان يكون شريط الريبون مصور و الصور داخل قاعده البيانات سنقوم باضافه جدول باسم tblImagesRibbons
     
    idImage
    AutoNumber
    imageRibbon
    Attachment
     
    حيث ان imageRibbon من النوع  "Attachment" و ذلك لحفظ الصور داخل القاعده البياناتيفضل ان تكون صيغه هذه الصور من النوع ico لتكون متناسقه مع شريط الريبون
    الان دعنا نتعرف علي كود xml   و طريقه كتابه هذا الكود ليتناسب مع الاكسيس
    نبدا بكتابه معرف التالي
     
    <customui loadimage="fncLoadImage" onload="fncRibbon" xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    
    <ribbon startfromscratch="true">
    
    <tabs>
    
     
    
    <!-- نص الكود هنا -->
    
    </tabs>
    
    </ribbon>
    
    </customui>
    
     
    و نلاحظ التشابه الكبير في بين لغه xml  و لغه html و طريقه صياغه الاوامر البرمجيه هذا الوسم يتوافق مع اصدار اوفيس 2010 فيما فوق 
    نحتاج طبعا الي بعض الخبره البسيطه في قواعد كتابه لغات xml  او لغه html لنتمكن من كتابه هذا الكود
    نقوم باضافه الوسم
     
      <tab id="MyTab1" label="اسم القائمه">
    
      </tab>
    

     
     و ذلك بعد الوسم tabs  في كل مره نريد اضافه قائمه جديده و لاضافه مجموعه جديده داخل القائمه نستخدم الوسم group و يكون بالصيغه التاليه
     
    <group id="MyGroup1" label="اسم المجموعه">
    
     </group>
    
    و لاضافه الازرار داخل الجروب نستخدم الوسم  button
     
    <button id="bt1" image="1.ico" label="الاسم الظاهر للزر" onaction="fncOnAction" size="large"></button>
    
     
    و نلاحظ ان المعامل id   يكون لاعطاء اسم برمجي عند استدعاء هذا الزر برمجيا و يختلف هذا المعامل عن معامل label  فهو للاسم الظاهر للمستخدم النهائي بينما الخاصيه image تستخدم لاضافه صوره علي هذا الزر  و المعامل onAction  يستخدم لحجز متغر في الكود البرمجي عند استدعاء الزر البرمجي او عند الضغط علي هذا الزر  يتم اعطاء ارقام  او اسماء لكل زر بحيث لا يتكرر اي اسم حيث انه في حاله تكرر اي اسم سيتوقف كود xml  و لن يظهر شريط الريبون في التصميم
     
    <customui loadimage="fncLoadImage" onload="fncRibbon" xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon startfromscratch="true">
    
     <tabs>
    
              <tab id="MyTab1" label="الاعدادات">
    
                <group id="MyGroup0" label="اعدادات">
    
                   <button id="bt00" image="00.ico" label="اعدادات النسخ الاحتياطي" onaction="fncOnAction" size="large">
    
                   </button></group>
    
             </tab>
    
    </tabs>
    </ribbon>
    </customui>
    
     

    يتم تخزين جميع الصور في جدول الصور الذي سبق و ان قمنا بتصميمه tblImagesRibbons
     نحتاج في هذا العمل لاضافه مكتبه برمجيه التي تسهل علي الاكسيس استدعاء الصور من الجداول و يمكن ان نستخدم المكتبه البرمجيه Microsoft office 16.0 object library حيث يمثل الرقم 16 لرقم اصدار الاوفيس و بالتالي سيختلف من اصدار الي اصدار اخر و في حاله عدم عثورنا علي هذه المكتبه البرمجيه يمكن البحث عنها داخل ملفات النظام و هي موجوده ضمن الملف MSO.DLL
    نقوم باضافه داله برمجيه لتشغيل ازار شريط القوائم و نستخدم الامر البرمجي Select Case و ذلك للمرور علي كافه ازار التشغيل في الشريط ففي حاله الضغط علي زر يقوم هذا الكود بتحديد الزر و تشغيل الكود الذي يخص هذا الامر
     
    Public Sub fncOnAction(control As IRibbonControl)
    
    Select Case control.Id
    
        Case "bt0"
    
        MsgBox "مرحبا"
    
            Case "bt1"
    
        MsgBox "22222222"
    
        Case Else
    
            MsgBox "عفوا لا تمتلك صلاحيه الوصل " & control.Id, vbInformation, "انتبه"
    
    End Select
    
    End Sub
    
     
    يمكن استخدام الداله dlookup  لاستخراج الصور من الجدول لاضافتها في الشريط 
    يجب تشغيل xml  بمجرد تشغيل قاعده البيانات و اذا قمنا باي تعديل علي هذا الكود لن يظهر تاثير هذا التاثير الا عند اعاده فتح ملف قاعده البيانات من جديد
     
     
    لمشاهده المقال بالكامل قم بزياره موقع المحاسب العربي
    • Like 1
    • Thanks 1
  13. حذف باسورد من شيت الاكسيل بدون فتحه بطريقه احترافيه بدون فتح الملف الاصلي و بدون برامج
    بهذه الطريقه الاحترافيه و بدون فتح شيت العمل تستطيع الاصلي تستطيع الغاء الباسورد في اقل من 5 ثواني

    https://youtu.be/MM9ax7t2k6E

     

     

     

     


  14. تحويل pdf الي اكسيل و العكس بدون برامج | PDF to Excel Converter 
    نتناول في هذا الدرس طريقه احترافيه في تحويل ملف pdf الي اكسيل بدون برامج و تدعم اللغه العربيه حيث ان معظم برامج تحويل pdf لا تدعم اللغه العربيه 

     

    https://www.youtube.com/watch?v=xS8dN6XSIbM

  15. الحل البديل لاستخدام Merge & Center

    نعاني كثيرا من مشاكل استخدام Merge & Center
    اذا حاولنا نقل او نسح الخلايا لكن في هذا الدرس سنعرض الحل الامثل لهذه المشكله و كيف يمكن توظيف هذا الحل ليكون اكثر عمليه و سهوله باستخدام الماكرو

    https://youtu.be/iNha7pbBxkk

  16. فصل جدول الي عده شيتات و تحويلها الي عده ملفات مستقله


    نتناول في هذا الدرس فكره فصل جدول الي عده شيتات و تحويلها الي عده ملفات مستقله باستخدام الماكرو بدون مجهود و بالتطبيق العملي علي فكره كشف حساب عميل او مورد و يمكن استخدام الفكره في استخدامات اخري 

    http:// https://youtu.be/VomGKaX7GOY

     


     

  17.  

    الحل البديل لاستخدام Merge & Center

    https://youtu.be/iNha7pbBxkk

     

     

    نعاني كثيرا من مشاكل استخدام Merge & Center
    اذا حاولنا نقل او نسح الخلايا لكن في هذا الدرس سنعرض الحل الامثل لهذه المشكله و كيف يمكن توظيف هذا الحل ليكون اكثر عمليه و سهوله باستخدام الماكرو

×
×
  • اضف...

Important Information