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

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

  1. محمد هشام.

    محمد هشام.

    الخبراء


    • نقاط

      8

    • Posts

      1,544


  2. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      5

    • Posts

      12,354


  3. Moosak

    Moosak

    أوفيسنا


    • نقاط

      2

    • Posts

      2,065


  4. عبدالله بشير عبدالله

Popular Content

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

  1. في المرفقات 3 ملفات الأولى على اعتبارها قاعدة الجداول في البرنامج تم تعديل اسم القاعدة بدلا من (برنامج العقارات 23 _be.accdb) إلى (data23_be.accdb) ... ضعها في مجلد ashraf .. وافتحها وانظر الجدول وامسح القيمة المشفرة ان وجدت الثانية : خاص بك لتشفير التواريخ .. بعد التشفير اذهب الى الجدول ثم انسخ القيمة في الذاكرة الثالثة : هي التي ترسل للعميل .. افتحها على التصميم والصق القيمة في الحقل في الجدول .. ثم ارسلها للعميل تشفير وتحديث جدول خارجي.rar
    2 points
  2. جرب هدا Sub Draw_Circles() Const nMax As Integer = 38 Dim mx, v As Shape, x As Integer, r As Long, c As Long, cnt As Long Call Remove_Circles x = ActiveWindow.Zoom Application.ScreenUpdating = False ActiveWindow.Zoom = 100 mx = Range("s10").Value If mx = 0 Or Not IsNumeric(mx) Then MsgBox "Enter Valid Number In Cell s10", vbExclamation: GoTo Skipper For c = 8 To 2 Step -1 For r = 9 To 13 Step 1 With Cells(r, c) If .Value > 0 Then cnt = cnt + 1 Set v = .Parent.Shapes.AddShape(msoShapeOval, .Left + 2, .Top + 2, .Width - 4, .Height - 4) v.Fill.Visible = msoFalse v.Line.ForeColor.SchemeColor = 10 v.Line.Weight = 2 If cnt = mx Then Exit For End If End With Next r If cnt = mx Then Exit For Next c cnt = 0 Skipper: ActiveWindow.Zoom = x Application.ScreenUpdating = True MsgBox "مبروك...", 64 End Sub
    2 points
  3. وعليكم السلام ورحمة الله تعالى وبركاته جرب هدا = "السيد/ مدير إدارة بمحافظة " & INDEX(C5:C100, MATCH(1, SUBTOTAL(103, OFFSET(C5:C100, ROW(C5:C100)-MIN(ROW(C5:C100)), 0, 1)), 0)) = "السيد/ مدير إدارة بمحافظة " & IFERROR(INDEX(C5:C100, MATCH(1, SUBTOTAL(103, OFFSET(C5:C100, ROW(C5:C100)-MIN(ROW(C5:C100)), 0, 1)), 0)), "لا توجد محافظة") او ="السيد/ مدير إدارة بمحافظة " & INDEX(C5:C100, MATCH(1, SUBTOTAL(103, OFFSET(C5, ROW(C5:C100)-ROW(C5), 0, 1)), 0)) طلب.xlsx
    2 points
  4. وعليكم السلام ورحمة الله تعالى وبركاته يمكنك استخدام احدى الصيغ التالية للحصول على عدد الذكور مع مراعاة الفلترة لان countif بمفردها لن تأخذ الفلاتر في الاعتبار =SUMPRODUCT(SUBTOTAL(103, OFFSET(K52:K750, ROW(K52:K750) - ROW(K52), 0, 1)), --(K52:K750="ذكر")) او =SUMPRODUCT((K52:K750="ذكر")*(SUBTOTAL(103,OFFSET(K52:K750,ROW(K52:K750)-ROW(K52),0,1)))) =SUMPRODUCT(SUBTOTAL(103, OFFSET(K52:K750, ROW(K52:K750) - ROW(K52), 0, 1)), --(K52:K750="أنثى")) او =SUMPRODUCT((K52:K750="أنثى")*(SUBTOTAL(103,OFFSET(K52:K750,ROW(K52:K750)-ROW(K52),0,1)))) القاعدة 2025 - Copy.xlsx
    2 points
  5. السلام عليكم ورحمة الله وبركاته.. كنت اعمل على مشروع للقرآن الكريم، يكون ضمن تطبيق قوت القلوب، صورته في التوقيع 🥰 البرنامج من تصميمي وبرمجتي 100% فاحتجت للقرآن الكريم مرتل ومقسم لايات قمت بالعثور على ختمات كاملة وللعديد من القرآء في موقع Archive.org فقمت بتحويل الروابط الى قاعدة بيانات SQLite تتضمن ترتيل القرآن الكريم على شكل ايات كل آية على حدا وبرابط مباشر، أي ستقوم بتشغيل الصوت من الرابط مباشرة بدون تنزيلة طبعا يمكنكم تشغيل الصوت مباشرة من الويب باستخدام الكثير من المكتبات المجانية مثل NAudio.dll وغيرها... قبل كل شيء، هذا الكود لإنشاء الجدول sounds الذي ستكون فيه روابط الصوت لايات القرآن الكريم في قاعدة البيانات.. 1. تسلسل السورة 2. رقم الآية 3. رابط الملف الصوتي للآية 4. معرف القارئ CREATE TABLE "sounds" ( "surah_number" INTEGER, "ayah_number" INTEGER, "audio_url" TEXT, "reader_id" INTEGER ); 0. احمد نعينع 1. الطبلاوي 2. عبد الباسط 3. المنشاوي 4. الحصري السورس كود للفائدة، الذي يقوم بتوليد الايات حسب السور بلغة NET. Sub GenerateQuranAudioLinks(ByVal baseUrl As String, ByVal reader_id As String) ' عدد الآيات لكل سورة من القرآن الكريم Dim surahAyatCounts As Integer() = { 7, 286, 200, 176, 120, 165, 206, 75, 129, 109, 123, 111, 43, 52, 99, 128, 111, 110, 98, 135, 112, 78, 118, 64, 77, 227, 93, 88, 69, 60, 34, 30, 73, 54, 45, 83, 182, 88, 75, 85, 54, 53, 89, 59, 37, 35, 38, 29, 18, 45, 60, 49, 62, 55, 78, 96, 29, 22, 24, 13, 14, 11, 11, 18, 12, 12, 30, 52, 52, 44, 28, 28, 20, 56, 40, 31, 50, 40, 46, 42, 29, 19, 36, 25, 22, 17, 19, 26, 30, 20, 15, 21, 11, 8, 8, 19, 5, 8, 8, 11, 11, 8, 3, 9, 5, 4, 7, 3, 6, 3, 5, 4, 5, 6 } ' حلقة لتوليد جمل SQL لكل سورة وآياتها For surah As Integer = 1 To 114 Dim surahNumber As String = surah.ToString("D3") ' تحويل رقم السورة إلى 3 أرقام Dim ayatCount As Integer = surahAyatCounts(surah - 1) ' توليد جمل SQL بناءً على عدد الآيات لكل سورة For ayah As Integer = 0 To ayatCount Dim ayahNumber As String = ayah.ToString("D3") ' تحويل رقم الآية إلى 3 أرقام Dim fileUrl As String = baseUrl & surahNumber & ".zip" & "/" & surahNumber & ayahNumber & ".mp3" Dim sqlInsert As String = "INSERT INTO sounds (surah_number, ayah_number, audio_url, reader_id) VALUES (" & surah & "," & ayah & "," & "'" & fileUrl & "'" & "," & reader_id & ");" My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\sql_" & reader_id & ".txt", sqlInsert & vbNewLine, True) Next Next '' تشغيل كل عملية في ثريد منفصل باستخدام Task 'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/128kb---a7mad--n3ena3---morattal------quran----6236---ayaat-----__verse--by---_189/", "1")) 'احمد نعينع 'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/64kb__---mp3------------quran----6236---ayaat-----__verse--by---verse----_-by-/", "2")) 'الطبلاوي 'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/192kb----morattal----quran----6236---ayaat-----__verse--by---verse----_-by--ab_525/", "3")) 'عبد الباسط 'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/128kb____--mp3-------full-----quran----6236---ayaat-----__verse--by---verse---/", "4")) 'المنشاوي 'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/64kb___--mp3-----quran----6236---ayaat-----__verse--by---verse----_-by---alhos/", "5")) 'الحصري End Sub ارفقت لكم البيانات على شكل ملفات TXT لكي تعدلو عليها كيفما شئتم. لا تنسوني ووالدي من صالح دعائكم SQLite.zip
    1 point
  6. ادا كنت قد فهمت طلبك بشكل صحيح ربما هدا سيوفي بالغرض سيتم تنفيد الكود عند التغيير في خلية التسلسل (K1) ورقة الأساسي Sub Test() Dim dest As Worksheet, WS As Worksheet Dim linge As String, arr As Variant Dim i As Long, LastRow As Long, OnRng As Range Dim Irow As Long, j As Long, Cnt As Long Dim dataArr As Variant Set WS = Sheets("البيانات") Set dest = Sheets("الأساسي") linge = dest.[K1].Value If linge = "" Then MsgBox "الرجاء إدخال تسلسل المعلم", vbExclamation: Exit Sub LastRow = WS.Cells(WS.Rows.Count, "A").End(xlUp).Row Set OnRng = WS.Range("A3:A" & LastRow).Find(What:=linge, LookIn:=xlValues, LookAt:=xlWhole) If Not OnRng Is Nothing Then arr = Array("الأحد", "الاثنين", "الثلاثاء", "الأربعاء", "الخميس") Irow = 9 ' <<===== ' تحديد الصف الأول للصق البيانات Cnt = 6 ' <<===== ' ( F عمود) بداية من يوم الأحـــــــــــــد Application.ScreenUpdating = False ' تكرار لكل يوم (من الأحد إلى الخميس) ReDim dataArr(0 To UBound(arr), 0 To 7) ' تخزين 5 أيام و8 أعمدة لكل يوم For j = 0 To UBound(arr) For i = 0 To 7 dataArr(j, i) = WS.Cells(OnRng.Row, Cnt + i).Value Next i Cnt = Cnt + 8 Next j For j = 0 To UBound(arr) For i = 0 To 7 dest.Cells(Irow, i + 2).Value = dataArr(j, i) If IsDate(dest.Cells(Irow, i + 2).Value) Then dest.Cells(Irow, i + 2).NumberFormat = "m/d" ''<===== ' قم بتعديل تنسيق التاريخ بما يناسبك End If Next i Irow = Irow + 1 Next j ' جلب المعلومات الإضافية dest.[C5].Value = WS.Cells(OnRng.Row, 2).Value ' اسم المعلم dest.[K5].Value = WS.Cells(OnRng.Row, 3).Value ' المادة dest.[P5].Value = WS.Cells(OnRng.Row, 4).Value ' الوظيفة dest.[S9].Value = WS.Cells(OnRng.Row, 5).Value ' النصاب ' إجراء الحسابات dest.[S8].Value = Application.WorksheetFunction.CountA(dest.Range("B9:I13")) dest.[S10].Value = dest.[S8].Value - dest.[S9].Value ' إظافة الدوائر بعد تنفيد الكود ' Call Draw_Circles Else MsgBox "لم يتم العثور على تسلسل المعلم" & linge, vbExclamation End If Application.ScreenUpdating = True End Sub صراحة لم أستوعب الفكرة حاول تزويدنا بعينة للنتائج المتوقعة بعد تجربة الاكواد السابقة الاجر V2.xls
    1 point
  7. تعجز الكلمات عن امتنانى وتقديرى لشخصكم الكريم استاذ محمد هشام وهذا ماعهدناه منكم دائما شكرا جزيلا استاذنا الفاضل والشكر موصول لكل عمالقة الاكسل مع تحياتى للجميع
    1 point
  8. أنصحك بعكس تصميم التقرير .. التقرير الرئيسي للآباء .. وداخله تقرير فرعي يظهر الأبناء .. فلو كان الأب ليس لديه أبناء .. يظهر اسم الأب ويختفي التقرير الفرعي 🙂 لديه أبناء ليس لديه أبناء مثال.rar
    1 point
  9. وهذا مرفق للتوضيح ونصيحه لا تجعل اسماء الحقول باللغه العربيه نظام شراء سيارات.rar
    1 point
  10. نعم صحيح .. كنت افكر فيها .. وطبعا هي لا تخفى عليك المهم انه يمكن تطوير عملك ، فبدلا من الذهاب الى العميل .. او بدلا من الدخول على جهازه عن بعد .. يمكنك عمل ملف صغير وارساله للعميل وعند تشغيله يقوم بتحديث قيمة الحقل المشفر في الجدول بقيمة اخرى جديدة مشفرة
    1 point
  11. الاستاذ محمد هشام الفاضل / مبدع بجدارة صاحب الملف الفاضل/ جربت الملف زر الاظافة يعمل بدون اخطاء ا تحياتي لكما
    1 point
  12. شكرا جزيلا استاذ @عبدالله بشير عبدالله المعادلة ممتازة
    1 point
  13. السلام عليكم جرب المرفق الاختيار من القائمة بالضغط مرتين على العتصر المختار واذا كان الرقم غير موجود تاتى رسالة بذلك بالتوفيق واي ملاحظات لا حرج في ذلك test.xls
    1 point
  14. تمام اعتمد هذه عليها بعض التعديلات الجديدة buy_Sell.rar
    1 point
  15. تفضل هذه اساسات .. تم استبعاد الكثير من الحقول التي وضعتها في جدول الحركة مثلا .. التحويل مكانه الاستعلام . والارصدة ايضا ليس مكانها الجدول .. الضريبة نعم يمكن اضافتها مثلها مثل الخصومات الأخرى ادرس المرفق جيدا واي استفسار انا حاضر ان شاء الله .. ملحوظة .. انظر في الاصناف جيدا وانظر الوحدات في التفاصيل .. المعتمد هو اصغر وحدة من الصنف Database1.rar
    1 point
  16. INDEX او MATCH وحدهما لا تسمح لك بجمع نطاق متعدد الأعمدة بناءا على شروط معينة في نطاقات أخرى كما هو الحال مع SUMPRODUCT او SUMIFS لانها غالبا تستخدم لاستخراج قيمة واحدة من نطاق معين بشرط تطابق صف وعمود وليس لجمع نطاق كامل اما ادا كنت بحاجة الى بدائل تنفد نفس المهمة يمكنك استخدام احدى المعادلات التالية =SUMPRODUCT((($O$14:$O$17=I14)*($B$4:$B$7=J14)), MMULT(($C$4:$E$7), TRANSPOSE(COLUMN($C$4:$E$4)^0))) او =SUM(FILTER($C$4:$E$7, ($O$14:$O$17=I14)*($B$4:$B$7=J14))) او =SUMPRODUCT(($O$14:$O$17=I14)*($B$4:$B$7=J14)*$C$4:$C$7) + SUMPRODUCT(($O$14:$O$17=I14)*($B$4:$B$7=J14)*$D$4:$D$7) + SUMPRODUCT(($O$14:$O$17=I14)*($B$4:$B$7=J14)*$E$4:$E$7) او =SUMIFS($C$4:$C$7, $O$14:$O$17, I14, $B$4:$B$7, J14) + SUMIFS($D$4:$D$7, $O$14:$O$17, I14, $B$4:$B$7, J14) + SUMIFS($E$4:$E$7, $O$14:$O$17, I14, $B$4:$B$7, J14) Officena 2.xlsx
    1 point
  17. سأعطيك حيلة صغيرة تحقق لك ذلك بدون الحاجة لكتابة المزيد من الأسطر 🙂 تكتب الكود هكذا : Private Sub ramzText() TextX = (Text4 + "-") & (Text3 + "-") & (Text2 + "-") & (Text1) End Sub والنتيجة : 🙂 ----------------------------------------------------------------------
    1 point
×
×
  • اضف...

Important Information