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

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

  1. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      11

    • Posts

      12869


  2. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

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


    • نقاط

      8

    • Posts

      13165


  3. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      7

    • Posts

      7053


  4. محمدنجار

    محمدنجار

    04 عضو فضي


    • نقاط

      5

    • Posts

      637


Popular Content

Showing content with the highest reputation on 10/10/16 in مشاركات

  1. السلام عليكم ورحمة الله وبركاته كود البحث المتقدم باستخدام المصفوفات VBA Arrays قدم لنا الأخ الغالي ياسر العربي صاحب الجولات والصولات كود رائع ، ويستخدم الكود في البحث المتقدم ، وقد استخدم المصفوفات والتي هي عشقي في التعامل مع الأكواد ، حيث يتم تنفيذ جميع أسطر الكود بالذاكرة بعيداً عن التعامل بشكل مباشر مع ورقة العمل ، مما يجعل الكود أسرع مئات المرات من استخدام الحلقات التكرارية العادية. وقد ارتأيت أن أقوم بشرح لأسطر الكود ليكون مرجع لكل طالب علم ولكل باحث في هذا الخصوص ، ولنبدأ مرحلة جديدة من عالم الأكواد باستخدام المصفوفات VBA Arrays ، لما لها من مرونة عالية وسرعة فائقة في تنفيذ الأكواد. يوجد بالمرفق ورقتي عمل أحدهما باسم Data وفيها البيانات الخام من 14 عمود ، والورقة الأخرى باسم Result للنتائج وبها الخلية G2 والتي توضع بها نص الكلمة المراد البحث عنها. وإليكم الكود مع الشرح بالتفصيل (وضعت مثال بسيط ليستطيع المتتبع للشرح فهم الكود بسهولة) Sub Araby_Search() 'تعريف المتغير لورقة العمل التي تحتوي على البيانات الخام Dim wsData As Worksheet 'تعريف المتغير لورقة العمـل المطلـوب إظهـار النتائـج بها Dim wsResult As Worksheet 'تعريف المتغير ليحمل قيم المصفـوفة للبيانات الخـام Dim Arr As Variant 'تعريف المتغير ليحمل قيم المصفوفة للنتائج المطلوبة Dim Temp As Variant 'تعريـف المتغير من النـوع النصي ليحمـل قيمة أو نص البحث 'أي الكلمة المطلوب البحث عنها يتم تخزينها في هذا المتغير Dim strSearch As String 'تعريف المتغير وسيستخدم في الحلقة التكرارية لصفوف المصفوفة Dim I As Long 'تعريف المتغير وسيستخدم في الحلقة التكرارية لأعمدة المصفوفة Dim J As Long 'تعريف المتغير وسيستخدم في مصفوفة النتائج لزيادة مقدار الصفوف بمقدار واحد Dim P As Long 'تعيين قيمة للمتغير ليساوي ورقة العمل التي تحتوي '[Data] على البيانات الخام المطلوب معالجتها والمسماة Set wsData = Worksheets("Data") 'تعيين قيمة للمتغير ليساوي ورقة العمل التي تريد إظهار '[G2] النتائج بها بمجرد إدخال قيمة أو نص محدد في الخلية Set wsResult = Worksheets("Result") 'مسح النطاق الذي توضع فيه النتائج استعداداً لوضع النتائج الجديدة wsResult.Range("A8:N10000").ClearContents '[G2] تعيين قيمة للمتغير ليساوي قيمة الخلية 'وهي الخلية التي ستوضع فيها نص الكلمة المطلوب البحث عنها strSearch = wsResult.Range("G2").Value 'تعيين قيمـة للمتغير ليحمل قيم النطاق بالكامل للبيانات الخام ' وذلك [Data] حيث أن مصـدر البيانات الخام ورقة العمل المسماة 'عند [N] وينتهي في العمود [A5] في النطاق الذي يبدأ من الخلية '[&] آخـر صف به بيانات ، ويتم تحديده عن طريـق الجزء بعد علامـة Arr = wsData.Range("A5:N" & wsData.Cells(Rows.Count, 1).End(xlUp).Row).Value 'والتي ستحمل قيم النتائج [Temp] إعادة تعيين أبعاد المصفوفة المسماة '[Arr] وتكون بنفس أبعاد المصفوفة التي تحمل البيانات الخام والمسماة 'سنعتبر المصفوفة أشبـه بالصفـوف والأعمدة حيث الرقـم 1 يمثـل الصفـوف 'بإرجاع أكبر قيمة [UBound]بينما الرقم 2 يمثل الأعمدة ، وتقوم الكلمة 'أبعاد المصفوفة في هذه الحالة >> '------------------------------- 'البعد الأول سيكون من 1 إلى أكبر قيمة للصفوف 'البعد الثاني سيكون من 1 إلى أكبر قيمة للأعمدة ReDim Temp(1 To UBound(Arr, 1), 1 To UBound(Arr, 2)) 'حلقة تكرارية من الصف الأول للمصفوفة إلى آخر صف بها For I = 1 To UBound(Arr, 1) 'إذا كان النص المطلوب البحث عنه فارغ يتم الخروج من تنفيذ الكود If strSearch = "" Then Exit Sub 'هذا السطر هو أهم سطر بالكود حيث هو الشرط الذي من خلاله 'والشرط [Temp] ستوضع النتائج في مصفوفة النتائج المسماة 'هـو تطابق قيمة المصفوفة في صف الحلقة في العمود رقم 14 'حيث يمثـل الرقم 14 العمود داخـل مصفوفة البيانات الخام '[strSearch] يتـم اختبـار التطابـق مع نـص البحث المسمى If Arr(I, 14) Like "*" & strSearch & "*" Then 'زيادة مقدار المتغير بمقدار 1 'فائدة المتغير هنا هو أنه مع كل حلقة تكرارية 'إذا تحقق الشرط فقط يزيد المتغير بمقدار واحد 'ليمثل هذا المتغير صفوف مصفوفة النتائج الجديدة P = P + 1 'حلقة تكرارية داخلية من العمود الأول للمصفوفة إلى آخر عمود بها For J = 1 To UBound(Arr, 2) 'تعبئـة مصفـوفة النتائـج بالبيانات مـن مصفوفة البيانات الخام '[Temp]مثـال لتتضح صورة كيفية تعبئة المصفوفة الجديدة المسماة 'في أول حلقـة سيكون مقداره 1 ويمثل أول صف [P] المتغيـر المسمى 'أول صف هنا لمصفوفة النتائج 'في أول حلقة سيكون مقداره 1 ويمثل أول عمود [J] المتغير المسمى 'في أول حلقة سيكون مقداره 1 ويمثل أول صف [I] المتغير المسمى 'أول صف هنا لمصفوفة البيانات الخام Temp(P, J) = Arr(I, J) 'الانتقال للحلقة التالية للأعمدة Next J 'نهاية جملة الشرط وهو تطابق نص البحث مع العمود رقم 14 في المصفوفة End If 'الانتقال للحلقة التالية في صفوف مصفوفة البيانات الخام Next I 'إذا كانت قيمة المتغير أكبر من صفر فهذا يعني أنه تم إيجاد نتائج للبحث 'حيث أن زيادة المتغير كما أوضحنا مقرونة بتحقق الشرط وطالما تحقق الشرط 'فهذا يعني أن مصفوفة النتائج سيكون بها بيانات ومن ثم يتحقق الجزء الثاني '[A8] وضع نتائج مصفوفة النتائج في أول خلية في ورقة النتائج في الخلية '[P] ويتم تمديد النطاق بمقدار عدد الصفوف طبقاً لقيمة المتغير المسمى '[Temp] وبمقدار عدد الأعمدة طبقاً لأكبر عدد لأعمدة المصفوفة المسماة If P > 0 Then wsResult.Range("A8").Resize(P, UBound(Temp, 2)).Value = Temp End Sub لتحميل الملف المرفق وللإطلاع على الموضوع الأصلي قم بزيارة الرابط التالي رابط الموضوع من هنا
    3 points
  2. السلام عليكم ورحمة الله .... اخوتي الكرام ::: اسمحو لي بالمشاركة معكم في طرح بعض الافكار اللتي قد تنفع ؟؟؟ ::: اوافق شيخ المنتدى المحترم ابو خليل فيما قال .. وباعتقادي يجب ان يتمحور بناء القاعدة على جدول المرضى بمفتاح اساسي لكود المريض ... ::: الجدول الثاني المهم هو جدول الزيارات حيث يرتبط مع جدول المرضى راس لاطراف ... على اعتبار ان لكل مريض عدة زيارات ... ::: ثم تاتي الجداول الفرعية للنشاطات الطبية المختلفة (مختبر , اشعة , صيدلية , فاتورة الاسعار ......الخ) , والتي ترتبط مع جدول الزيارات ايظا راس باطراف ...
    3 points
  3. السلام عليكم احببت المشاركة معكم علما انني لم اطلع على المرفق ، ولكن كما ذكر الاستاذ محمد الجداول ثم الجداول ثم الجداول يجب ان تصور مسار العملية في مخططك : ترسم الخطوات واحدة واحدة ما علينا من العلاقات ولا ايهما الرئيس سأطرح مطلب وعليه يتم التفكير في كيفية التصميم كمثال المطلب : قد يراجع المريض مرات عدة وحالات مرضية عدة خلال اشهر او سنين اريد ان استعلم عن زيارة مريض ما في يوم ما فيخرج لي في صفحة واحدة الاجراءات التي تمت عليه خلال ذلك اليوم في صفحة واحدة نتائج المختبر والاشعة والتشخيص او الحالة والدواء المصروف والطبيب المعالج ومن صرف الدواء / ومجموع التكلفة المالية ان وجدت .
    3 points
  4. بسم الله الرحمن الرحيم اقدم لكم كود بحث متقدم كود بحث متقدم يفوق معظم أنواع البحث بالاعتماد على المصفوفات لضمان كفاءة عالية للبحث وسرعة جلب البيانات والمرونة العالية به من حيث البحث داخل كل الأعمدة الموجودة داخل النطاق تم توضيح المتغيرات التي تستطيعوا تعديلها لتتوافق مع ملفاتكم الكود المستخدم داخل الملف Sub Yasser_Serch() Dim myArray, lr, X, targt, targtN Dim SERCH As Worksheet, DATA As Worksheet '____________________________________________ Set DATA = Worksheets("Sheet2") 'اسم شيت قاعدة البيانات Set SERCH = Worksheets("Sheet1") 'اسم الشيت الخاص بالبحث '____________________________________________ lr = DATA.Cells(Rows.Count, 1).End(xlUp).Row 'اخر صف به بيانات SERCH.Range("A4:J" & SERCH.Cells(Rows.Count, 4).End(xlUp).Row + 1).ClearContents 'مسح نطاق البحث القديم targt = SERCH.Range("e1").Value 'خلية البحث targtN = Application.WorksheetFunction.Match(SERCH.Range("D1"), SERCH.Range("A3:J3"), 0) 'دالة لايجاد رقم عمود البحث myArray = DATA.Range("A2:J" & lr + 1) 'نطاق قاعدةالبيانات الذي سيتم البحث فيه '____________________________________________ ReDim Y(1 To lr, 1 To 10) For X = 1 To lr If targt = "" Then Exit Sub If myArray(X, targtN) Like targt & "*" Then rw = rw + 1 Y(rw, 1) = myArray(X, 1): Y(rw, 6) = myArray(X, 6) Y(rw, 2) = myArray(X, 2): Y(rw, 7) = myArray(X, 7) Y(rw, 3) = myArray(X, 3): Y(rw, 8) = myArray(X, 8) Y(rw, 4) = myArray(X, 4): Y(rw, 9) = myArray(X, 9) Y(rw, 5) = myArray(X, 5): Y(rw, 10) = myArray(X, 10) End If Next X If rw > 0 Then SERCH.Cells(Rows.Count, 1).End(xlUp)(2, 1).Resize(rw, 10).Value = Y() End Sub لتحميل الملف اضغط هنا اعداد / ياسر العربي تقبلو تحياتي
    2 points
  5. الانتقال الآلي المرتب للعملية : هذا التحليل ينطبق على غالب البرامج الادارية في الدوائر الحكومية والشركات وغيره مع ملاحظة الفوارق في الاختصاصات والاجراءات المنفذة نحن الآن في مؤسسة طبية : 1- استقبال المريض / تسجيل بياناته او استخراج حسابه ان وجد ثم تحويله الى : الفحص الاولي لاحظ انه يمكن ظهور اسماء المرضى اصحاب المواعيد أليا على الشاشة 2- الفحص الاولي : بعد اجراء الفحوصات تسجل النتائج ويتم تحويله الى الطبيب 3- الطبيب : يتم التشخيص وقد يتم تحويله الى / المختبر / الاشعة وقد يكتفي الطبيب بتسجيل الحالة وصرف الدواء 4- في المختبر او الاشعة يتم تسجيل النتائج 5- يرجع المريض الى الطبيب / فتكون النتائج امامه ليسجل الحالة ويصف الدواء 6- قد يحول الطبيب المعاملة الى قسم المواعيد لحجز موعد 7 - يذهب المريض الى الصيدلية لاستلام الدواء المطلوب تصور لتطبيق هذه الخطوات وكيف ستتم مع مراعاة المرونة في ذلك وامكانية التطوير في المستقبل
    2 points
  6. تم رفع هذا الكود فى مشاركة منفصله حتى لا ننسى هذه المشاركة كود ترحيل البيانات بشكل مميز + شرح مصور تم ارفاق المشاركه من الفاضل _ أ / أحمد بكر مع الكود On Error Resume Next If Range("a3") = "" Or Range("b3") = "" Or Range("c3") = "" Then MsgBox "bla bla1", vbDefaultButton1, "bla bla1 " Else azsh = Sheet2.Range("c50000").End(xlUp).Row + 1 Sheet1.Range("A3:C3").Copy Sheet2.Cells(azsh, 1).PasteSpecial Paste:=xlPasteValues MsgBox "bla bla2", vbDefaultButton1, "bla bla2 " Sheet1.Range("A3:C3") = "" End If مع الشرح الموضوع : كود ترحيل البيانات بشكل مميز سأتناول أولا : شرح الكود حتى يسهل على الجميع أستخدامة داعيا الله ان يوفقنى الى ما يحبة ويرضة أ - سأقوم بضرب مثال يفضل ان تنفذة معى لكى تصل لكيفية عمل الكود وتطويعه لما تريد عملة أبدأ بفنح ملف أكسيل جديد : قم بتسمية ورقة العمل الاولى بأسم ادخال بيانات والورقة الثانية فواتير ثم فى صفحة العمل الاولى والتى تسمى بـ ادخال البيانات قوم بتصميم جدول كما هو موضح فى الصورة ثم تصميم زر فى نفس الصفحة حتى يصبح بنفس الشكل هذا لم لا يعرف كيفية تصميم زر يمكنة ذلك من خلال : ----------------------------------------------------- اصدار 2003 من مربع أدوات التحكم > ادارج زر ------------------------------------------------------ اصدار 2007 من المطور > ادراج زر ------------------------------------------------------- وفى الصفحة الثانية التى تم تسميتها باسم فواتير نصممها على هذا الشكل بعد تصميم تسمية الصفحتين والزر فى الصفحة الاولى يمكنك اضافة الكود من خلال اختيار وضع التصميم والضغط على الزر الذى سبق تصميمة دبل كليك ايسر على الماوس ثم نضع الكود التالى وسأقوم بشرحة تفصيليا كما بالصورة (الكود مرفق ) الجزء الاولى من الكود الجزء الثانى من الكود الجزء الثالث من الكود الجزء الرابع من الكود الجزء الخامس من الكود الجزء السادس والأخير ملاحظة : الكود يرحل بترتيب الادخال . و لا تنسونا من صالح الدعاء ترحيل بين ورقتين_احمد بكر.rar كود ترحيل البيانات- أوفيسنا (1).rar
    2 points
  7. دا مثال بسيط لتشغيل الفيديو داخل ملف الاكسيل كل ما عليك هو تغيير مسار الفيديو لملف فيديو موجود على جهاز Video.rar
    2 points
  8. ::: الراس هو جدول المرضى .... طبعا
    2 points
  9. أستاذي الكبير / أبــــو البراء اردت ان اسجل مدي تقديري واعجابي باعمال حضرتك الاكثر من رائعة التي طالما استفيد بها والشكر موصول لاستاذي / ياسر العربي بارك الله فيك خالص تقديري واحترامي لشخصكم المحترم
    2 points
  10. السلام عليكم استفدت مؤخرا بكود ممتاز لـ TEXT BOX أمكنني من البحث بمجرد كتابة الحرف الأول فقط ... للأسف لا أذكر من صاحبه لأشكره على مجهوده. المطلوب تعديل لهذا الكود بحيث يبحث عن الكلمة في كل الخلية وليس الأحرف الابتدائية لها فقط . الكود هو : Private Sub TextBox1_Change() Dim lastrow As Long lastrow = Range("N65535").End(xlUp).Row If ActiveSheet.TextBox1.Text <> "" Then Range("$A$2:$R$" & lastrow).AutoFilter Field:=14, Criteria1:= _ "=" & TextBox1.Text & "*", Operator:=xlOr Else Range("$A$2:$R$" & lastrow).AutoFilter Field:=14, Criteria1:= _ "=" & ActiveSheet.TextBox1.Text & "*", Operator:=xlOr End If End Sub ولكم جزيل الشكر
    1 point
  11. الأخوة الكرام أعضاء المنتدى .. السلام عليكم ورحمة الله وبركاته هذا و نزولا على رغبتكم بترك نسخة مجانية بدون تشفير للتعليم ، لوجه الله تعالى وإن كنت أرى أننى لم أقدم الجديد فى هذا المجال بالقياس إلى علمكم الواسع الذى اقف أمامه عاجزا على محاكاته فهذا رابط تحميل نسخة من البرنامج http://up.top4top.net/downloadf-283g1ra1-rar.html ولكم منى جميعا فائق الاحترام والتقدير اساتذتى الكرام
    1 point
  12. السلام عليكم ورحمة الله وبركاتة أسعد الله أوقاتكم بكل خير ومحبة وسعادة أولاً أتمنى أن تقبلوني أخ لك في هذا المنتدى الرائع والذي جعلني أتصفحه بشكل يومي ولساعات كثيرة نظرا لتلبية طلبات الاعضاء والاهتمام الزائد من قبل الادارة الكريمة وخاصة الأخ ضاحي الغريب له مني شكر خاص على اهتمامه الكبير في المنتدى .. سأبدا في الموضوع لكي لا أطيل عليكم في الوقت محتاج نموذج بسيط جدا وهو عبارة عن إيداع نقدي وسحب نقدي بإختصار نموذج بنكي نظراً لأن معاملتي لدي البنك كثيرة وبشكل يومي احتاج لنموذج بنكي لكي اسجل به المبلغ الذي اودعته والمبلغ الذي سحبته شرح بسيط عن النموذج وبعض الامثلة الذي اريدها : أن يكون خيار إسمه ( قسيمة إيداع نقدي ) عندما أقوم بالضغط على هذا الخيار يظهر لي صفحة بها خانات كالتالي : تاريخ الحركة بالميلادي : 05/01/2014 رقم التلر : 1003 الوقت : 20:34:13 رقم الحساب : 0605630 الحساب المرجعي : 000/0300/003/0605630/0482 اسم المودع : *************************** المبلغ المودع : 200.00 دولار أمريكي قيمة العمولة : 00.00 دولار المجموع الكلي : 200.00 دولار امريكي فقط لا غير المبلغ بالاحرف : مئتان دولار أمريكي فقط لا غير -------------------------------------------------------------------------------------------------------------------------- خيار السحب النقدي وهو عندما اقوم بالضغط على السحب النقدي تظهر لي صفحة بامكاني ان اسجل بها المبلغ الذي سحبته والتاريخ ورقم الحساب كما ذكرت اعلاه .. الرجاء من الاخوة الذين لهم خبرة في هذا المجال مساعدتي وذكر لي المبلغ ومدة العمل وانا مستعد ادفع المبلغ المطلوب بانتظار الرد
    1 point
  13. الحمدلله وبعد جهد جهيد وجدت ضالتي في هذه الساعة، وبالرغم من توفر بعض الساعات النادرة في ملفات الإكسيل، إلا أنها تعيبها بعض الأمور منها: 1- عمل الساعة في الخلفية مما يعطل تنفيذ بعض الأوامر وتجميد ورقة العمل. 2- رتابة التصميم. 3- عدم توافقها لبعض إصدارات الإكسيل والوندوز. ولذلك تم تفادي هذه المشاكل مع إمكانية التصميم المرن للساعة حيث أننا فصلنا كل رقم من الساعة (digit) ليعمل بشكل منفصل ومترابط مع الأجزاء الأخرى، وكل من يشاهد التصميم يتوق بأنه قد تم برمجته بلغات الويب المتقدمة كالجافا.. نتمنى أن ينال إعجابكم ولا تنسونا من الدعاء clock03.rar
    1 point
  14. تفضل بعد تحويل القاعدة الى mdb لا بد من مشاكل مصاحبة لذا اقوم بتجديد الكائنات db1.rar
    1 point
  15. اضافة 1 هنا بسبب اختلاف المصفوفات عن النطاقات من حيث انها تبدأ بصفر جرب شيل ال1 وهديك out of range طبعا طالما هنخش ع المصفوفات وشغلها ونبعد عن النطاقات دي وطبعا بعيد عن زود واحد نقص واحد الحل الامثل كما ذكرت Private Sub TextBox1_Change() Dim myArray, lr, X, targt, targtN Dim DATA As Worksheet '____________________________________________ Set DATA = Worksheets("Sheet2") '____________________________________________ lr = DATA.Cells(Rows.Count, 1).End(xlUp).Row ListBox1.Clear targt = TextBox1.Text targtN = ComboBox1.ListIndex + 1 myArray = DATA.Range("A2:J" & lr) '____________________________________________ ReDim y(1 To UBound(myArray, 1), 1 To UBound(myArray, 2)) For X = LBound(myArray) To UBound(myArray) If targt = "" Then Exit Sub If myArray(X, targtN) Like targt & "*" Then rw = rw + 1 For yy = 1 To 10 y(rw, yy) = myArray(X, yy) Next yy End If Next X If rw > 0 Then ListBox1.AddItem ListBox1.List = y() End If End Sub منتظر التعديل التالي ولا اقولك لا مش هعدل طالما النتائج سليمة
    1 point
  16. جزاكم الله خيرا اعتذر لاثقالى عليكم استاذى الحبيب ولكن لى وقفة هنا طيب وبهذه الطريقه يا استاذى الجليل ومعلمى القدير ماذا لو احببنا نسخ قيم كل الحقول من النموذج الاول الى النموذج الثالنى ؟ وهذا سؤال رمهانى تذكر معى هذه المشاركة الرمهانية
    1 point
  17. اسمحوا لى فى ابداء فكرة قد يحتاجها اخونا السائل وقد تكون نوعا ما مهمه هل نحتاج فى القاعدة جدول لتحديد مواعبد للحجز لتنظيم الحجز لمواعيد الكشف والاستشارات وان كان اكثر من طبيب هل نحتاج جدول للاطباء بما يتماشى مع مواعيد تواجدهم يما يترتب عليه الحجز وكذلك يضاف الطبيب المعالج فى تقرير المريض لمعرفة الاطباء او الطبيب الذى ييتابع الحالة ؟ مجرد افكار بسيطة قد تفيد
    1 point
  18. شكر الله لكم حسن صنيعكم وقضاء حوائج اخوانكم واجزل لكم العطاء ان شاء الله على ما تقدمونه من جهد وعطاء
    1 point
  19. اضم صوتى لاخى الحبيب شيفان فضلا قم بارفاق المرفق الذى يحتوى على هذه المشكله تسهيلا على الاخوة والاساتذة ممن يريد تقديم المساعدة لحضرتك
    1 point
  20. كود روعة يا ابو العربى خاصة مع استخدام المصفوفات تحياتى
    1 point
  21. ممكن استسمح حضرتك فى مرفق من القاعدة التى بها هذه المشكله ان شاء الله رب العالمين قد يكون عندى لهذه المشكلة حل بامر الله
    1 point
  22. كما قال لي استاذ رمهان الكتب ثم الكتب ثم الكتب ثم الكتب و انا اقول : دور على برامجات مصادر مفتوحة من كل نوع وناقش في نفسك كيف عملت هذا و انظر لعلاقات الجداول و اهتم بالاكود واسأل كيف عملت هذه الاكواد وما معناها هذا طريقي اخوك شفان ريكانى
    1 point
  23. السلام استاذي الكريم ابو خليل انا اويد كلامك وكلام اخينا محمد النجار وارى ان جدول المرضى وتحديدا رقم المريض هو المحور الاساسي عن طريق هذا الرقم نستطيع عرض كل شيئ اخي الكريم ارجو منك شرح اسماء الجداول لكي استطيع وضع فكرة لعمل البرنامج
    1 point
  24. مطلب آخر يحدد بدقة الجداول المطلوبة وهو حصر الخطوات التي تمر بها العملية ، والانتقالاات بين الاقسام
    1 point
  25. معلومة غير دقيقة التقارير ستظهر ولكن الذي لن يظهر هي القائمة المختصرة
    1 point
  26. بارك الله فيك أخي وحبيبي في الله خالد الرشيدي والذي طالما أحببت تواجده الدائم فيما بيننا لما له من مكانة عالية بيننا مشكور على مرورك الكريم أخي عاطف وإن شاء الله إذا لم يتدخل أحد الأخوة سأحاول العمل على طلبك
    1 point
  27. وقد ينوب عنه حقل تاريخ الزيارة
    1 point
  28. المرفق الخاص بالاستاذ الحسامي يوجد فيه شرح وافي وشامل لن تجده في اي كتاب
    1 point
  29. جزاك الله خيرًا .... فكرة ممتازه بالفعل بالفعل لمسات محترف الأخوة الأفاضل السلام عليكم ورحمة الله وبركاته صراحة الواحد بيدخل المنتدى الحبيب بيكون فكره فى حاجه صغيره ، بيطلع من المنتدى بعد مساعدة الأخوة الأفاضل بأفكار أكثر مما كان يتوقع ويحلم لذا جزاكم الله خيرًا كثيرًا على حسن المساعدة والاهتمام واللمسات الفنيه التى نتعلمها منكم جميعًا ونفعنا الله وإياكم بهذا العلم وجعله فى ميزان حسناتكم والسلام عليكم ورحمة الله وبركاته
    1 point
  30. السلام عليكم كود يشمل رقم الصف و العمود و الحرف الذي ينتمي اليه العمود في آن واحد Sub MMMM() Dim CLO As Integer, NR As Integer, NC As String NC = Split(ActiveCell.Address, "$")(1) NR = Split(ActiveCell.Address, "$")(2) COL = Range(Split(ActiveCell.Address, "$")(1) & "1").Column MsgBox "العمود : " & COL & Chr(13) & NC & " : الحرف" & Chr(13) & "الصف : " & NR, vbInformation + vbMsgBoxRight, "" End Sub
    1 point
  31. استاذي الفاضل husamwahab السلام عليكم ورحمة الله وبركاته كلمة شكرا قليلة في حقك ربي يحميك من كل شر يارب احسنت هذا هو المطلوب جزاك الله كل الخير
    1 point
  32. تفضل وولعنصر الاول فتحت النموذج الثاني ممررا له قيمة من النموذج الاول وعند الفتح للنموذج الثاني اصبحت الخاصية openargs بها قيمة ممرة لها من النموذج الاول استطيع قراءتها عند حدث عند الفتح تحياتي copy txt val.rar
    1 point
  33. ههههههههههههههه ربنا ما يحرمنا من لمساتك الرمهانية جزاكم الله خيرا دائما وابدا هناك لمسات رمهانية وادى المرفق الرمهانى Test_2.rar
    1 point
  34. فكرة حلوة ويمكن الاستمرار بان ياخذ الامر نص الاختيار عنوانا Private Sub cmb_Committe_AfterUpdate() btn_DropCommittee.Caption = cmb_Committe End Sub بالتوفيق
    1 point
  35. بارك الله فيك أخي الكريم أبو حنف وجزيت خيراً بمثل ما دعوت لنا تقبل تحياتي
    1 point
  36. اخي عبدالعزيز هذا المطلوب ختلف عن المطلوب باول مشاركة ! واعتقد ان الاستاذ شيفان اجاب على اخر طلب وهناك فكرة ان تربط الترقيم بان السجل جديد ليصبح كود بعد التحديث لاسم ولي الامر كالتالي Private Sub FATHER_NAME_AfterUpdate() Rem تعبئة حقول محددة من مربع الالتحرير والسرد ' Me.SONS = Me.FATHER_NAME.Column(1) ' Me.PHONE = Me.FATHER_NAME.Column(2) ' Me.INSTALLMENTS = Me.FATHER_NAME.Column(3) Rem ترقيم آلي If Me.NewRecord Then Me!NUM_PAID = Nz(DMax("[num_Paid]", "[TabPaids]"), 0) + 1 End Sub بالتوفيق
    1 point
  37. أرفق الملف للعمل عليه ومعرفة سبب المشكلة
    1 point
  38. ما شاء الله كود ولا أروع ، وسرعة ما لها حل .... وصدق أخي @قلم-الاكسل(عبدالعزيز) فلا ندري نشكر من صاحب الشرح أم صاحب الكود ! فالشكر للاثنين معا جزاهم الله خيرا وزادهما من علمه
    1 point
  39. على الرغم ان المشاركة يعود لسنة 2008 لكن هذا جواب لهذا في ورقة خصائص النموذج في التنسيق format غير ارتفاع الشبكة و عرض الشبكة الى رقم 10 مثل هدول الصور ... عفوا مرة الاخرى لكن جوبت على هذا لكي يستفيد منه الجميع اخوكم شفان ريكاني
    1 point
  40. اتفضل اخي حسب فهمي لطلبك اذا بيكون رقم السند موجود ما يتغير الرقم السند حين تم تعديل على اسم واذا بيكون فارغ راح يزيد رقم واحد على اخر رقم واذا تريد تتغير رقم السند ما تكدر الا برقم سري الا وهو 0000 واذا دخل رقم خطا راح يكلك الرقم سري خطأ ولا تكدر تتغير رقم السند مع شكر وتقدير اخوك : شفان ريكانى Aziz.rar
    1 point
  41. فكرة جميلة جدا مع بعض الاضافات تصبح قائمة حقيقية احسنت Test2.rar
    1 point
  42. الشرح المستفيض لكود البحث المتقدم باستخدام المصفوفات للأستاذ الكبير ياسر العربي Search Using Arrays http://adf.ly/1efc1m
    1 point
  43. أخي الغالي الزباري عمل رائع وممتاز .. جزاكم الله خير الجزاء تقبل وافر تقديري واحترامي
    1 point
  44. اخى الكريم بالنسبة لانشاء الاتصال له طريقتين الاولى بالنسبة لموضوع الربط كانت الفكرة انك لو نقلت قاعدة البيانات بتاعتك لاكثر من جهاز هتضر تضيف اتصال DSN لكل جهاز عله قاعدة البيانات علشان تقدر تتصل بالداتابيز اللى على الاستضافة الحل هو انك تنشء اتصال عن طريق وحدة نمطية بدون استخدام معالج البيانات فى الويندوز اولا هتضيف الوحدة النمطية دى بدون التعدل عليها '//Name : AttachDSNLessTable '//Purpose : Create a linked table to SQL Server without using a DSN '//Parameters '// stLocalTableName: Name of the table that you are creating in the current database '// stRemoteTableName: Name of the table that you are linking to on the SQL Server database '// stServer: Name of the SQL Server that you are linking to '// stDatabase: Name of the SQL Server database that you are linking to '// stUsername: Name of the SQL Server user who can connect to SQL Server, leave blank to use a Trusted Connection '// stPassword: SQL Server user password Function AttachDSNLessTable(stLocalTableName As String, stRemoteTableName As String, stServer As String, stDatabase As String, Optional stUsername As String, Optional stPassword As String) On Error GoTo AttachDSNLessTable_Err Dim td As TableDef Dim stConnect As String For Each td In CurrentDb.TableDefs If td.Name = stLocalTableName Then CurrentDb.TableDefs.Delete stLocalTableName End If Next If Len(stUsername) = 0 Then '//Use trusted authentication if stUsername is not supplied. stConnect = "ODBC;DRIVER=SQL Server;SERVER=" & stServer & ";DATABASE=" & stDatabase & ";Trusted_Connection=Yes" Else '//WARNING: This will save the username and the password with the linked table information. stConnect = "ODBC;DRIVER=SQL Server;SERVER=" & stServer & ";DATABASE=" & stDatabase & ";UID=" & stUsername & ";PWD=" & stPassword End If Set td = CurrentDb.CreateTableDef(stLocalTableName, dbAttachSavePWD, stRemoteTableName, stConnect) CurrentDb.TableDefs.Append td AttachDSNLessTable = True Exit Function AttachDSNLessTable_Err: AttachDSNLessTable = False MsgBox "AttachDSNLessTable encountered an unexpected error: " & Err.Description End Function وفى حدث عند فتح النموذج ستضيف الكود التالى Private Sub Form_Open(Cancel As Integer) If CreateDSNConnection("(اسم السرفر )", "اسم قاعدة البيانات ", "اسم المستخدم ", "كلمة السر ") Then '// All is okay. Else '// Not okay. End If End Sub ودى اول طريقة
    1 point
×
×
  • اضف...

Important Information