اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

  1. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      12

    • Posts

      12,351


  2. عبدالله بشير عبدالله
  3. أ / محمد صالح

    أ / محمد صالح

    أوفيسنا


    • نقاط

      3

    • Posts

      4,444


  4. إبراهيم ابوليله

    إبراهيم ابوليله

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


    • نقاط

      2

    • Posts

      2,850


Popular Content

Showing content with the highest reputation on 25 سبت, 2024 in all areas

  1. هذا يعتمد على طريقة بنائك لعناصر القائمة ليست بوكس أثناء إضافة العناصر إليها يمكنك التحكم في تنسيق القيم الموجودة في الخلايا مثلا بهذه الصورة Dim i As Integer For i = 1 To 10 ListBox1.AddItem Format(Cells(i, 1).Value, "0.00") Next i هذا الكود يقوم بإضافة الخلايا من A1:A10 إلى القائمة وتنسيق الرقم بها إلى رقمين عشريين بالتوفيق
    2 points
  2. لفصل التاريخ vdate=format([textDate];"yyyy/mm/dd") لفصل الوقت vtime=format([textDate];"hh:ss")
    2 points
  3. تم بحمد الله الوصول الي حل للربط مع هيئه الزكاه والدخل علي المحاكاه و الانتاج الفعلي الفئه المستهدفه (مستخدمي الاكسس) ملحوظه مهمه انا مش مبرمج اولا :- يلزمنا اولا تجهيز بيئه العمل 1- اصدار .Net :- رقم 3.1.426 كيفيه تثبيت .Net Sdk: الاصدار المستهدف 3.1.426 1- ننزل الاداه من الموقع الرسمي https://dotnet.microsoft.com/en-us/download/dotnet/3.1. 2- ننزل اصدار ويندوز 32bit او 64 بت او الاصدار المناسب لنظام التشغيل لديك 3- نقوم بعمليه التثبيت الاعتياديه كـ تثبيت اي تطبيق 4- التأكد من الفيرجن تم تثبيته او لا ندخل ع cmd ثم نكتب الامر التالي dotnet --version 2- اصدار java java version "15.0.2" 2021-01-19 Java(TM) SE Runtime Environment (build 15.0.2+7-27) Java HotSpot(TM) 64-Bit Server VM (build 15.0.2+7-27, mixed mode, sharing) كيفيه تثبيت Java: الاصدار المستهدف 15.0.2 java version 1- ننزل الاداه من الموقع الرسمي https://www.oracle.com/java/technologies/javase/jdk15-archive-downloads.html. 2- ننزل اصدار ويندوز 32bit او 64 بت او الاصدار المناسب لنظام التشغيل لديك 3- نقوم بعمليه التثبيت الاعتياديه كـ تثبيت اي تطبيق 4- التأكد من الفيرجن تم تثبيته او لا ندخل ع cmd ثم نكتب الامر التالي java --version 3-اصدار jq رقم jq-1.7.1 كيفيه تثبيت JQ: الاصدار المستهدف jq-1.7.1 1- ننزل الاداه من الموقع الرسمي https://jqlang.github.io/jq/download/. 2- ننزل اصدار ويندوز 32bit او 64 بت او الاصدار المناسب لنظام التشغيل لديك 3- نضع ملف exe في مجلد في هذا المسار C:\Program Files\jq 4- نذهب الي المتغيرات البيئيه –للوصول للمتغيرات البيئيه الضغط كليك يمين ع هذا الكمبيوتر الشخصي =>ارتباطات ذات صله =>اعدادات النظام المتقدمه=>في تبويب الخيارات المتقدمه =>متغيرات البيئيه=>هناك الـ path برجاء الانتباه وعدم حذف اي شئ في متغيرات النظام ونضع المسار هذا C:\Program Files\jq\ هناك في متغير الــ Path لكي يكون من السهل الوصول اليه 5- نفتح cmd و نكتب الامر و المسار cd C:\Program Files\jq 6- نكتب الامر التالي chmod +x jq.exe بعدها ممكن نحتاج الي اعاده التشغيل 7- التأكد من الفيرجن تم تثبيته او لا ندخل ع cmd ثم نكتب الامر التالي jq --version 4-تنزيل حزمه تطوير البرمجيات من موقع هيئه الزكاه و الدخل 3.3.3 https://sadzit.sharepoint.com/ZATCA Library/Forms/AllItems.aspx?id=%2FZATCA Library%2FMarch 2024%2F24-3-2024%2Fzatca-einvoicing-sdk-238-R3.3.3.zip&parent=%2FZATCA Library%2FMarch 2024%2F24-3-2024&p=true&ga=1 خطوات الوصول الي الملف المطلوب SDK 3.3.3 1- الدخول ع موقع هيئه الزكاه والدخل 2- من تبويب الفوتر الالكترونيه يتم اختيار مطور الانظمه 3- بوابه مطور الانظمه 4-مجموعه ادوات التحقق من الامتثال و حزمه ادوات تطوير البرمجيات 5- سجل الاصدارات 6- النسخه الخاصه بحزمه ادوات تطوير البرمجيات 3.3.3 << هذه الحزمه المستهدفه انت الان جاهز للبداء للغوص في هذه الرحله الشاقه سيتم ارفاق ملف اكسس و سيتم شرحه هنا او من الممكن تقديم شروحات ع اليوتيوب سيساعدك هذا الملف ع الربط مع هيئه الزكاه والدخل من A to Z نسأل الله العلي العظيم التوفيق و السداد للجميع سيتم ارفاق الملف في منشور اخر ان شاء الله
    1 point
  4. وعليكم السلام ورحمة الله وبركاته معلمى واستاذي ابراهيم ابو ليلة / الجيل الذهبى للمنتدى ربما اشتركنا في المنتدى في نفس الفترة وعاصرنا عبدالله باقشير وملك المعادلات والدغيدى وعبدالله المجرب والشهابي وتعلمنا منهم الكثير وغيرهم الكثير , اشتراكى القديم في 2011 باسم عبدالله الصاري وتم ترقيتي الى الخبراء ومنذ سنتين لم اتمكن من الذخول الى المنتدى بسبب الدخول اصبح بالبريد الالكتروني والذي نسيته فاشتركت مجددا بلسم الحالى على كل حال اسعدنى تعليقك ولك وافر التقدير والاحترام
    1 point
  5. هو كود صغير يقوم بالمهمة وقبل الحذف يسالك هل تريد الحذف ام لا مع عدد من تم حذفهم الكود Sub DeleteRows() Dim ws As Worksheet Dim lastRow As Long Dim i As Long Dim deleteCount As Long Dim response As VbMsgBoxResult Set ws = ThisWorkbook.Sheets("ورقة1") lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row deleteCount = 0 response = MsgBox("هل أنت متأكد أنك تريد حذف من استلمو الاول والثاني", vbYesNo + vbQuestion, "تأكيد الحذف") If response = vbYes Then For i = lastRow To 3 Step -1 If ws.Cells(i, 2).Value <> "" And ws.Cells(i, 3).Value <> "" Then ws.Rows(i).Delete deleteCount = deleteCount + 1 End If Next i MsgBox deleteCount & " صفوف تم حذفها.", vbInformation, "عملية الحذف" Else MsgBox "تم إلغاء عملية الحذف.", vbInformation, "إلغاء" End If End Sub الملف حذف اسماء من استلمو الاول والثاني.xlsm
    1 point
  6. كل الشكر والتقدير للأستاذ محمد صالح
    1 point
  7. قمت بطباعة الورقة وامورها 100% الاوفيس لدي 2016 وندوز 10 جرب على اكثر من جهاز
    1 point
  8. السلام عليكم المعادلة =HYPERLINK("#'" & A2 & "'!A1"; A2) الملف ارتباط تشعبى شيت بخلية.xlsx
    1 point
  9. بما ان نوع الحقل نصي فلا يمكن تطبيق تنسيق التاريخ عليه داخل الجدول لو ان نوع الحقل (تاريخ/وقت) لأمكن عرض المطلوب داخل الجدول انظر الاستعلام .. ويمكن استخراج النتيجة ايضا في النموذج او التقرير مثال2.rar
    1 point
  10. تفضل هذه اساسات .. تم استبعاد الكثير من الحقول التي وضعتها في جدول الحركة مثلا .. التحويل مكانه الاستعلام . والارصدة ايضا ليس مكانها الجدول .. الضريبة نعم يمكن اضافتها مثلها مثل الخصومات الأخرى ادرس المرفق جيدا واي استفسار انا حاضر ان شاء الله .. ملحوظة .. انظر في الاصناف جيدا وانظر الوحدات في التفاصيل .. المعتمد هو اصغر وحدة من الصنف Database1.rar
    1 point
  11. السلام عليكم / وصلت الفكرة ان شاء الله جرب الملف واخبرنى باي تعديل اظهار نتائج البحث في اللستبوكس.xlsm
    1 point
  12. وعليكم السلام جرب هذا الحل قوائم التلاميذ معدل.xlsm
    1 point
  13. شكرا جدا للزملاء للمساعدة وحل المشكلة
    1 point
  14. الموضوع قديم نوعا ما .. فقد قارب السنتين لماذا لا تنشىء موضوعا بعنوان جديد مثلا : " التعامل مع المرتجعات في البيع والشراء وعلاقتها بالأرصدة " وتشرح فيه طلبك
    1 point
  15. بارك الله فيكم جميعا ولإثراء الموضوع وترتيب الكود وتنظيمه يمكننا استعمال هذه الدالة بعد التحسين تم جعل الأسماء المركبة بدلالة الكلمة الأولى في مصفوفة منفصلة عن الأسماء المركبة بدلالة الكلمة الثانية يمكن احضار الاسم الأول بتمرير رقم 1 في المعامل الثاني للدالة ويمكن احضار اسم الاب برقم 2 أو بدون المعامل الثاني Function SplitName(Name As String, Optional part As Integer = 2) As String Dim K As String, S As String, N As Integer, M As Integer, FirstName As String Dim startsNames As Variant, endsNames As Variant, sName As Variant K = Trim(Name): M = Len(K): S = " " ' مصفوفة الأسماء المركبة التي تبدأ بكلمات معينة startsNames = Array("عبد", "أبو", "ابو", "ام", "أم", "ذو", "امرؤ", "سيف", "زين", "روح", "عين") ' مصفوفة الأسماء المركبة التي تنتهي بكلمات معينة endsNames = Array("الله", "الدين", "بالله", "الزهراء", "الهدى") If InStr(1, K, S, 1) = 0 Then SplitName = Name Exit Function End If ' التحقق من الأسماء المركبة التي تبدأ بكلمات معينة For Each sName In startsNames If Left(K, Len(sName) + 1) = sName & " " Then FirstName = Left(K, InStr(Len(sName) + 2, K, S, 1) - 1) SplitName = IIf(part = 1, FirstName, Mid(K, Len(FirstName) + 1, Len(K))) Exit Function End If Next ' التحقق من الأسماء المركبة التي تنتهي بكلمات معينة For Each sName In endsNames If InStr(1, K, sName, vbTextCompare) > 0 Then FirstName = Left(K, InStr(1, K, sName, vbTextCompare) + Len(sName) - 1) SplitName = IIf(part = 1, FirstName, Mid(K, Len(FirstName) + 1, Len(K))) Exit Function End If Next ' إذا لم يكن الاسم مركبًا، عرض الاسم الأول فقط FirstName = Left(K, InStr(1, K, S, 1) - 1) SplitName = IIf(part = 1, FirstName, Mid(K, Len(FirstName) + 1, Len(K))) End Function بالتوفيق
    1 point
  16. ابتداءً نعم كمشتريات .. وفي نهاية المدة يمكننا ترحيل الارصدة الفعلية النهائية لتصبح ارصدة بداية المدة لكن ما دمت ستعمل برنامج مطلوب منك انجازه فأرى ان تعمل على طريقتك .. وفكرتي اجعلها في التجارب مربط الفرس هو البند الثالث من التسلسل وكأنك تميل الى فكرة الجدول الواحد ؟ هنا يلزمنا عمل ثلاث حقول اساسية أو اربعة ( بعيدا عن بقية الحقول المهمة الأخرى مثل معرف الصنف وغير ذلك) المخزن والنقطة يشتركان في واحد من هذه الحقول الثلاثة 1- المشتريات او الوارد : يخص المخزن 2- المبيعات : يخص النقطة 3- المحول : يشترك فيه المخزن والنقطة .. للمخزن = صادر .. وللنقطة= وارد 4- حقل المعرف ---------------- نجري عملية : تم شراء 1000 سلعة واودعت في المخزن وتم تسجيل فاتورة مشتريات وتم رصد العدد في الحقل1 + معرف المخزن في الحقل4 ( لاحظ امكانية العمل مع اكثر من مخزن ) تم تحويل 100 منها الى النقطة1 .. يتم تسجيل فاتورة تحويل ويتم رصد العدد في حقل3 .. + معرف النقطة في الحقل4 ( امكانية العمل مع اكثر من نقطة) تم بيع 50 منها من النقطة1 .. يتم تسجيل فاتورة بيع ويتم رصد العدد في حقل2 .. + معرف النقطة في الحقل4 ___________ الآن يمكننا عمل استعلام عن صنف محدد في مخزن محدد او جميع المخازن عن المشتريات وعن الصادر والأرصدة الناتجة كما يمكننا عمل استعلام عن صنف محدد في نقطة محددة او جميع النقاط عن المحول (الوارد) وعن المبيعات والأرصدة الناتجة كل هذا حسب مخزن واحد او اكثر أو حسب نقطة أو اكثر و حسب صنف او اكثر
    1 point
  17. على هذا .. اي اكثر من نقطة بيع .. اعتقد ان المخازن بحاجة الى جداول تخصها والله اعلم .............. اما بالنسبة لـــــــ هذا شأنك أستاذنا العزيز .. والكثير ينهج هذا النهج ولكن التعامل مع الارصدة سيكون ايسر واقل ادوات في كون رصيد اول المدة في التفاصيل بشرط : ان يأخذ ( رصيد اول المدة ) معرفا أسوة بالمعرفات الاخرى : بيع / شراء .. الخ ... فيمكنني من خلال جدول التفاصيل استخراج رصيد اول المدة لجميع الأصناف خلال فترة محددة .. ( على اعتبار ان قاعدة البيانات تحتوي على بيانات لأكثر من سنة ) وأيضا نحن نتعامل غالبا مع جدول واحد . هذا يعني انه في نهاية السنة يتم ادخال ( تحديث ) الرصيد المتبقي ليصبح هو رصيد بداية المدة وهذا يعني زيادة في اوقات العمل وزيادة في موظفي الادخال ، والخطأ في الادخالات دوما وارد في مثل هذه الحالات بينما حسب طريقتي لن نكون بحاجة لعمل ذلك لأن الارصدة المتبقية موجودة فعلا وظاهرة والدليل ان الجرد السنوي يتم بالمقارنة بين الموجودات على الأرض وبين تقارير هذه الارصدة ------------------------------------------- لا تعتبرون هذا الطرح استماتة وانتصارا لرأيي .. وانما ادعوا للتجربة فالتجربة خير برهان .. ستظهر حينها المحاسن والعيوب ان وجدت
    1 point
  18. عليكم السلام ورحمة الله وبركاته فخر للمنتدى ان تكون ابا عبدالله من اعضائه موضوعك هذا خير مثال لمن هو في بداية التعلم ، ان لا يبدأ عمله ولا يخطو اول خطوة بدون استشارة . نحن نعلم انه لا يخفى عليك امثال هذه المشاريع ومؤكد انك مررت بها ومارستها . ولكن يأبى الحال على المبحر في العلوم الا الاستزادة والرغبة في مشاركة التجارب والعقول .
    1 point
  19. اخي الكريم سبق وان ناقشنا هذا الموضوع هنا في الموضوع المشار اليه فتحته من اجل مناقشة تحقيق الافكار . ولم يتحقق فيه شيء بسب المداخلات التي لا تخدم الفكرة . انظر الى اول مرفق .. ثم اسرح بخيالك من خلال الجداول فقط وكأن البرنامج مكتمل .. وفكر كيف سيتم تطبيق الفكرة .. وغيرها من افكار في اي مشروع يجب ان تأسس الجداول تأسيسا متكاملا . بناء على متطلبات وأفكار مطلوبة يمكن تحقيقها باقصر واسهل طريق . اذا يحتاج انجاز المشروع 3 اشهر فيجب ان يخصص شهر كامل للجداول
    1 point
  20. طيب .. اعانك الله ووفقك ارى انه افضل لو انك وضعت في المثال بعض البيانات وطلبت من اخوانك اجراء عملية محددة ...................................................................... لاحظ انك تريد ضبط في ما لو تم ارجاع الصنف اكثر من مرة والبحث سوف يتم على رقم الفاتورة الاصلية والفاتورة الاصلية تحتوي على اكثر من صنف وطبعا لكل ارجاع رقم فاتورة يخصه في الارجاع الاول سوف يتم الارجاع بسهولة لانه لم يتم بعد اصدار فاتورة في الارجاع الثاني : كيف تتوصل الى العدد الذي تم ارجاعه في المرة الاولى يجب ان نفكر جيدا فنحن بحاجة الى معيار يتكون من : رقم الفاتورة الأصل ( لمعرفة العدد الاصلي ) + كود الصنف ( بسبب تعدد الاصناف في الفاتورة ) + معيار ( ؟؟ ) ( لاظهار عدد المسترجع في المرة الأولى ) البرمجة عبارة عن تطبيق فكرة منطقية
    1 point
  21. السلام عليكم و رحمة الله تعالى وبركاته لقد قمت بتصميم برنامج لمحل تجاري يستخدم 3 أجهزة كمبيوتر في نفس الوقت و صادفتني هذه المشكلة إستخدمت العديد من الحلول لكن تبقى دائما فيها بعض النقائص في لحظات معينة فإهتديت لهذا الحل بأقل أكواد و بدون رسائل أخطاء. قمت بإضافة جدول في برنامج الواجهة و أضفت له حقل رقم الكمبيوتر و نموذج مرتبط به يستطيع المستخدم من خلاله تغيير رقم الكمبيوتر طريقة الترقيم: في خانة القيمة الإفتراضية للحقل بالنموذج نضع كود لجلب أكبر رقم الدالة dmax و نربط معها رقم الجهاز Dmax("id_facture";"tbl_facture") & "." & Dlookup("id_pc";"tbl_pc") id_pc هو رقم الكمبيوتر بهذه الطريقة تصبح الأرقام المنتجة هكذا 1001.1 و 1001.2 يعني لن يحدث أي إعتراض حتى و لو تم إضافة سجل جديد في نفس اللحظة أو تستطيع تغيير الجزء الأول بالدالة التي وضعتها لإنتاج رقم الفاتورة و تحتفظ بالجزء الثاني
    1 point
×
×
  • اضف...

Important Information