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

نجوم المشاركات

  1. Ali Mohamed Ali

    Ali Mohamed Ali

    المشرفين السابقين


    • نقاط

      20

    • Posts

      11643


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      17

    • Posts

      9998


  3. Moosak

    Moosak

    أوفيسنا


    • نقاط

      4

    • Posts

      2247


  4. Barna

    Barna

    الخبراء


    • نقاط

      3

    • Posts

      1073


Popular Content

Showing content with the highest reputation on 08/31/22 in all areas

  1. . . يا طويل العمر : لما النموذج يكون مفتوح ، فتقدر ترسل قيمة الحقول me.GE و me.SX الى الكود لفتح التقرير بمعيار ، ولكن ، لما تغلق النموذج ، فلا توجد قيم للحقول me.GE و me.SX ، وعليه ، لا تستطيع استعمالهم في المعيار لفتح التقرير. جعفر
    2 points
  2. عندما تجتمع العقول يظهر الابداع ... وقد لاحظت ان الابداع في الاكسس يتجلى في شقين الأمر الاول : هو التفكير المنطقي لتحديد الحاجة من برنامج الاكسس الأمر الثاني : هو المهارة في تحويل الافكار إلى نماذج وتطبيق الكودات المناسبة لإظهار الأفكار كتطبيق مع مراعاة جمالية التصميم كعامل راحة نفسية للمستخدم
    2 points
  3. 2 points
  4. السلام عليكم 🙂 عمل جميل اخوي موسى 🙂 والكاسبريكاي ما اعترض على شيء 🙂 جعفر
    2 points
  5. نصيحة حتى تجد تفاعل اكثر تناول كل موضوع بجزئية وانت حقيقة تطلب تصميم برنامج كامل من خلال طلبك لعدة اكواد ولا اعتقد ان احد لديه الوقت لتصميم برنامج كامل لانه في النهاية منتدى تعليمي .
    2 points
  6. لا.. يمكنك تغيير اسم النموذج إلا إذا كان مغلقاً.. استخدم عوضاً عن ذلك Screen.ActiveForm
    2 points
  7. تفضل ... اكتب الكود المطلوب ثم دبل كلك على مربع النص وانظر ..... test (13).accdb
    2 points
  8. السلام عليكم ورحمة الله وبركاته حياك الله اخي الكريم في بداية يجب عليك اعتماد قواعد المحاسبة في اعداد برنامج محاسبي لتستطيع الوصول الى ما تريده في التقارير يجب عليك اعداد جدولين لسند القيد بحيث عندما تقوم باي عملية يقوم البرنامج بكتابة القيد المحاسبي المزدوج تلقائيا ، ومن ثم من جدولي سند القيد تستطيع استخراج التقرير الذي طلبته اسمح لي ان اقدم لك بعض النصائح التي سوف تحصل على افضل مساعدة من خلالها في المنتدى 1- لا تقوم باخفاء نوافذ اكسس قبل ارسال المرفق 2- لا تضع كلمة مرور للبرنامج عند الفتح حتى تضع اسم المستخدم وكلمة المرور في المنتدى 3- عندما ارفقت الصورة لم يظهر اسم التقرير الذي تريد التعديل عليه ، وعندما فتحت المرفق وجدت الكثير من التقارير و لم اعرف اي تقرير تريد التعديل عليه (لا تشتت من سيجيبك بين كائنات المرفق) 4- الكائنات الغير مرتبطة في سؤال يفضل عدم رفعها او اخفاؤها
    2 points
  9. واعمل compile للبرنامج قبل ان تعطية المستخدمين : . وانصحك استخدام برنامجي التالي والذي لا استغنى عنه لعدة مرات في اليوم ، والذي يقوم بالعمل اعلاه ، بالاضافة الى العديد من التصفيات ، ويخزن لك نسخة احتياطية : جعفر
    2 points
  10. كذاك تبغاه الأخ سعيد ؟ 🙂 مدة عمل الموظف.rar
    2 points
  11. بسم الله الرحمن الرحيم.. السلام عليكم ورحمة الله وبركاته.. بعد طول غياب عن الساحة بسبب ضروف الحياة والعمل.. اقدم لكم اداة صغيرة من برمجتي بلغة Visual Studio .NET تقوم بالتقاط الصور كاميرا الويب او اي كاميرا متصلة بالكومبيوتر ومن ثم خزنها في الجهاز الاداة قمت بربطها مع الاكسس، بحيث تقوم بتمرير براميتر من الاكسس الى الاداة وهذا البراميتر متمثل بـ مسار حفظ الصورة + واسم الصورة + صيغتها مثال: Dim SavedPath As String SavedPath = """" & CurrentProject.Path & "\Capture.png" & """" الاداة تستخدم مكتبات AForge للتحكم بالكاميرات. صورة الاداة: بمجرد ان تضغط زر Open Camera من الاكسس ستعمل الاداة مباشرة قم بترتيب الكاميرا الخاصة بك لاخذ لقطة مناسبة واضغط على الزر Snapshot ثم اضغط على الز save لحفظ الصورة. الاداة اخذت مني وقت 8 ساعات في البرمجة لذلك لا تنسوني ووالدي من صالح دعائكم. تم بحمد الله. SEMO_webCam.rar كلمات مفتاحية: التقاط صورة من الكاميرا، حفظ الصورة من الكاميرا، جلب الصورة من كاميرا الويب، جلب الصورة من الكاميرا وحفظها في قاعدة البيانات، حفظ الصور بقاعدة البيانات، خزن الصورة من الكاميرا كاميرا ويب قاعدة بيانات اكسس، اكسس كاميرا الويب، اكسس كاميرا، جلب الصورة من الكاميرا
    1 point
  12. بسم الله الرحمن الرحيم :: (( مكتبة الأكواد الخاصة )) :: وهي عبارة عن حافظة شخصية للأكواد والملفات الخاصة بمبرمج الأكسس أو أي مبرمج آخر .. البرنامج به كم لا بأس به من الأكواد التي كنت أستخدمها في تصميم البرامج، بعضها من إبداعات الإخوة في الموقع وبعضها من مصادر أخرى.. من مميزات البرنامج خاصية البحث السريع للوصول للأكواد بسهولة .. وفيه تقسيمات للأكواد المجربة وغير المجربة .. وكذلك يمكن الإشارة للمرجع الذي تم أخذ الأكواد منه .. وأيضا يمكن حفظ الملفات المرتبطة والأمثلة في مجلدات قرينة بالبرنامج 🙂 البرنامج مفتوح المصدر ويمكن لك أن تغير فيه ما تشاء ليلبي احتياجاتك الشخصية .. :: ما الجديد في النسخة الثانية :: تم زيادة عدد الأكواد إلى أكثر من 170 كود VBA وغيرها .. ( كنز حقيقي 🙂 ) الكثير من الأكواد التي تم اختبارها وإنتاجها بجهود الإخوة في المنتدى تم إدراج العديد من المرفقات المصاحبة لبعض الأكواد كأمثلة حية . تحسينات بسيطة على تصميم المكتبة. إبحث عن ما تريده لعلك تجده في مكتبتنا العامرة :: للتحميل :: مباشرة من مكتبة الموقع 🙂 : مهم جدا :: تأكد من فك ضغط الملف بعد التحميل لتستطيع فتح المرفقات :: 🌷 :: تحياتي :: 🌷 🙂 :: ولا تنسوني من صالح دعواتكم :: 🙂
    1 point
  13. السلام عليكم ورحمه الله وبركاته اتفضل اخى الفاضل @مدحت توفيق بالتوفيق 29_1.accdb
    1 point
  14. لماذا لا تحدد شيء واحد فقط بجعلها احمد او بوضع رقم معرف لكل اسم وبالتالي تبحث برقم معرف وليس اسم كما تعلم الاكسيل يتعامل مع الاحرف الانجليزية بالدرجة الاولى وبالتالي ان تجعل ثلاثة احرف مختلفة تظهر لنفس الاسم في كل الاحوال من الصعب على الاكسيل التمييز بينهما ولكن لا اجزم لك انه غير ممكن فقط واصل البحث في الانترنت قد تجد ضالتك
    1 point
  15. المشكلة في المعايير في الاستعلام الخطأ في استعلامك : 1- لم تضع معيار لتصفية (اصغر من) من تاريخ 2- وجود معيار تصفية من تاريخ الى تاريخ وهذا لا معنى له لاننا نريد جميع التواريخ السابقة علما انه يمكنك التصفية حسب السنة المالية او اتركها خالية ليظهر الجميع T3Q -5.rar
    1 point
  16. اخى الفاضل @المشرفي لابد من اختيار نوع التحويل المطلوب ان كان من هجرى الى ميلادى او العكس لكي يظهر الايام والشهر والسنه عندما لا يتم اختيار نوع التحويل تظهر فارغه
    1 point
  17. أشكرك كثير استاذ وأشكر كذلك كل الاساتذة الذين ساهموا بمشاركاتتهم في هذا الموضوع صحيح هو المطلوب
    1 point
  18. الاخ العزيز ابوخليل جزاك الله خير الجزاء ان ماتفضلت به هو المطلوب فشكرا لك ولكل من تفضل بالمساهمة
    1 point
  19. انا عدلته لك في المثال المرفق كان سبب عدم ظهوره هو المعيار الموجود في السنة المالية ، بينما الاستعلامين الآخرين غير موجود T3Q -4.accdb
    1 point
  20. جزاكم الله خيراً أستاذنا الكريم @بن علية حاجي ، أحسنت ، نحن في بحر زاخر مليء باللآلئ الثمينة تكمن في ثنايا صخورها وما على الغواص البارع إلا استخراجها ، قد تختلف الوسائل والسبل إلى ذلك لكن المهم النتائج...بارك الله بكم وبعلمكم. مع فائق تحياتي لشخصكم الكريم
    1 point
  21. السلام عليكم ويمكن استعمال الملف المرفق بإضافة عمود مساعد E للترقيم التصاعدي لكل المدارس التي لم يتم زيارتها... School.xlsx
    1 point
  22. أخي الكريم تم عمل المطلوب باستخدام تنسيق الخلايا أرجو أن يفيدكم نسألكم الدعاء لنا قائمة.xlsx
    1 point
  23. السلام عليكم مشاركة مع اساتذتى العظماء هذه افكارى المتواضعة هذه الاكواد داخل موديول Public clnfrmName As New Collection Public frm As Form Public intCounterOpenForm As Integer Dim xPos As Integer Dim yPos As Integer Dim lngCount As Long Dim lngI As Long Function OpenAForm() Set frm = New Form_frmInvoice frm.Visible = True intCounterOpenForm = intCounterOpenForm + 1 frm.Caption = frm.Name & "(" & intCounterOpenForm & ")" clnfrmName.Add Item:=frm, Key:=CStr(frm.Name & "(" & intCounterOpenForm & ")") xPos = xPos + 300 yPos = yPos + 300 frm.Move xPos, yPos Set frm = Nothing End Function Function CloseAllForm() lngCount = clnfrmName.Count For lngI = 1 To lngCount clnfrmName.Remove 1 Next intCounterOpenForm = 0 xPos = 0 yPos = 0 End Function كنت اتمنى تطوير اخراج الفكرة بشكل عملى اكثر حتى لا يرتبط الكود باسم النموذج على ان يكون كود مرن ويتم استدعاءه بالشكل التالى OpenAForm("اسم النموذج المراد فتحه اكثر من مرة") ولكن عجزت بصراحة فى هذا السطر Set frm = New Form_frmInvoice Open Form more than once.accdb
    1 point
  24. اعذرني مش قادر افهم طلبك تعديل ايه انت عاوزه ؟
    1 point
  25. تفضل استاذ منير طبعاً بعد اذن استاذنا الكبير ابراهيم .. فالكود يعمل بكل كفاءة وان حدث اى مشكلة معك فبسببك انت لأنك لم تضع الكود كما يجب ان يكون بالملف وشوف بنفسك حتى يتم اغلاق المشاركة Private Sub CommandButton1_Click() arr = Array("B5", "C5", "F5", "C8", "E9", "G10") tmp = Array(TextBox1.Value, TextBox4.Value, TextBox3.Value, _ TextBox2.Value, TextBox5.Value, TextBox6.Value) For i = LBound(arr) To UBound(arr) Range(arr(i)) = tmp(i) Next For Each Ctrl In Me.Controls If TypeName(Ctrl) = "TextBox" Then Ctrl.Value = "" End If Next Ctrl End Sub ترحيل إلى خانات متفرقة.xlsb
    1 point
  26. وعليكم السلام-جرب هذا =IF(INT(C2)<>C2,C2+1.5,C2) 1اضافة عدد للكسر.xlsx
    1 point
  27. أكرمك الله استاذ مجدى وأحسن الله اليك
    1 point
  28. بارك الله فيك استاذ مجدى وزادك الله من فضله
    1 point
  29. وعليكم السلام -يمكنك ذلك بجعل التنسيق هكذا [$-,2000000]0.00_);[Red](0.00) TEST1.xlsx
    1 point
  30. يمكنك ذلك بهذه المعادلة =COUNTIFS($C:$C,J5,B:B,"<>"&"") Book2.xlsx
    1 point
  31. السلام عليكم ورحمة الله وبركاته ***** لا تستخدم هاتفك الشخصي ، فالبرنامج سيحذف جميع الصور التي في المجلد sdcard/DCIM/Camera ***** هذا جزء رقم 1 من مشروع متكامل لتصوير الاشخاص والمستندات بإستخدام الكاميرات والماسح الضوئي (Scanner) ، والمشروع يتكون من: يعني مو بس البرامج الكبيرة تستخدم هذه التقنيات ، وإحنا بعد وهذه الاجهزة ستكون لتصوير الاشخاص والمستندات ، ان شاء الله التصوير عن طريق كاميرا هاتف اندرويد ، وتمت التجربة على هاتف اندرويد Galaxy S3 بنظام 4.4 و Huawei Mate 7 بنظام اندرويد 6 ، التصوير عن طريق WebCam ، وتمت التجربة على Logitec HD c615 ، التصوير عن طريق الكامرات الكبيرة من نوع DSLR ، وتمت التجربة على Nikon D5100 او Canon Mark iii ، تطويع الماسح الضوئي لتصوير المستند/المستندات ، وحفظ المستندات الى اي مجلد ، بصيغة pdf او jpg العمل غير مكتمل 100% ، والخطوات التي على قائمة العمل: 1. إعطاء المستخدم الآلية لتحديد مكان قطع الصورة (لمرة واحدة طبعا) ، وحذف الزوائد ، مثلا: الخلفية الثابته: . تصوير الشخص . قطع الصورة وحذف الزوائد (برمجيا) . وكذلك يمكن الاستفادة منه في تصوير مستندات A4 او A5 ، وقطع الصورة وحذف الزوائد (طبعا يكون هناك زر للـ A4 وزر آخر للـ A5) 2. ماذا لو اردت حفظ صورة / مستند ، وكانت هناك صورة سابقا بنفس الاسم؟ سيكون للمستخدم 3 اختيارات: أ- احذف الصورة القديمة واستبدلها بالصورة الجديدة ، ب- اعطي الصورة الجديدة الرقم التسلسلي التالي ، حسب آخر رقم موجود للصورة ، مثلا: الصورة الموجودة سابقا 1.jpg او Inward_2017_05_06.jpg والصورة الجديدة ستصبح 1_001.jpg او Inward_2017_05_06_001.jpg هذه العملية تنفع للأرشفة ج- دائما اجعل الصورة الجديدة بدون ترتيب ، واجعل الصورة السابقة تأخذ آخر رقم ، مثلا الصورة الموجودة سابقا 1.jpg او Inward_2017_05_06.jpg وآخر صورة في المجلد لنفس الصورة هي 1_001.jpg او Inward_2017_05_06_001.jpg عليه سنأخذ آخر صورة موجودة في المجلد ونعطيها الرقم التسلسلي التالي 1_002.jpg او Inward_2017_05_06_002.jpg والصورة الجديدة التي سنلتقطها ستكون 1.jpg او Inward_2017_05_06.jpg هذه العملية تنفع لبرامجنا والتي تستعمل اسم الصورة ، والذي يكون رقم الموظف مثلا وبقية الصور تسلسلها حسب القِدم . 3- حفظ الصور افقيا او عموديا. والآن الى برنامجنا التصوير عن طريق كاميرا هاتف اندرويد اولا: تهيئة الهاتف (البرنامج المرفق فيه المادة رقم2 ، ولا يوجد داعي لإنزاله) : رجاء اتباع الخطوات التالية ليكون الهاتف مهيأ للإتصال بالبرنامج ، ويجب ان يكون الهاتف موصل بالكمبيوتر عن طريق USB: 1- يجب ان يكون الكمبيوتر متعرف على هاتفك ، ويمكنك انزال هذا التعريف من شركة هاتفك ، او من الرابط التالي ، رقم 1 : http://adbshell.com/downloads . وبرنامجنا محتاج الى البرنامج الذي في الرابط اعلاه ، رقم 2 ، والذي لا يحتاج الى تنصيب (ونضع محتواه في المجلد Android_Mobile كما في الصور في الاسفل) ، او اذا اردت البرنامج اعلاه من مصدر آخر وبه SDK الاندرويد (اي جميع برامج التحكم في جزئياته) ، فيمكن تنزيله من الرابط: https://dl.google.com/android/repository/platform-tools-latest-windows.zip 2- يجب ان يكون هاتفك في وضع Developer Options ، كما في الصورة: . واذا لم يكن ، فعليك اتباع الخطوات التالية لعمله : من الاعدادات . وسترى . ثم انقر على المربع الاحمر ، ليأخذك الى الصورة التاليه ، واختار المربعين بعلامة صح . وعند ربط الهاتف بالكمبيوتر ، اختار من الهاتف . وعند تشغيل البرنامج ، سيطلب منك الهاتف الموافقه على السماح بالكمبيوتر التحكم فيه ، فاختار السماح ، 1 ثم 2 . الآن هاتفك مهيأ للتحكم فيه من خلال البرنامج ، ورجاء اجعل الهاتف في وضع الاغلاق (حيث تكون الشاشة سوداء) ، 3- مجلد برنامجك يجب ان يكون بهذه الطريقة . البرنامج مفتوح المصدر ، وتحتاج لمسك مفتاح Shift عند النقر المزدوج على ايقونة البرنامج لفتحه ورؤية الكود ، - البرنامج يفتح على النموذج frm_Main حيث تختار اسم الشخص او رقمه ، . وعند النقر على تفاصيل الموظف او تفاصيل الموظفين ، يفتح النموذج frm_Names ، وتلقائيا سترى ان الهاتف اشتغل ، وعند الخروج من النموذج سوف يغلق الهاتف ، في النموذج frm_Names ، عند النقر على هذه الايقونة سيتم التصوير . وخلال 8-9 ثوان ، سترى الصورة داخل النموذج ، ان شاء الله ويمكنك جعل الهاتف يأخذ الصورة بالفلاش ، من اعدادات الهاتف نفسه ، هذا كود البرنامج بطريقين ، الطريقة الاولى والتي تأخذ الوقت الاقل ، وتركت الطريقة الثانيه الابسط هنا كذلك للذي يريد اللعب فيه وتغييره: Private Sub Form_Load() Call BE_or_FE 'Adb location App_Location = BE_Path & "Camera_App\Android_Mobile\Adb.exe" 'turn on the Device cmmd = " shell input keyevent KEYCODE_POWER" Call Shell(App_Location & cmmd, vbHidden) End Sub Private Sub Form_Close() Call BE_or_FE 'Adb location App_Location = BE_Path & "Camera_App\Android_Mobile\Adb.exe" 'turn off the Device cmmd = " shell input keyevent KEYCODE_POWER" Call Shell(App_Location & cmmd, vbHidden) End Sub Private Sub cmd_Android_Camera_Click() On Error GoTo err_cmd_Android_Camera_Click 'KEYCODE_POWER = 26 'KEYCODE_CAMERA = 27 'KEYCODE_BACK = 4 'KEYCODE_HOME = 3 Dim cmmd As String 'how long does it take to take the picture istart = Timer 'set BE_Path Call BE_or_FE 'Adb location App_Location = BE_Path & "Camera_App\Android_Mobile\Adb.exe" Save_images_to = BE_Path & "images\" 'image capture mode cmmd1 = App_Location & " shell " & Chr(34) & "am start -a android.media.action.STILL_IMAGE_CAMERA" & "; sleep 1; " cmmd2 = "input keyevent KEYCODE_CAMERA" & "; sleep 2; " cmmd3 = "input keyevent KEYCODE_BACK" & ";" & Chr(34) cmmd = cmmd1 & cmmd2 & cmmd3 'Debug.Print cmmd Call ShellWait(cmmd, vbHidden) 'transfer the image to the PC cmmd = App_Location & " pull /sdcard/DCIM/Camera/ " & Save_images_to & "temp\" Call Shell(cmmd, vbHidden) 'Delete the pictures from the mobile camera folder cmmd = App_Location & " shell rm /sdcard/DCIM/Camera/*.jpg" Call Shell(cmmd, vbHidden) PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'Delete the existing Employee_ID Kill Save_images_to & Me.Employee_ID & ".jpg" 'move the picture from folder temp and change its name Dim StrFile As String StrFile = Dir(Save_images_to & "temp\") Do While Len(StrFile) > 0 Mobile_Pic = StrFile StrFile = Dir Loop Name Save_images_to & "temp\" & Mobile_Pic As Save_images_to & Me.Employee_ID & ".jpg" PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'show the picture in the Form Me.Pic.Picture = Save_images_to & Me.Employee_ID & ".jpg" 'Delete the temp folder RmDir Save_images_to & "temp\" 'MsgBox Timer - istart Exit Sub to_Here: 'image capture mode cmmd = " shell " & Chr(34) & "am start -a android.media.action.STILL_IMAGE_CAMERA" & Chr(34) Call ShellWait(App_Location & cmmd, vbHidden) 'Dim PauseTime, Start PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'take a picture cmmd = " shell " & Chr(34) & "input keyevent KEYCODE_CAMERA" & Chr(34) Call ShellWait(App_Location & cmmd, vbHidden) PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'exit the image capture mod cmmd = " shell " & Chr(34) & "input keyevent KEYCODE_BACK" & Chr(34) Call ShellWait(App_Location & cmmd, vbHidden) Call ShellWait(App_Location & cmmd, vbHidden) PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'transfer the image to then PC cmmd = " pull /sdcard/DCIM/Camera/ " & Save_images_to & "\temp" Call ShellWait(App_Location & cmmd, vbHidden) PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'Delete the image from the camera cmmd = " shell rm /sdcard/DCIM/Camera/*.jpg" Call Shell(App_Location & cmmd, vbHidden) PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'Delete the existing Employee_ID Kill Save_images_to & Me.Employee_ID & ".jpg" 'move the picture from folder temp and change its name 'Dim StrFile As String StrFile = Dir(Save_images_to & "temp\") Do While Len(StrFile) > 0 Mobile_Pic = StrFile StrFile = Dir Loop Name Save_images_to & "temp\" & Mobile_Pic As Save_images_to & Me.Employee_ID & ".jpg" PauseTime = 1 Start = Timer Do While Timer < Start + PauseTime DoEvents Loop 'Delete the temp folder RmDir Save_images_to & "temp\" 'show the picture in the Form Me.Pic.Picture = Save_images_to & Me.Employee_ID & ".jpg" 'MsgBox Timer - istart Exit_cmd_Android_Camera_Click: Exit Sub err_cmd_Android_Camera_Click: If Err.Number = 53 Then 'No picture to delete Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub والبرنامج حاليا للمتطوعين الذين يعرفون ان البرنامج لا يحتوي على اي ميزات غير التصوير وحفظ الصور في المجلد Images ، وربط الصور برقم الموظف ورجاء اخبرونا عن نتائج تجربتكم وملاحظة هامة: ***** لا تستخدم هاتفك الشخصي ، فالبرنامج سيحذف جميع الصور التي في المجلد sdcard/DCIM/Camera ***** جعفر Camera_Scanner.zip
    1 point
  32. السلام عليكم ورحمة الله وبركاته الجزء الاول تم مناقشته هنا هذا الجزء رقم 2 من مشروع متكامل لتصوير الاشخاص والمستندات بإستخدام الكاميرات والماسح الضوئي (Scanner) ، والمشروع يتكون من: يعني مو بس البرامج الكبيرة تستخدم هذه التقنيات ، وإحنا بعد وهذه الاجهزة ستكون لتصوير الاشخاص والمستندات ، ان شاء الله التصوير عن طريق كاميرا هاتف اندرويد ، وتمت التجربة على هاتف اندرويد Galaxy S3 بنظام 4.4 و Huawei Mate 7 بنظام اندرويد 6 ، التصوير عن طريق WebCam ، وتمت التجربة على Logitec HD c615 ، و Creative Live (VF0610)e ، التصوير عن طريق الكامرات الكبيرة من نوع DSLR ، وتمت التجربة على Nikon D5100 او Canon Mark iii ، تطويع الماسح الضوئي لتصوير المستند/المستندات ، وحفظ المستندات الى اي مجلد ، بصيغة pdf او jpg والعمل غير مكتمل 100% ، هذا البرنامج يشتمل على الرقم 1 كذلك (وهو نفس نسخة الرابط اعلاه وبدون تغيير) ، هذا البرنامج يعتمد على البرنامج الخارجي (RobotEyez.exe) ، وهذا رابطه: https://batchloaf.wordpress.com/2011/11/27/ultra-simple-machine-vision-in-c-with-roboteyes/ وهذا كود برنامج التصوير عن طريق كاميرا Webcam: Dim cmmd As String 'how long does it take to take the picture istart = Timer 'set BE_Path Call BE_or_FE 'RobotEyez location App_Location = BE_Path & "Camera_App\WebCam\RobotEyez.exe" Save_images_to = BE_Path & "images\" 'Debug.Print App_Location iview_Folder = BE_Path & "image_App\i_view32.exe" File_Path = Save_images_to & Me.Employee_ID & ".jpg" SetCurrentDirectory Save_images_to 'cmmd = App_Location & " /devnum 1 /delay 1000 /width 1920 /height 1080 /bmp" cmmd = App_Location & " /devnum 1 /delay 1000 /width 1280 /height 720 /bmp" 'Debug.Print cmmd Call ShellWait(cmmd, vbHidden) 'convert bmp to jpg Call ShellWait(iview_Folder & " " & Save_images_to & "frame.bmp" & " /convert=" & File_Path, vbNormalFocus) 'Delete the bmp image Kill Save_images_to & "\frame.bmp" 'show the picture in the Form Me.Pic.Picture = Save_images_to & Me.Employee_ID & ".jpg" MsgBox Timer - istart . المرفق فيه جميع البرامج المطلوبة لجعل هذا البرنامج يعمل ، ولكن ، 1. المطلوب اولا معرفة حجم الصورة التي تستطيع Webcam التقاطها ، فاذا ادخلت رقم خطأ ، فستظهر لك رسالة بعدم الحصول على الصورة frame.bmp ، فرجاء تغيير هذه الارقام: width 1280 /height 720 فتجربتي على الكاميرتين كانا: Logitec HD c615 : 1920 x 1080 Creative Live (VF0610)e : 1280 x 720 وهذه قائمة بالاحجام العامة للكاميرات ، وانا انصح بالبدء بالحجم 640x480 ، وعند ظهور الصورة ، تستطيع ان تزيد الحجم بالتجربة: . 2. اذا عندك اكثر من Webcam ، مثلا تستخدم كاميرا اللابتوب واخرى خارجية ، فيجب تغيير الرقم الى 2: devnum 1 وهذا هو سطر الكود الذي يحتاج الى تغيير: cmmd = App_Location & " /devnum 1 /delay 1000 /width 1280 /height 720 /bmp" . وبما ان هذا البرنامج للتجربة ، فالرجاء ابداء ملاحظاتكم جعفر Camera_Scanner.zip
    1 point
  33. السلام عليكم co2002co ان شاء الله مفهومي لشرحك صحيح ، لأنه كان جدا صعب عليّ واخذ وقت طويل !! تفضل: المرفق فيه نموذجين فقط Form1 و Form2 ، وتقوم الوحدة النمطية بإنتاج نسخ من Form2 كلما ضغطت على احد سجلات مربع القائمة: . هاي الوحدة النمطية المسؤلة عن انتاج نسخ من النموذج: Option Compare Database Option Explicit 'Author: Allen J Browne, July 2004 'Email: allen@allenbrowne.com Public clnClient As New Collection 'Instances of frmClient. Function OpenAClient() 'Purpose: Open an independent instance of form frmClient. Dim frm As Form 'Open a new instance, show it, and set a caption. Set frm = New Form_Form2 frm.Visible = True frm.Caption = frm.Hwnd & ", opened " & Now() 'Append it to our collection. clnClient.Add Item:=frm, Key:=CStr(frm.Hwnd) Set frm = Nothing End Function Function CloseAllClients() 'Purpose: Close all instances in the clnClient collection. 'Note: Leaves the copy opened directly from database window. Dim lngKt As Long Dim lngI As Long lngKt = clnClient.Count For lngI = 1 To lngKt clnClient.Remove 1 Next End Function . وهاي كود النموذج Form1: Private Sub TopicList_AfterUpdate() Call OpenAClient End Sub . وهاي كود النموذج Form2: Private Sub Form_Load() Me.Text1 = Forms.Form1.TopicList.Column(0) Me.Text2 = Forms.Form1.TopicList.Column(1) Me.Text3 = Forms.Form1.TopicList.Column(2) Me.Text4 = Forms.Form1.TopicList.Column(3) Me.Text5 = Forms.Form1.TopicList.Column(4) End Sub جعفر 284.db.mdb.zip
    1 point
  34. وعليكم السلام . تفضل ، المرفق في هذا الرابط يقوم بفتح النموذج عدة مرات ، بدون ان يعمل نسخ جديدة: http://allenbrowne.com/ser-35.html جعفر
    1 point
  35. أخي الغالي : ياسر ألف شكر على التّوضيح .. بارك الله فيك و زادك من علمه و فضله .. لطالما تنوّر منتدانا بخبايا الاكسل الكثيرة باسم الله تبارك الله خالص إحتراماتي لشخصك الكريم
    1 point
  36. أخى الحبيب / عبد العزيز الذى يسعدنى ويشرفنى دائما بمرورة على موضوعاتى ممكن إضافة فاصلة فقط أو فاصلة منقوطة فقط حسب ما تريد وشكرا
    1 point
×
×
  • اضف...

Important Information