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

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

  1. kha9009lid

    kha9009lid

    الخبراء


    • نقاط

      20

    • Posts

      1347


  2. أبوبسمله

    أبوبسمله

    الخبراء


    • نقاط

      17

    • Posts

      3467


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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      11

    • Posts

      8723


  4. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      10

    • Posts

      10020


Popular Content

Showing content with the highest reputation on 03/21/20 in all areas

  1. سهله 🙂 بدل ما نأخذ اسم ملف الجداول ومساره من BE_Path = DLookup("[Database]", "MSysObjects", "[Flags]=2097152") 'Path and BE name انت اكتبه يدويا، هكذا BE_Path = "D:\myDB\my_BE.mdb" 'Path and BE name او BE_Path = application.currentdb.path & "\myDB\my_BE.mdb" 'Path and BE name جعفر
    3 points
  2. وعليكم السلام 🙂 انا لا تجربة لي في هذا الموضوع ، ولكني اعتقد عمله يكون بنفس طريقة ميزان السيارات 🙂 قد نستفيد من هذه الروابط : . . . الفكرة هي ، خلي التخاطب يصير بين الجهاز والكمبيوتر ، ومنها نحصل على طرف الخيط 🙂 وطبعا كل جهاز يكون معاه برامجه ، وخصوصا SDK الجهاز ، واللي فيه جميع الاوامر اللي يقبلها الجهاز ، لذا ، شوف شو هي البرامج والملفات اللي تيجي مع الجهاز ، ومنها ننطلق 🙂 جعفر
    3 points
  3. اضافة لما تفضل به الاستاذ @أحمد الفلاحجى اذا لم ترغب في الاستعلام ممكن عملها في النموذج في حدث بعد التحديث للحقل time نضع الكود التالي Me.dated = DateAdd("d", -[time], Date)
    2 points
  4. الاستاذ العزيز @أحمد الفلاحجى فكرة ذكية استخدام اسنعلام التحديث
    2 points
  5. تفضل لك ما طلبت Payroll.xlsm
    2 points
  6. وعليكم السلام شوف الاستعلام لعل هذا ما تريد Expr1: DateAdd("d";-[time];Date()) او استخدم استعلام التحديث لتحديث الحقل dated بالنتيجه تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق exp(1).accdb
    2 points
  7. الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا هل تقصد حذفه من جدولى القيد الاساسى بعد الترحيل ؟ اذا كان كذلك اتفضل ان كان غير ذلك وضح اكثر بارك الله فيك Move Data TableDatabase_up.rar
    2 points
  8. ممتاز 🙂 اروح آخذ غفوة الظهيرة ، والليلة خير ان شاء الله 🙂 جعفر
    2 points
  9. في حدث بعد التحديث للحقل TYPE بعد الكود الذي كتبه اخي احمد ضع الكود التالي Me.OTHER = Me.NUMBER + 10 ولكن ماذا لو اردت تغيير القيمة الى 15 او 20 الافضل اضافة مربع نص للقيمة TEST AA1.accdb
    2 points
  10. الشكر لله ثم لاخواننا واستذتنا جزاهم الله خيرا اخى @عذاب الزمان يفضل بعد ذلك فتح موضوع جديد مراعاه لقوانين الموقع اتفضل ان شاء الله يكون ما تريد تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق TEST AA(2).accdb
    2 points
  11. 😀 والله انا مثلك اخى @kha9009lid هو عنده الحلين يختار بقى اللى يحبه جزاكم الله خيرا
    2 points
  12. IIf([dateexp]<=[datee];"red";"green") ما اعرف انا فهمت المطلوب لكن قلت باشارك exp - Copy.accdb
    2 points
  13. يطول عمرك اخي احمد ونحن نكمل بعض
    2 points
  14. اخى الفاضل @عذاب الزمان اتفضل شروحات من منتدانا العزيز ومن منتدى الفريق العربى للبرمجه جزاهم الله خيرا اخواننا واساتذتنا http://arabteam2000-forum.com/index.php?/topic/250549-استخدام-الدالة-dlookup/ اخى واستاذى العزيز @kha9009lid احسنت بارك الله فيك وجزاك الله خيرا صحيح وشكرا للتنبيه اخى واستاذى @kha9009lid هذا لانى قمت بجعل الحقل غير منضم على ونسيته ارفقته بعد التعديل جزاك الله خيرا TEST AA.accdb
    2 points
  15. كود مختصر اكثر Me.NUMBER = Me.TYPE.Column(2) TEST AA.accdb استاذنا الفاضل @أحمد الفلاحجى في مرفقك بعد التنفيذ لا يتم الحفظ في جدول TBL1
    2 points
  16. وعليكم السلام اتفضل ان شاء الله يكون ما طلبت بعد اختيار حقل type سيتم جلب القيمه فحقل numper تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق TEST AA.accdb
    2 points
  17. استاذي الفاضل محمد سلامه الاتصال بالميزان عن طريق كبل نت ورك اي ميزان من هذه الانواع اكيد له برنامج يتاعمل معه ولا كن توجد برامج من صنع مبرمجين تعمل معه وترسل له بيانات ولكن انا اريد عمل برنامج بالاكسيس يتعامل مع اي ميزان يطبع باركود واستطيع ارسال اصناف وتحديثها في اي وقت
    2 points
  18. اخي الفاضل الموضوع مكرر أكثر من مرة ..... كان بامكانك كتابة للرفع فقط ,,,,,,, على كل حال انظر التعديل على الملف ..... ربما هو طلبك .... db1 (2).accdb
    2 points
  19. السلام عليكم تفضل اخي الكريم طلبك يمكنك تغيير نص الرسالة حسب ماتراه مناسبا تحياتي البرنامج-1.rar
    1 point
  20. بعد اذن الاساتذة الافاضل واتراء للموضوع جرب المرفق قم بفك الضغط وضع المجلد في اي فولدر تريد MyFolder.rar
    1 point
  21. 100%100 True لكن ادرج ماكرو البحث من خلال الحروف (الازار الحمراء) في صفحة All in Order وذلك من اجل سرعة التفتيش عن اسماء بحرف معين
    1 point
  22. الاساتذة @أحمد الفلاحجى و @kha9009lid اخجلتموني بطيبت قلوبكم ومساعدتكم الحمد لله لوجود امثالكم حفظكم الله ورعاكم من كل سوء
    1 point
  23. تم العديل على الماكرو ليتناسب مع ما تريد الاعمدة حيث كلمات معلومة1 /معلومة 2 الخ... (يجب اخفائها من أجل ملاحظة البيانات جيداً) يمكنك اظهارها اذا كانت ضرورية حجم الملف كبير جداً (حوالي 16 ميغا مضغوطاً) لذلك لم استطع رفعه فقط ادرج هذا الكود في ملف تجريبي (نسخة ثانية من نفس الملف) عندك وقم بتجربته (اشدد على النسخة الاحتياطية ربما كان هناك اخطاء و كما تعرف لا يمكن التراجع (Undo) بعد تنفيذ الماكرو) Option Explicit Sub Salim_Code() Rem Created By Salim Hasbaya On 21/3/2020 Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Dim All As Worksheet Dim Source_sh As Worksheet Set All = Sheets("All_In Order"): Set Source_sh = Sheets("data1") Dim RgD As Range, c As Range Dim st$, t$, Mon_array() Dim m%, lr%, lrc%, Er%, lc%, lastRo_data1% lastRo_data1 = Source_sh.Cells(Rows.Count, "D").End(3).Row If lastRo_data1 <= 3 Then Exit Sub Set RgD = Source_sh.Range("D4:D" & lastRo_data1) Mon_array = Array("ا", "ب", "ت", "ث", "ج", "ح", "خ", "د", "ذ", _ "ر", "ز", "س", "ش", "ص", "ض", "ط", "ظ", "ع", "غ", "ف", _ "ق", "ك", "ل", "م", "ن", "ه", "و", "ي") With All .Range("B5").Resize(9999, 11 * 28).ClearContents For Each c In RgD t = Mid(Trim(c), 1, 1) st = Left(t, 1) If st = "أ" Or st = "آ" Or st = "إ" Then st = "ا" m = Application.Match(t, Mon_array, 0) If Not IsError(m) Then lc = (m - 1) * 11 + 3 lr = Application.Max(5, .Cells(Rows.Count, lc).End(xlUp).Row + 1) .Cells(lr, lc - 1).Value = lr - 4 .Cells(lr, lc).Resize(1, 7).Value = _ c.Offset(, -2).Resize(1, 7).Value .Cells(lr, lc + 7).Value = Source_sh.Cells(c.Row, "o") .Cells(lr, lc + 8).Value = Source_sh.Cells(c.Row, "AJ") Else: Er = Er + 1: End If Next .Columns.AutoFit .Range("a1").ColumnWidth = 22 End With MsgBox "تم بحمد الله" & IIf(Er > 0, vbCr & Application.Rept("=", 30) & vbCr & "عدد الاسماء الخطا غير المرحلة" & vbCr & Er, "") Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub
    1 point
  24. وعليكم السلام اتفضل ان شاء الله يكون ما تريد اضغط ع زر الترحيل تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق Move Data TableDatabase_up.rar
    1 point
  25. اخي محمد ، رجاء انزل المرفق الجديد ، شغل البرنامج ، وشغل التقرير ، اريدك لوسمحت تعمل صورة من الشاشة ، واطبع التقرير ، واريد صورة من الورقة المطبوعة 🙂 هذه آخر افكار على بالي ، فرجاء تنفيذها 🙂 جعفر 1186.1.accdb
    1 point
  26. جرب هذا الكود تم تغيير اسم الورقة الاخير ة الى "All_In Order" Option Explicit Sub Salim_Code() 'كود الاستاذ الخالدي ترحيل البيانات حسب الحروف الهجائية Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Dim All As Worksheet Dim Source_sh As Worksheet Set All = Sheets("All_In Order"): Set Source_sh = Sheets("data1") Dim RgD As Range, c As Range Dim st$, t$, Mon_array() Dim m%, lr%, lrc%, Er%, lc%, lastRo_data1% lastRo_data1 = Source_sh.Cells(Rows.Count, "D").End(3).Row If lastRo_data1 <= 3 Then Exit Sub Set RgD = Source_sh.Range("D4:D" & lastRo_data1) Mon_array = Array("ا", "ب", "ت", "ث", "ج", "ح", "خ", "د", "ذ", _ "ر", "ز", "س", "ش", "ص", "ض", "ط", "ظ", "ع", "غ", "ف", _ "ق", "ك", "ل", "م", "ن", "ه", "و", "ي") With All .Range("B5").Resize(9999, 11 * 28).ClearContents For Each c In RgD t = Mid(Trim(c), 1, 1) st = Left(t, 1) If st = "أ" Or st = "آ" Or st = "إ" Then st = "ا" m = Application.Match(t, Mon_array, 0) If Not IsError(m) Then lc = (m - 1) * 11 + 3 lr = Application.Max(5, .Cells(Rows.Count, lc).End(xlUp).Row + 1) .Cells(lr, lc - 1).Value = lr - 4 .Cells(lr, lc).Resize(1, 8).Value = c.Resize(1, 8).Value Else: Er = Er + 1: End If Next .Columns.AutoFit .Range("a1").ColumnWidth = 22 End With MsgBox "تم بحمد الله" & IIf(Er > 0, vbCr & Application.Rept("=", 30) & vbCr & "عدد الاسماء الخطا غير المرحلة" & vbCr & Er, "") Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub tarhil_by_lettrs.xlsb
    1 point
  27. بل اننى طالب لديكم اخوانى واساتذتى اتعلم منكم فاننى مازلت مبتدا احبو على طريق العلم واتحصل معلوماتى كلها منكم اخوانى واساتذتى بالاضافه الى بعض المصادر الاجنبيه التى اكره النظر اليها لعدم اجادتى اللغه الانجليزيه ولكن الله المستعان وييسر الامور جزاكم الله عنا كل خير
    1 point
  28. استاذي الفاضل @jo_2010 في اجابتي لاستفسارك وضعت عبارة x = CurrentRecord اي ان المتغير x = السجل الحالي ثم يتم استكمال بقية الكود وهذا الامر قد يؤدي الى نتيجة غير صحيحة في حالة حذف سجلات في الجدول لكون CurrentRecord يعطي رقم السجل الفعلي باستبعاد السجلات المحذوفة بناء عليه امل اختيار اجابة الاستاذ @خالد سيسكو او اجابة استاذنا ومعلمنا @jjafferr او تعديل السطر الثاني في مشاركتي ليكون x = Me.PCode الملف المعدل مرفق Dental.accdb
    1 point
  29. الاخ العزيز احمد جزاك الله خير .... نعم هو ما اردته فعلا لكن حقيقة هذه الدالة لم افهمها ساحاول اخراج شرحها من النت لاجل فهمها . الف تحيه وشكر لكم جميعا
    1 point
  30. السلام عليكم استاذنا الفاضل سليم حاصبيا وفقكم الله نسال الله سبحانه وتعالى ان لايحرمنا من لمساتك المبدعة وفقكم الله ورزقكم الصحة والعافية وزادكم من فضله انا غيرت الرقم حسب الشيتات الموجود مع القاعدة وهي 20 شيت اي غيرت الرقم الى 20 والكود يعمل بصورة سليمة ورائعة لكم تحياتي ووافر احترامي
    1 point
  31. بالمناسبة جرب تنفيذ هذا الكود و ترى العجائب Sub ARange_sheets() Dim t%, i% Dim col As Object, itm t = Sheets("Main").Index Set col = CreateObject("System.Collections.Arraylist") On Error Resume Next For i = t + 1 To Sheets.Count col.Add CInt(Sheets(i).Name) Next On Error GoTo 0 If col.Count Then col.Sort: col.Reverse For Each itm In col Sheets(itm & "").Move after:=Sheets(t) Next End If Set col = Nothing End Sub
    1 point
  32. بعد اذنكم مااريده هو مثلا 0.90*0.90=0.81 يعني اقل من واحده يعطيني النتيجة 250 ريال بينما اذا كان واحد اواكثر يعطيني 350 ريال العرض × الطول × العدد = المساحة ( يعني اذا كانت المساحة اقل من 1 يعطيني الناتج 250 اما اذا 1 او اكثر يعطيني الناتج 350 وشكرا لكم واسف لازعاجكم ومنكم نتعلم FoMaNsHeE شكررررررررررررررررررررررررررررررا لكم وعلى القائمين على هذا الموقع المعادلة المطلوبه تمام
    1 point
  33. في هذه الجزئية من الكود فقط اجعل الحلقة التكرارية تبدأ من الرقم 4 ( وهو رقم الصفحة الني يبدأ الكود عمله منها)
    1 point
  34. الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا وفيك بارك الله اخى @ازهر عبد العزيز
    1 point
  35. اسف استاذي جعفر ظنيت ان ذكري للمصدر الذي وجدت فيه مطلوبي كان يكفي جزاكم الله عنا خيرا
    1 point
  36. تم حل مشكلة الفلترة مع اضافة تنسيق التاريخ الى combobox سيتم تصدير الورقة FilteredData الى مجلد الملف الاصلي كملف جديد مع امكانية اختيار اسم لهذا الملف test.rar
    1 point
  37. حل جميل استاذ @خالد سيسكو ومن باب اثراء الموضوع حل احر عن طريق دالة Switch =Switch([f_sex]=1;"ذكر";[f_sex]=2;"انثى") قائمة منسدلة31.accdb
    1 point
  38. السلام عليكم مشاركة مع الاستاذ @kha9009lid دالة بنفس الحفل تحياتي قائمة منسدلة.rar
    1 point
  39. طريقة اخرى عن طريق مربع تحرير وسرد قائمة منسدلة2.accdb
    1 point
  40. تم التعديل كما تريد Option Explicit Sub Create_Sheet_WITH_HYPER() Rem =======>> CREATED BY SALIM HASBAYA ON 20/3/2020 Dim Tg As Worksheet Dim i%, My_name$ Dim RGA As Range, Var_Rg As Range Dim Final_Rg As Range, Ro% Application.ScreenUpdating = False Set RGA = Salim.Range("C8").CurrentRegion.Columns(1) If Salim.AutoFilterMode Then Salim.Range("c8").CurrentRegion.AutoFilter End If Application.DisplayAlerts = False For Each Tg In Sheets If Tg.Name <> "Salim" Then Tg.Delete Next Tg Application.DisplayAlerts = True For i = 4 To 6 'تستطيع ان تغير الرقم 7 الى اي رقم اقل من 72 (عدد الأعمدة+4) Set Var_Rg = Salim.Cells(8, i).CurrentRegion.Columns(i - 2) Var_Rg.AutoFilter 1, Criteria1:="<>" If Len(Salim.Cells(8, i)) > 30 Then My_name = Left(Salim.Cells(8, i), 30) Else My_name = Salim.Cells(8, i) End If Sheets.Add(after:=Sheets(Sheets.Count)).Name = My_name With ActiveSheet RGA.SpecialCells(12).Copy .Range("B2") Var_Rg.SpecialCells(12).Copy .Range("C2") .Range("B:C").Columns.AutoFit .Hyperlinks.Add Anchor:=.Range("E2"), Address:="", SubAddress:= _ "Salim!A9", TextToDisplay:="Goto SALIM" End With Set Final_Rg = ActiveSheet.Range("B2").CurrentRegion Ro = Final_Rg.Rows.Count If Ro > 1 Then With ActiveSheet .Range("A2") = "N#" .Range("A" & Ro + 2).Offset(, 1) = "Sum" .Range("A3").Resize(Ro - 1) = Evaluate("Row(1:" & Ro & ")") .Range("A" & Ro + 2).Offset(, 2).Formula = "=SUM(C3:C" & Ro + 1 & ")" .Range("A" & Ro + 2).Offset(, 2).Value = _ .Range("A" & Ro + 2).Offset(, 2).Value .Range("B2:b3").Copy .Range("A2").Resize(Ro).PasteSpecial Paste:=xlPasteFormats .Range("A" & Ro + 2).Resize(, 3).PasteSpecial Paste:=xlPasteFormats End With Application.CutCopyMode = False End If Salim.Range("C8").CurrentRegion.AutoFilter '============================ Next Salim.Select Application.ScreenUpdating = True End Sub الملف مرفق من جديد My_NEW_filter.xlsm
    1 point
  41. جرب هذا الكود Option Explicit Sub find_Over_Three() Dim R%, i% With Range("Bq5").Resize(187, 2) .ClearContents .Interior.ColorIndex = xlNone End With R = Cells(Rows.Count, 1).End(3).Row With Range("Bq5").Resize(R - 4) .Formula = "=COUNTIF(B5:BP5,""شخصى"")" .Value = .Value End With For i = 5 To R If Cells(i, "Bq") > 3 Then Cells(i, "Bq").Interior.ColorIndex = 6 End If Next End Sub الملف مرفق April.xlsm
    1 point
  42. اتمنى يكون ده المطلوب =IF(A1=0,"",IF(A1>=1,350,IF(A1<1,250))) وشكرا New Microsoft Excel Worksheet.xlsx
    1 point
  43. تفضل عدد الشهور المستحقة حتى الان.xls
    1 point
  44. السلام عليكم أخي الكريم ممكن تراجع هذا الموضوع قد يكون هو ماتريد
    1 point
  45. السلام عليكم خطرت فكرة علي بالي ان يوجد امامي جدول علي شكل متنامي باكود لا اتدخل فيه للجمع مثلا و احترت في الشكل و اشياء اخري كثيره و افكار ايضا يمكن ان تضاف المهم بعد فتره وجدت فكره لذلك قد تكون جيده من وجة نظري و غير ذلك من وجهة نظر اخري عموما الفكره في البدايه و كما ذكرت قد تكون هناك اضافات اخري ان شاء الله ارجو التجربه و اخباري بالنتيجه تحياتي Dinamic_Sum.rar
    1 point
  46. السلام عليكم هذا حل آخر باستخدام التصفية المتقدمة وبدون دبل كليك اختار اسم الصف تتغير قائمة الإسم حسب اسم الصف ويمكن تطبيقها على الدبل كليك اذا اردت مع التحية رصد الغيابات.rar
    1 point
×
×
  • اضف...

Important Information