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

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

  1. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      5

    • Posts

      8,723


  2. mmagedmemo

    mmagedmemo

    02 الأعضاء


    • نقاط

      4

    • Posts

      67


  3. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      3

    • Posts

      1,681


  4. محمد احمد لطفى

    • نقاط

      2

    • Posts

      1,912


Popular Content

Showing content with the highest reputation on 16 أغس, 2020 in all areas

  1. كيفية اضافة معادلة البحث XLOOKUP لاوفيس 2019-2016-2013-2010-2007-2003 في الفيديو دة هاتقدر تشتغل وكأنك معاك اوفيس 365 XFunctions.7z
    4 points
  2. السلام عليكم 🙂 هناك الكثير من الميزات/الاوامر التي يعطينا برنامج الاكسس ، والتي يمكن ان نعمل لها بديل ، ولكن يكون هناك فرق في سرعة تنفيذ كودنا مقارنة مع الكود الاصل من الاكسس !! مثل القائمة المختصرة التي تظهر لنا بالنقر على زر الفأرة الايمن ، والتي بها يمكننا ان نستغني عن الكثير الاوامر ، مثل الفرز والتصفية بأنواعه ، ولكن وللأسف الشديد ، فأنا ارى ان 99.99% من البرامج ، يتم حذف هذه القائمة وعدم تفعيلها ، والسبب ان المستخدم يستطيع ان يدخل في تصميم النموذج من خلال هذه الاوامر(في الدائرة الحمراء) : و . ويضطر المبرمج ان يعوض بقية الاوامر في القائمة ، بمجموعة من الازرار ، او بطرق مختلفة !! ----------------------------------------------------------------------------------------------- الاكسس يسمح لنا ان نعمل قوائم مختصرة Shortcut Menu والتابعة لمجموعة CommandBars ، حسب احتياجنا ، ونختار ما نضعه فيها 🙂 هناك 3 انواع من هذه القوائم : الثابته ، والمؤقته ، والمؤقته التي تحتاج الى كود. الثابته: وهي التي عندما نعملها ، تصبح مستقله عن الكود ، وتُحفظ وتبقى في قاعدة البيانات بعد إغلاقها ، ويمكننا ان نستوردها في قاعدة بيانات اخرى عندما نستورد احد/جميع كائنات قاعدة البيانات الآخرى ، بإستخدام : . ونختارها في النموذج : . او التقرير : . هذا مثال لعمل الكود الاساس لعمل قائمة قطع/نسخ/لصق : Option Compare Database Option Explicit Dim cmb As Object Dim cmbCtrl As Object Dim cmbName As String ' ' ' to use: ' Dim cbr As Commandbar ' Dim cbrButton as CommandbarControl ' ' we have to select in the References: ' Microsoft Office xx.x Object Library ' Public Function SCM_Copy(Optional DeleteMe As Boolean = False) On Error Resume Next 'If menu with same name exists delete cmbName = "cmb_Copy" CommandBars(cmbName).Delete If DeleteMe = True Then Exit Function If Err.Number <> 0 Then Err.Clear Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, False) With cmb .Controls.Add msoControlButton, 21, , , False ' Cut .Controls.Add msoControlButton, 19, , , False ' Copy .Controls.Add msoControlButton, 22, , , False ' Paste End With Set cmb = Nothing End Function . وشرح الكود : 1. اسم القائمة المختصرة ، والتي سوف نختارها في النموذج او التقرير ، 2. هذه المجموعة الاساس منبثقة Popup ، 3. بينما هذه المجموعات عبارة عن ازرار Buttons ، وقد تكون قائمة منسدلة Combobox ، او نص Edit نُدخل فيه قيمة معينة للتصفية مثلا ، 4. هل هذه القائمة مؤقته ؟ False معناها ثابته وتُحفظ في قاعدة البيانات ، بينما True معناها انها مؤقته وتعمل لما ننادي الوحدة النمطية/الكود ، 5. هذه ارقام كل امر ، وملف الاكسل المرفق من مايكروسوفت فيه جدول يضم جميع ارقام الاوامر للاكسس 2010 () ، 6. اذا اردنا ان نحذف هذه القائمة ، فننادي الوحدة النمطية بضم True في امر المناداة المؤقته: ونستعمل True في مكان الرقم 4 اعلاه. وهي التي عندما نعملها ، لا تصبح مستقله عن الكود ، ولا تبقى في قاعدة البيانات بعد إغلاقها ، ولا يمكننا ان نستوردها في قاعدة بيانات اخرى عندما نستورد احد/جميع كائنات قاعدة البيانات الآخرى (كما هو الحال مع القائمة الثابته) ، ويجب ان نستخدم "حدث فتح" النموذج/التقرير لعملها واستخدامها في النموذج/التقرير ، و "حدث اغلاق" النموذج/التقرير لحذفها ، طيب ، خلونا نعمل هذه القائمة : Public Function SCM_Copy_Sort(Optional DeleteMe As Boolean = False) On Error Resume Next 'If menu with same name exists delete cmbName = "cmb_Copy_Sort" CommandBars(cmbName).Delete If Err.Number <> 0 Then Err.Clear Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, False) With cmb Set cmbCtrl = .Controls.Add(msoControlButton, 21, , , False) ' Cut cmbCtrl.Caption = "Cut..." cmbCtrl.FaceId = 21 Set cmbCtrl = .Controls.Add(msoControlButton, 19, , , False) ' Copy cmbCtrl.Caption = "Copy..." cmbCtrl.FaceId = 19 Set cmbCtrl = .Controls.Add(msoControlButton, 22, , , False) ' Paste cmbCtrl.Caption = "Paste..." cmbCtrl.FaceId = 22 Set cmbCtrl = .Controls.Add(msoControlButton, 210, , , False) 'Sort Ascending cmbCtrl.BeginGroup = True cmbCtrl.Caption = "فرز تصاعدي..." cmbCtrl.FaceId = 210 Set cmbCtrl = .Controls.Add(msoControlButton, 211, , , False) 'Sort Decending cmbCtrl.Caption = "فرز تنازلي..." cmbCtrl.FaceId = 211 End With Set cmb = Nothing End Function . وشرح الكود: احنا توسعنا في الكود الاساسي ، واضفنا له : 1. تسمية اختيارية غير الافتراضية ، لاحظ في الصورة اعلاه اني استعملت الانجليزي والعربي ، 3. وهو لعمل خط فاصل في الصورة بين مجموعة قطع/نسخ/لصق ومجموعة فرز تصاعدي/تنازلي ، . 2. ممكن ان نبدل الصورة الافتراضية التي تيجي مع الرقم ، بتبديل هذا الرقم (لاحظ صورة الاسهم للتصاعدي/التنازلي) : . ومرفق ارقام جميع الصور الموجودة في الاكسس : . . . . . . . . . . . في قاعدة البيانات المرفقة myRight_Click.mdb ، بالاضافة الى القوائم الثابته اعلاه ، تم اضافة هذه القائمة ايضا : . والتقرير يحتوي على القائمة المؤقته التالية : . - ملف الاكسل myList.xlsx ، اخترت فيه اهم القوائم في وجهة نظري ، - ملف الاكسل AccessControls_2010.xlsx ، من مايكروسوفت ، يحتوي على جميع الاوامر 🙂 جعفر المصادر: http://dev-soln.com/access-shortcut-right-click-tool/ https://www.experts-exchange.com/articles/12904/Understanding-and-using-CommandBars-Part-II-Creating-your-own.html https://filedb.experts-exchange.com/incoming/2014/02_w06/833359/CommandBars-II.mdb https://www.experts-exchange.com/articles/18341/CommandBars-Part-III-Using-Built-in-Shortcut-Menus.html http://www.skrol29.com/us/vtools.php AccessControls_2010.xlsx myList.xlsx myRight_Click.zip
    1 point
  3. السلام عليكم و رحمة الله تعالى وبركاته إخوتي الكرام حياكم الله. إليكم هذا البرنامج الصغير الذي يقوم بإظهار شريط طباعة مع كل تقرير و بإستعمال أكواد قليلة يقوم شريط الطباعة بضبط إعدادات الصفحة ، طباعة الصفحة الحالية، طباعة الصفحات التي تريدها حسب الإختيار، التكبير و التصغير ، الإنتقال بين السجلات، عرض مجموعة من الصفحات في التقرير. رغم أنه يوجد مثال من قبل للأستاذة زهرة حفظها الله. إلا أنني في هذا المثال إستعملة طريقة مغايرة قليلا و بإستعمال أسطر أقل. إنشاء شريط طباعة.rar
    1 point
  4. اعرض الملف تحديد الأوزان النسبية و التقييم + تطبيق بالإكسيل عند مقارنة خيارات متعددة وفقا لمعايير محددة ، يتم أولا تحديد وزن نسبي لكل من هذه المعايير حتى نستطيع الوصول الى قرار و هنا سنعرض لطريقة تحديد الأوزان النسبية ، و من ثم عمل التقييم و طبعا اشهر تطبيق لذلك عند المقارنة بين المتقدمين لمناقصة معينة وفقا لعدة معايير و هنا يشتمل المثال على المقارنة بين عدة أنواع افتراضية من السيارات وفقا لمجموعة من المعايير مثل السعر و الصيانة و درجة الرفاهية و درجة الأمان ، و بناء على ذلك سنتعلم كيف نضع أوزان نسبية لكل من المعايير ، و بناء على ذلك تتم عملية المفاضلة ومرفق مثال بالاكسيل يحوي أتمتة كاملة لتطبيق الطريقة التي تم شرحها فى العرض التقديمي ، يحوى دالتين بالكود تم استخدامهما فى المقارنةو المثال معد بواسطة اكسيل 2007 صاحب الملف محمد طاهر تمت الاضافه 27 مار, 2010 الاقسام Project Management  
    1 point
  5. حضرتك رائع والله رجل المهام الصعبة ادام الله عزك وعلمك اخى فى الله استاذ سليم
    1 point
  6. ملف احر اكثر توضيحاً (يسمح لك بقص الفواتير كل واحدة منفردة ) و ذلك بوضع صف فارغ تحتها وعامود فارغ الى جانبها) اذا كانت هناك فواتير فارغة لا تطبع Mhd_Sr.xlsm
    1 point
  7. وعليكم السلام ورحمة الله وبراته ممكن توضيح اكثر لاني وضعت في جقل date1 تاريخ 1-9-2016 وفي خقل date2 تاريخ اليوم فاعطى النتيجة سليمة فقام بحساب عدد الاسابيع وعدد الاشهر مضبوط فبرجاء توضيح اكثر للمطلوب تحياتي
    1 point
  8. اشكرك جدا هوه المطلوب
    1 point
  9. شكر الله لك يا صاحبي ...
    1 point
  10. 1-الخلايا المدمجة تعيق عمل اي كود او معادلة تم تغيير تصميم الورقة الثانية بدون خلايا مدمجة 2- تختار من الخلية I2 الرقم الذي سوف يبدأ العمل منه 3- اذا كانت الخلية I2 ليست رقما أو اكبر من اخر رقم في الصفحة الأولى يبدأ العداد من الرقم 1 4- اختر الرقم الذي تريده ثم اضغط على الزر Run الكود Option Explicit Dim s As Worksheet Dim T As Worksheet Dim last As Long, Ro% Dim s_rg As Range Dim i%, K%, My_ro1%, My_ro2%, My_ro% Dim m As Byte, n As Byte, xx As Byte '++++++++++++++++++++++++++++++++ Sub Fatura() Application.ScreenUpdating = False Set s = Sheets("Source") Set T = Sheets("Target") xx = 1 last = s.Cells(Rows.Count, 1).End(3).Row If Val(T.Range("I1")) <= 0 Then i = 1 Else i = Int(Abs(T.Range("I1"))) End If T.Range("I1") = i T.Range("Rg_ALL").ClearContents For K = i + 3 To i + 10 If K > last Then Exit For Select Case xx Mod 8 Case 1: m = 2: n = 2 Case 2: m = 2: n = 4 Case 3: m = 10: n = 2 Case 4: m = 10: n = 4 Case 5: m = 18: n = 2 Case 6: m = 18: n = 4 Case 7: m = 26: n = 2 Case 0: m = 26: n = 4 End Select s.Cells(K, 1).Resize(, 7).Copy T.Cells(m, n).PasteSpecial _ xlPasteValuesAndNumberFormats, Transpose:=True xx = xx + 1 Next Application.CutCopyMode = False Print_Area T.Cells(2, 1).Select Application.ScreenUpdating = True End Sub '+++++++++++++++++++++++++++++++++++ Sub Print_Area() Set T = Sheets("Target") Ro = T.Cells(Rows.Count, 3).End(3).Row For i = 2 To Ro - 6 Step 8 If T.Cells(i, 4) <> "" Then My_ro1 = i + 6 End If Next For i = 2 To Ro - 6 Step 8 If T.Cells(i, 2) <> "" Then My_ro2 = i + 6 End If Next My_ro = Application.Max(My_ro1, My_ro2) T.PageSetup.PrintArea = T.Range("A1:D" & My_ro).Address End Sub الملف مرفق Mhd_Syr.xlsm
    1 point
  11. استخدم Shell "explorer.exe" & " " & CurrentProject.Path, vbNormalFocus
    1 point
  12. تفضل طلبك اخي الكريم سحب المستندات بالاسكانر.accdb
    1 point
  13. وعليكم السلام-بدون تعريف النطاقات وبدون ايضاً استخدام معادلة Indirect .... فقط يمكنك استخدام معادلة واحدة للقائمة المنسدلة الفرعية =OFFSET(INDEX(Sheet1!$A$2:$C$210,,MATCH($A2,Sheet1!$A$1:$C$1,0)),,,COUNTA(INDEX(Sheet1!$A$2:$C$210,,MATCH($A2,Sheet1!$A$1:$C$1,0)),1)) Book2.xlsx
    1 point
  14. نبهنا كثيراً على هذا الأمر , المنتدى تعليمى من المقام الأول وليس لتقديم البرامج الجاهزة فلا تنتظر المساعدة من احد بدون رفع ملف مدعوم بشرح كافى عن المطلوب حيث لا يمكن العمل على التخمين وتجنباً لعدم اهدار وقت الأساتذة
    1 point
  15. اضغك كليك يمين فى اى مكان فاضى فى مكان الجداول او الاستعلامات او النماذج و منها ممكن تختار اظهار الكائنات المخفية
    1 point
  16. اقترح عليك ((( المحــــاولـــــــــة ))) الموضوع بسيط اخي الكريم و كلنا هنا في خدمتك لكن يجب ان تبدء لكي تتعلم و تجد العون انت تتكلم عن جمعية بها اسهم و بها مكتتبين او مساهمين اذا انت بحاجة الى عدة جداول بسيطة ( جدول باسماء المقترضين+ جدول الاقساط الشهرية) وهذي كلها حسب طبيعة عملك ابدء بانشاء الجداول ثم ابدء في انشاء نموذج لتعبئة تلك الجداول ابدء و ستجد الجميع معك قلبا و قالبا ستجد المتعة في عملك
    1 point
  17. وعليكم السلام ورحمة الله وبركاتة تفضل اخي لعلة المطلوب ,,,,, inter.accdb
    1 point
  18. السلام عليكم إن كان الحاسب لم يظهر على بقية الحواسيب وقد فعلت عليه وعلى الحواسيب الأخرى الخواص التي وجدتها، ومن الغريب عدم upnp على الحواسيب الثلاثة. فجرب على حواسيبwin10 عند عدم تفعيل ويندوز ١٠، ستكون بعض الخيارات غير متاحة في واجهة المستخدم، مما يلجئ المسؤول إلى التلاعب بملفات الرجستيري، ولكن هذا لم يحصل معي مع الخدمة المذكورة المفقودة.
    1 point
  19. شاشة المستخدمين بالطريقة التي اشرت اليها
    1 point
  20. اخواني الكرام اعتقد ان موضوع حماية البرنامج برقم الهارد او المعالج او اي قطعة اخرى قد تمت مناقشته طويلاً وما توصلنا اليه هو ان جميع ارقام القطع تتغير بتغير نظام التشغيل وهذا الامر لا ترغب به كصاحب برنامج لانك لاتستطيع منع المستخدم من اعادة تثبيت نظام التشغيل وستجد نفسك ملزما بإعطاءه كود تفعيل جديد في كل مرة لذلك قمنا بالعديد من التجارب للتوصل الى حلول منطقية حول هذا الامر ووجدنا انه يمكننا استخدام اسم المعالج بدلاً من رقمه حيث ان اسم المعالج لايتغير بعد الفورمات كما ان اسم المعالج يحتوي على ارقام بطبيعة الحال لذلك ارتأينا انه يمكن استخلاص تلك الارقام من اسم المعالج لانها ستكون بالتأكيد ثابته ولا تتغير. طبعاً بعد التعمق في الموضوع اكثر وجدنا انه يمكن تغيير اسم المعالج من الريجستري وهي حالة نادر مايقوم بها احد لكن للحصول على حماية اكبر وإغلاق الثغرة السابقة كان لابد لنا من البحث اكثر عن شيء اخر يمكن استعماله لزيادة الأمان فوجدنا ان رقم UUID لأي جهاز كومبيوتر لايتغير بعد الفورمات وكان الاختبار قد تم اجراءه من قبل احد الاخوة جزاه الله خيرا لذلك قررنا انه سيكون التحقق عن طريق استخدام اسم المعالج مع رقم الـ UUID فإذا وجد تطابق فهذا يعني ان الجهاز مصرح له وان البرنامج يجب ان يعمل عند المستخدم ولا يطالبه بكود تفعيل جديد. المرفق التالي هو اخر ماتوصلنا إليه ملاحظة: هنالك طريقة لحماية البرنامج اون لاين وهي طريقة فعالة ايضاً لكنها تتطلب اتصال انترنت مستمر عند المستخدم - الطريقة مشروحة هنا تحياتي key_maker.mdb protection_sandanet.accdb
    1 point
  21. ااشكرك استاذ أحمد يوسف شكرك استاذابراهيم الحداد حضرتك كلك زوق وفعلا الكود يعمل وعند اضافة صفحات يعمل ينقص الكود عند تغير التاريخ يظل ماتم استدعائه سابقا موجود لا يتم استدعاء البيانات فى التاريخ الجديد فقط بل يتم استدعاء كافة البيانات مرة اخرى وكذلك لم يتم استدعاء اسم sheet الى العمود a الاسم الملون بالاخضر ارفقت لحضرتك الملحوظات شاكرة كرمك وزوقك بارك الله فيك استدعاء GreenSheets.xlsm
    1 point
  22. كان من الواجب التوضيح في بادىء الأمر لعدم تضييع الوقت بأمور فائدة منها الكود الجديد Option Explicit Sub Extarct_Data_By_Columns() Rem Created By Salim Hasbaya on 29/5/2020 Dim M As Worksheet, L As Worksheet, R As Worksheet Dim Rg_M As Range, Rg_L As Range Dim I%, Lr_M%, Lr_L%, RO%, it Dim St_Date As Date, End_Date As Date Dim arr, My_sum# Set M = Sheets("Minho"): Set L = Sheets("Laho") Set R = Sheets("Repport") Lr_M = M.Cells(Rows.Count, 1).End(3).Row Lr_L = L.Cells(Rows.Count, 1).End(3).Row R.Range("B2").Resize(25, 2).ClearContents If Not IsDate(R.Range("D2")) Or Not IsDate(R.Range("D2")) Then _ MsgBox "Type Please Correct Dates In The Cells D2 and E2 ": Exit Sub St_Date = Application.Min(R.Range("D2:E2")) End_Date = Application.Max(R.Range("D2:E2")) ReDim arr(1 To 25) For I = 1 To 25 arr(I) = I + 3 Next '++++++++++++++++++++++++++++++++++++++++ With M .Range("A2:AC" & Lr_M).Interior.ColorIndex = xlNone For I = 2 To Lr_M If .Cells(I, 1) <= End_Date _ And .Cells(I, 1) >= St_Date Then .Cells(I, 1).Resize(, 29).Interior.ColorIndex = 6 End If Next I End With ''++++++++++++++++++++++++++++++++ With L .Range("A2:AC" & Lr_L).Interior.ColorIndex = xlNone For I = 2 To Lr_L If .Cells(I, 1) <= End_Date _ And .Cells(I, 1) >= St_Date Then .Cells(I, 1).Resize(, 29).Interior.ColorIndex = 6 End If Next I End With RO = 2 With M For Each it In arr For I = 2 To Lr_M If .Cells(I, it).Interior.ColorIndex = 6 Then My_sum = My_sum + _ IIf(IsNumeric(.Cells(I, it)), .Cells(I, it), 0) End If Next I R.Cells(RO, 2) = IIf(My_sum > 0, My_sum, vbNullString) My_sum = 0: RO = RO + 1 Next it End With '++++++++++++++++++++++++++++++++++++ RO = 2: My_sum = 0 With L For Each it In arr For I = 2 To Lr_M If .Cells(I, it).Interior.ColorIndex = 6 Then My_sum = My_sum + _ IIf(IsNumeric(.Cells(I, it)), .Cells(I, it), 0) End If Next R.Cells(RO, 3) = IIf(My_sum > 0, My_sum, vbNullString) My_sum = 0: RO = RO + 1 Next End With '++++++++++++++++++++++++++++++++++++ End Sub المرفق من جديد (الماكرو الاول ما زال يعمل اذا لزم الأمر باستعماله) From_To Row_Col.xlsm
    1 point
  23. السلام عليكم انشأت اوراق لأشهر وهمي يشترط اذا ضفت اوراق اخرى لاشهر تسميها بنفس الطريقة وعمود ارقام الايام في Sheet1 تسجل التاريخ لليوم وليس ارقام الايام كود بسيط اضافة الى حلول الاساتذه الافاضل تفضل المرفق ترحيل بيانات_1.xls
    1 point
  24. وعليكم السلام تفضل ,كان عليك من البداية ادخال الساعات كفورمات الوقت كما ترى بالملف لكى يخرج الناتج كما تريد ENG_K.xlsx
    1 point
  25. لا حاجة للمعادلات في هذا املف الـــ Vba يقوم بكل ما يناسب الملف مرفق مع الشرح الكودات اللازمة Option Explicit Sub Edit_data() Dim Source_rg As Range Dim Find_rg As Range Dim r# Union(Range("b8:l8"), Range("c9:l9")).ClearContents Dim lra#: lra = Me.Cells(Rows.Count, 1).End(3).Row Set Source_rg = Me.Range("a12:M" & lra) Set Find_rg = Source_rg.Find(Me.Range("d6")) If Find_rg Is Nothing Then MsgBox "'This Number Does't Exists" Exit Sub End If r = Source_rg.Find(Me.Range("d6")).Row With Me.Range("b8") .Value = Cells(r, 2): .Offset(, 1) = Cells(r, 3): .Offset(, 2) = Cells(r, 4) .Offset(, 3) = Cells(r, 5): .Offset(, 4) = Cells(r, 6): .Offset(, 5) = Cells(r, 7) .Offset(, 6) = Cells(r, 8): .Offset(, 7) = Cells(r, 9): .Offset(, 8) = Cells(r, 10) .Offset(, 9) = Cells(r, 11): .Offset(, 10) = Cells(r, 12) .Offset(1, 1) = Cells(r, 13) End With End Sub '+++++++++++++++++++++++++++++++++++++++++++++++++++++ Sub ADD_data() Dim Source_rg As Range Dim Find_rg As Range Dim r# Dim lra#: lra = Me.Cells(Rows.Count, 1).End(3).Row Set Source_rg = Me.Range("a12:M" & lra) Set Find_rg = Source_rg.Find(Me.Range("d2")) If Find_rg Is Nothing Then MsgBox "'This Number Does't Exists" Exit Sub End If r = Find_rg.Row With Me.Range("b4") Cells(r, 2) = .Value: Cells(r, 3) = .Offset(, 1): Cells(r, 4) = .Offset(, 2) Cells(r, 5) = .Offset(, 3): Cells(r, 6) = .Offset(, 4): Cells(r, 7) = .Offset(, 5) Cells(r, 8) = .Offset(, 6): Cells(r, 9) = .Offset(, 7): Cells(r, 10) = .Offset(, 8) Cells(r, 11) = .Offset(, 9): Cells(r, 12) = .Offset(, 10): Cells(r, 13) = .Offset(1, 1) End With End Sub '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Sub Ta3dil() Dim Source_rg As Range Dim Find_rg As Range Dim r# Union(Range("B4:L4"), Range("C5:L5")).ClearContents Dim lra#: lra = Me.Cells(Rows.Count, 1).End(3).Row Set Source_rg = Me.Range("a12:M" & lra) Set Find_rg = Source_rg.Find(Me.Range("D2")) If Find_rg Is Nothing Then MsgBox "This Number Does't Exists" Exit Sub End If r = Source_rg.Find(Me.Range("D2")).Row With Me.Range("b4") .Value = Cells(r, 2): .Offset(, 1) = Cells(r, 3): .Offset(, 2) = Cells(r, 4) .Offset(, 3) = Cells(r, 5): .Offset(, 4) = Cells(r, 6): .Offset(, 5) = Cells(r, 7) .Offset(, 6) = Cells(r, 8): .Offset(, 7) = Cells(r, 9): .Offset(, 8) = Cells(r, 10) .Offset(, 9) = Cells(r, 11): .Offset(, 10) = Cells(r, 12) .Offset(1, 1) = Cells(r, 13) End With End Sub T-2019_Salim.xlsm
    1 point
  26. السلام عليكم اخواني الكرام في هذا الموضوع اريد ان اضع رأيي والطريقة التي استخدمها 1- يجب ان يكون عندك جدول عملات تحدد فيه اسم العملة وسعر الصرف واجزاء العملة ، وتكون العملة الاولى هي الافتراضية او الوظيفية التي ستظهر الحسابات الختامية بها 2- في جدول راس الفاتورة يجب ان تضع عمودين الاول اسم العملة و الثاني سعر الصرف وفي النموذج ضعه قائمة منسدلة مصدره جدول العملات 3- وهو الاهم في جدول بيانات الفاتورة الذي يحوي بنود الفاتورة يجب ان تضع عمود تكتب فيه سعر المادة بعملة الفاتورة و عمود اجمالي بعملة الفاتورة ، وعمودين اخرين بسعر المادة بالعملة الوظيفية (الرئيسية) والاجمالي بالعملة الوظيفية تقوم بالحساب بينهم عن طريق سعر الصرف الموجود في راس الفاتورة ، ويفضل ان يكون عمودي العملة الوظيفية غير ظاهرين 4- في جدول راس سند القيد او سند اليومية يجب ان يكون عندك عمودين العملة وسعر الصرف 5- في جدول بنود سند القيد او سند اليومية يجب ان يكون عندك اربع اعمدة اضافية وهم العملة و سعر الصرف و المدين بالعملة الوظيفية والدائن بالعملة الوظيفية ويكون هذان العمودان هما مصدر توازن سند القيد وسبب وجود عمودي العملة وسعر الصرف في بنود سند القيد أنه هناك احتمال كبير ان يحوي سند القيد على عمليات بأكثر من عملة
    1 point
  27. بسم الله الرحمن الرحيم وبه نستعين اخى وحبيبى فى الله ابو صالح السلام عليكم ورحمته الله وبركاته اود فى البداية وقبل تحميل المرفق ان تتقبل اعتذراى الشديد لعدم الرد فى حينة لظروف خارجة عن إرادتى ثانيا اشكرك من صميم قلبى على هذة اللفتة الطيبة المباركة النى احتسبها ان شاء الله تعالى فى موازيين حسناتك يوم القيامة ارجو عدم الانزعاج حال أن أطرقت بابك مرة أخرى فى محاولة لفهم الامور بعد تجربة المرفق على الملف الاصلى الذى أرغب العمل عليه على اعتبار ان التجربة جديدة من نوعها وفقنا الله واياكم الى مايحبة ويرضاه تقبل وافر تقديرى واحترامى وجزاكم الله خيرا
    1 point
  28. اتفضل كما تريد Picture (1).rar
    1 point
  29. اخوانى الكرام ارجوا المساعدة فى هذا العمل ولكم منى الشكر سلفا ... فى المرفق احتاج عندما اكتب تاريخ اليوم فى شيت (filter) فان الصف الموجود بة هذا التاريخ يرحل الى صفحة DATA مع ملاحظة فقط الصف الذى يحوى تاريخ اليوم فقط ( لان تاريخ اليوم هو المطلوب والهدف فى النقل ) ولكم منى جزيل ال TEST.zip
    1 point
  30. جرب هذا الكود Private Sub Worksheet_Change(ByVal Target As Range) Application.ScreenUpdating = False Application.EnableEvents = False If Target.Column = 6 And Target.Row >= 6 And Target.Count = 1 Then lrf = Sheets("filter").Cells(Rows.Count, "f").End(3).Row: If lrf < 6 Then lrf = 6 Set my_rg = Range("f6:f" & lrf) lrb = Sheets("Data").Cells(Rows.Count, "B").End(3).Row: If lrb < 6 Then lrb = 6 For Each cel In my_rg If cel.Value = Date Then r = cel.Row Sheets("filter").Range("a" & r).Resize(1, 7).Copy Sheets("Data").Range("b" & lrb) lrb = lrb + 1 End If Next End If Application.ScreenUpdating = True Application.EnableEvents = True End Sub
    1 point
  31. إسم الملف: دورة تدريبية فى حل المشاكل و اتخاذ القرار أضيف للمكتبة بواسطة: Dr. Khalid Hamdy تاريخ الإضافة: 19 Oct 2009 آخر تحديث: 30 Oct 2011 القسم فى المكتبة: PMBOK® Guide & PMP دورة تريبية فى حل المشاكل و اتخاذ القرار إضغط هنـــــــــــا لتنزيل الملف
    1 point
×
×
  • اضف...

Important Information