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

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

  1. أ / محمد صالح

    أ / محمد صالح

    أوفيسنا


    • نقاط

      8

    • Posts

      4,428


  2. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      7

    • Posts

      6,814


  3. Foksh

    Foksh

    الخبراء


    • نقاط

      5

    • Posts

      2,155


  4. محمد هشام.

    محمد هشام.

    الخبراء


    • نقاط

      4

    • Posts

      1,366


Popular Content

Showing content with the highest reputation on 17 أكت, 2023 in all areas

  1. اتفضل هل هذا ما تريده ؟ مثال.rar هذه صورة لنتيجة ما تم فعله
    2 points
  2. الملف يحتاج إلى تثبيت برنامج Adobe Acrobat يكون مثبتا على الجهاز بالتوفيق
    2 points
  3. لا شكر على واجب اهلا بيكى من فضلك بس نتلزم بقواعد المشاركات فى المنتدى حتى لا يتعرض الموضوع للاهمال او عدم الرد او اغلاق الموضوع ومنع المشاركات فيه شوفى القاعدة دى 11. ممنوع طرح أكثر من سؤال في موضوع واحد ليسهل البحث عن المواضيع لاحقا. وياريت مستقبلا العنوان يكون مناسب للسؤال حاجة تانى فضلا وكرما وليس امرا عند وضع سؤال وتاتيكى الاجابه المطلوبه كما تتوافق مع رغباتك لا تنسي غلق الموضوع باختيار افضل اجابة ليكون معلوم لدى رواد المنتدى مستقبلا انه تمت الاجابة بتأشير الرد المناسب شكرا لحضرتك مع اطيب الامانى بقضاء اطيب الاوقات داخل المنتدى
    2 points
  4. If x > 45 And cells(I,"H")= "" Then
    2 points
  5. السلام عليكم اساتذتي الاعزاء من خلال بحثي المتواصل من خلال الانترنت وجدت من الصعب جدا ان تجد كود او موديول واحد يقوم بتشغيل كافة انواع الماسحات الضوئية لكثرة انواعها وموديلاتها. اخيراً استقر الحال على البرنامج الوسيط (IrfanView) وهو بستطيع التعامل مع اكثر من جهاز ماسح ضوئي سواء كان (flat) او (feeder). قمت بتجربته والنتائج كانت جيدة واستطعت سحب صور متعددة وتحويلها الى pdf مباشرة وصورة واحدة بعدة امتدادات مثل jpg * مرفق برنامج ارشفة الكترونية بسيط وطريقة عملة هو اختيار نوع المستند اما pdf ويظهر مستعرض الويب او IMAGE ويظهر مستعرض الصور المطلوب: التعديل على الكود لحفظ ملف pdf او jpg في مسار بجانب قاعدة البيانات (My_Archive-Import-My_pdf) او (My_Archive-Import-My_Pictures) واظهار الملفات في مستعرض الصور او pdf في فاعدة البيانات مع اسم ورقم الكتاب. وشكرا لكم Desktop.rar
    1 point
  6. هذه محاولة اولية ...بصراحة عصى علي الحدث عند النقر ..ربما يساعدنا احد الاخوة كما قلت لك سابقا اني غير مقتنع من تلك الفكرة لان المستخدم ليس بمبرمج ..لكننا نحاول ان نصل لفكرة جميلة ...ربما يستفيد منها البعض foksh.rar
    1 point
  7. 1 point
  8. البرنامج ، وهو اقتراح جميل IrfanView 4.62 Commercial IrfanView 4.60 بعد إذنك أستاذي @Ahmed_J بهذه إضافة ، سيتوجب على مستخدم المرفق تعديل مسار البرنامج حسب اصدار النسخة ( 64 - 32 ) للنسخة × 64 ، سيصبح الكود كالآتي Shell ("C:\Program Files\IrfanView\i_view64.exe /batchscan=(ahmed,1,1,2,0,c:\temp,JPG,1) /scanhidden") للنسخة × 32 ، سيصبح الكود كالآتي Shell ("c:\Program Files (x86)\irfanview\i_view32.exe /batchscan=(ahmed,1,1,2,0,c:\temp,pdf,1) /scanhidden")
    1 point
  9. شوف التعديل الجديد في المشاركة السابقة ، تم تعديل الملف المرفق مرفق فيديو للتوضيح 20231017_210115.zip
    1 point
  10. آآآآآآه فعلا 🙈 سبحان الله ما شفتهاش .. لا مواخذه شكلي كان مغمى عليه 😂 🏃🏻‍♂️🏃🏻‍♂️🏃🏻‍♂️
    1 point
  11. هذا هو المطلب لكم جزيل الشكر
    1 point
  12. @ابو جودي وطويلب العلم ده .. طلباته مش أوامر برده ولا أييييييه ؟؟ 😅💪🏻
    1 point
  13. شكرا شكرا استاذ محمد والف مليون شكرا على اهتمامك بالموضوع جزاكم الله خير وربنا يجعله فى ميزان حسناتك
    1 point
  14. ربما يكون هذا هو المطلوب بالتوفيق test1.xlsx
    1 point
  15. تفضل اخي يمكنك اختيار ما يناسبك Option Explicit ' الغاء فلترة جميع اوراق العمل Sub Sup_tous_les_filtres() Dim WS As Worksheet For Each WS In Worksheets If WS.AutoFilterMode = True Then Debug.Print WS.Name WS.AutoFilterMode = False End If Next End Sub '**********او*********** Sub Sup_tous_les_filtres2() Dim WS As Worksheet For Each WS In Worksheets If WS.AutoFilterMode Then WS.AutoFilter.Range.AutoFilter End If Next End Sub '********تحديد تسلسل معين *********** Sub vSup_tous_les_filtres3() Dim i As Long Dim compteur As Long ' عدد اوراق العمل compteur = 100 ' من ورقة 1 الى 100 For i = 1 To compteur On Error Resume Next If Sheets(i).AutoFilterMode Then Sheets(i).AutoFilter.Range.AutoFilter On Error GoTo 0 End If Next i End Sub
    1 point
  16. جرب تشغيل هذا الكود في كل الشيتات Sub Clear_All_Filters() On Error Resume Next ActiveSheet.ShowAllData On Error GoTo 0 End Sub بالتوفيق
    1 point
  17. 1 point
  18. وعليكم السلام فهذا الطلب تقريباً تكرر مائة مرة كان عليك استخدام خاصيى البحث بالمنتدى فعليك بضبط إعدادات اللغة العربية لديك
    1 point
  19. الخبير الفاضل ابو جودي كيف تقول انك مبتفهمش بسرعة وانت الفهم والعلم معا انا لا أنسى مواضيع كتيرة ساعدتنى فيها بخبرتك وفهمك وعلمك جزاك الله كل الخير انت وجميع الخبراء والزملاء وكل فرد في المنتدى نهارك سعيد سوف ارسل لك القاعدة للعمل علبها
    1 point
  20. أعتقد يجب إضافة عمود العدد المتاح من كل سلعة حتى لا يتم تجاوزه
    1 point
  21. اعتذر عن تأخرى فى الرد على استاذى الجليل ومعلمى القدير العفو منكم استاذى انا طويلب علم ينهل من ربوع وانهار وفيض علمكم الوفير وتحت امر حضرتك من عيونى طلبات حضرتك أوامر
    1 point
  22. طبعا بدأت بالسؤال ولم ابدأ بالحل لعدة اسباب اولا الافضل يكون بطريقة الية وتلقائى منعا لحدوث اخطاء وتكرار ومشاكل لذلك ... اذا عرف السبب بطل العجب ثانيا ممكن حضرتك بسؤالك تجبرى الكل ان ينظر لطريق واحد ومحدد اللى حضرتك رسمتيه وفى الاخر يكون فى طريق افضل بس حضرتك مفكرتيش فيه لذلك لما اجد اسئلة وطلبات من النوع ده باحاول افهم الاول
    1 point
  23. يا ترى اساتذتى الكرام الحلوين الاستاذ @kanory والاستاذ @Foksh 😡 بتضحكوا على علشان مبفهمش بسرعة واللا علشان مبفهمش اصلا هههههههه 🤪
    1 point
  24. اولا هات الشجرة علشان اتفرج عليها واتعلم منك وياريت توضح بناء على المرفق طلباتك بشرح وافى لان بصراحة السؤال مش مفهوم ع الاقل بالنسبة لى و انت عارف انا مبفهمش بسرعة بس لو فهمت تلاقينى فوريره اومااااااااااال
    1 point
  25. أعذروني للمداخلة التي لا تعتمد على الأكواد ، بل توضيح حسب ما فهته من طريقة عمل وتحليل الأكواد لجلب تاريخ الميلاد بالتفصيل ( يوم ، شهر ، سنة ) أو عند الرجوع بالقاعدة بشكل عكسي للحصول على يوم الميلاد من عدد ( يوم ، شهر ، سنة ) مقارنة مع التاريخ الحالي وهو الشائع دائماً للحصول على هذه المعلومة . أعتقد إنه بداية الأكواد وعندما نعطيها تاريخ مثل ( 18/1/1960 ) باستخدام الدوال أو الأكواد البرمجية فإنها تعمل على مبدأ جبر الكسور التي تنتج عن فروقات الأيام بالأشهر التي عدد أيامها ( 30 و 30 و 29 و 28 ) يوم ، فالمعروف أن السنة الشمسية تقريباً تعادل 365.2524 يوم حتى مع احتساب السنة الكبيسة ، وعند جبر الكسر بالدالة Int فإنها تصبح 365 . وبالنتيجة فإن العملية العكسية للحصول على التاريخ ستتعامل مع الأيام على أنها رقم صحيح لا رقم بكسور عشرية ، وأعتقد هنا يأتي الفرق ( جزء بسيط من اليوم على مدار 63 سنة و 8 شهور و 28 يوم ) . بالعودة إلى الموضوع و الملف المرفق من الأستاذ @kkhalifa1960 ، فهو يعمل عند تجربتي له عدة مرات على تواريخ أخرى ؛ وحتى التاريخ الذي تحدث عنه . والمرفق فيديو يوضح ذاك . وأعتذر إذا تطرقت قريباً عن سياق الموضوع 20231016_195803.zip
    1 point
  26. قد تكون القاعدة تحتوي على مرفقات ( صور ، ملفات PDF .... الخ ) وهذا سبب ضخامة حجم قاعدة البيانات ؛ هنا ستجد سهولة في فك الارتباط معها واستخراج المرفقات ، وبنفس الوقت ستجد صعوبة في اعادة ربطها مع حقولها التابعة لها . حاول اكتشاف اين المكونات التي زادت من حجم القاعدة ؛ وكمثال لو أنا مكانك :- بداية احتفظ بالنسخة الأصلية بمكان آمن . سأقوم بانشاء نسختين من نفس المشروع بنفس المجلد . سأحذف جميع الجداول من أحدى هذه النسخ وللفرضية أسميها Main . النسخة الثانية سقوم بعمل العكس وهو حذف جميع المكونات باستثناء الجداول ، وأعمل للقاعدة إعادة ضغط وإصلاح ( Compact and Repair Database Tools ) . لاحظ الفرق بالحجم بين النسختين وستحدد من هو الجزء المسؤول عن زيادة حجم القاعدة. * الفكرة هي أنني سابقاً كان عندي مشروع فارغ من البيانات في الجداول وكان حجمه 65 ميغا رغم إنه ليس بالمشروع الضخم ، ولكن عند استيراد المشروع لقاعدة بيانات فارغة جديدة اختلف الحجم معي حتى وصل إلى 8 ميغا على نفس الكمبيوتر ونسخة الأوفيس . المغزى أنه قد تكون جداول النظام في المشروع هي السبب بزيادة الحجم لتلفها أو كونها تقوم بتخزين جميع الحركات في المشروع ( بعد إجراء السابق كمحاولة طبعاً ) هذا ان صح تخميني ، والله أعلم
    1 point
  27. حل اخر Sub Recher_des_valeurs() Dim List1 As Range, List2 As Range, lr As Long Set wsdata = Sheets("Sheet1") lr = wsdata.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row Application.ScreenUpdating = False With wsdata .Range("c2", Range("c" & Rows.Count).End(4)).ClearContents For Each List1 In .Range("a2:a" & .Cells(Application.Rows.Count, 2).End(xlUp).Row) Set List2 = .Columns(2).Find(List1.Value, , xlValues, xlPart) If Not List2 Is Nothing Then List1.Offset(, 2).Value = List2.Value Else List1.Offset(, 2).Value = "" If List1.Value = Empty Then List1.Offset(, 2).Value = List1.Offset(, 1).Value Next List1 End With '***(B) نقل النتيجة لعمود 'With wsdata ' .Range("c2:c" & lr).Cut .Range("b2:b" & lr) 'End With Application.ScreenUpdating = True End Sub ترتيب عمود بنفس قيم عمود اخر 3.xlsb
    1 point
  28. ربما يرجع اختلاف الحل المقدم من الأخ الفاضل @محمد هشام. بسبب اختلاف فهم المطلوب أعتقد أن المطلوب * إن كان الاسم الموجود في ( أ) موجود في (ب) يتم كتابة نفس الاسم / وإذا لم يكن موجودا في (ب) يتم ترك الخلية أمامه فارغة (وهذا تم تنفيذه) * إن كان الاسم الموجود في (ب) غير موجود في (أ) يتم كتابة نفس الاسم من (ب) ويتم ترك الخلية أمامه في (أ) فارغة (وهذا لم يتم تنفيذه) بالتوفيق للجميع
    1 point
  29. بعد ادن الاستاد الفاضل أ/محمد صالح ملاحظة سيتم التحقق من قيم القائمة 1 فقط في حالة وجود نفس القيمة في القائمة 2 سيتم جلب الاسم المقابل وفي حالة وجود فراغ في القائمة 1 يتم جلب قيمة القائمة 2 في حالة عدم وجودها يتم ترك الخلية فارغة ادا كنت قد استوعبت طلبك تفضل جرب وضع المعادلة في الخلية C2 مع سحبها للاسفل للتاكد من النتائج المتوقعة =IF(A2<>"",IFERROR(VLOOKUP(A2,B$2:$B$20,1,0),""),B2) في حالة الرغبة باستخراج النتائج في عمود B يمكنك استخدام الكود التالي Sub Insert_formula() Dim derligne As Long, K As String Dim wsdata As Worksheet: Set wsdata = Worksheets("Sheet1") derligne = wsdata.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row K = "=IF(A2<>"""",IFERROR(VLOOKUP(A2,B$2:$B$" & derligne & ",1,0),""""),B2)" Application.ScreenUpdating = False With Range("C2:C" & derligne) .Formula = [K] .Value = .Value End With For i = 2 To derligne Range("B" & i) = Range("C" & i) Next i Range("C2:C" & derligne).ClearContents Application.ScreenUpdating = True End Sub 2ترتيب عمود بنفس قيم عمود اخر.xlsm
    1 point
  30. لعل هذه الطريقة تفيدك في الوصول للهدف تم وضع 3 معادلات: معادلة لوضع الاسم إذا كان موجودا في ب وإلا يترك خاليا (في العمود الذي تم إدراجه B ) ومعادلة لتحديد غير الموجود في ب (في العمود D) معادلة لجلب الأسماء الموجودة في ب وغير موجودة في أ (أسفل القائمة في العمود B ) بالتوفيق ترتيب عمود بنفس قيم عمود اخر.xlsx
    1 point
  31. السلام عليكم و رحمة الله تعالى وبركاته إخوتي الكرام حياكم الله. بعد نزع خاصية انشاء شريط القوائم بالأكسس في النسخ بعد 2003 أصبح هناك عائق كبير في إضافة هذه الأشرطة و لأنه يتوجب عليك العمل على ملف 2003 أو استعمال Ribbon بلغة Html و هي أصعب من الفكرة الأولى. مما جعلني أفكر في طريقة تجعلنا نستغني عن هذه الطرق المرهقة بعض الشيء. و قمت بتصميم برنامج يستطيع أن يضيف شريط قوائم للنموذج الرئيسي لقاعدة البيانات مهما كانت نسختها 2003 أو النسخ التي تأتي بعدها. نبدأ على بركة الله في شرح البرنامج: بعد فتح البرنامج نتبع الخطوات التالية: 1 - أكتب اسم القوائم التي تريد أن تضيفها مع وضع رقم كل قائمة بالترتيب (1,2,3,....و هكذا) 2- أضف العناصر أو الأوامر التي تندرج تحت كل قائمة في النموذج الفرعي رقم العنصر , تسمية العنصر ثم الكود الذي تريد أن ينفذه هذا العنصر 3- أختر قاعدة البيانات سواءا كانت 2003 أو ما بعدها ثم اختر اسم النموذج الذي تريد أن تضيف له الشريط 4- قم بالضغط على زر "إنشاء الشريط" 5- افتح قاعدة بياناتك و أنظر للشريط المضاف حتى لو كان النموذج منبثق و شاشة الأكسس مخفية سوف ترى الشريط شروط استخدام البرنامج: 1- قبل البدئ أحفظ نسخة إحتياطية من قاعدة بيانات 2- يجب أن لا يكون لديك في قاعدة بيانات نماذج بهذه الأسماء : list1,list2,list3..... و هكذا 3- يجب أن يكون حدث عن النقر للنموذج الرئيسي خال من أي كود 4-بعد الإنتهاء أدعولي و لوالدي و لعائلة بالخير و الصلاح. هذا هو البرنامج انشاء شريط قوائم.rar
    1 point
  32. حسب فهمي للمطلوب تم وضع معادلة لتقسيم الرقم إلى فئات العملات في الخلية T5 وسجبها في الجدول كله أفقيا ورأسيا بالتوفيق رواتب.xlsm
    1 point
  33. بارك الله ولك وللقائمين على المنتدى جميعا مثلما دعوت
    1 point
  34. استخدم الدالة COUNTIF ثم قم بفرز نتيجة الدالة واحذف المكرر المثال بالمرفق =COUNTIF(A:A;D2) المصنف1.xlsx
    1 point
×
×
  • اضف...

Important Information