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

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

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

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

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


    • نقاط

      18

    • Posts

      13,165


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      15

    • Posts

      9,814


  3. ياسر العربى

    ياسر العربى

    الخبراء


    • نقاط

      13

    • Posts

      1,510


  4. KHMB

    KHMB

    04 عضو فضي


    • نقاط

      5

    • Posts

      674


Popular Content

Showing content with the highest reputation on 26 ديس, 2015 in all areas

  1. بسم الله الرحمن الرحيم اليوم سنقوم بشرح طريقة ربط الفيجوال بيسك بالإكسيل اولا نعمل مشروع جديد عبارة عن فورم وواحد كمبوبوكس وسته تكست وثمانية ليبل وخمس أزرار وملف اكسيل بامتدادxlsx واسمه aseel امتداده اظن لا يدعم وحدات الماكرو بس عادي مع الفيجوال شغال بنفس ترتيب الشكل الاتي: خلصنا الشكل السابق ندخل علي الشغل الجديد بقي كلنا أكيد سمعنا عن المتغيرات وكلنا تعاملنا معاها قبل ما نشوف المتغيرات الفيجوال عشان نربطه بالإكسيل لازم له مراجع ومتغيرات عامة على مستوى المشروع بأكمله إيه الكلام دا بيتعمل ازاي المرجع دا ولا بنجيبه منين شوفو معايا الصور بعد الخطوات دي ياترى بنعرف نضيف موديول زي ما بنضيف فورم جديد كدا اللي بيعرف يضيف اللي مش عارف ينزل للصورة معايا ويشوف ايه البيانات دي يامعلمين دي بقي المتغيرات العامة اللي بنقول عليها وبتكون علي مستوى المشروع بأكمله يعني لازم تتحط في موديول ولتبسيط الكلام اللي فوق دا بطريقة سهلة اول سطر Public YXL As New Excel.Application YXL دا متغير يشير الى برنامج الاكسيل نفسه بمعنى عندما نريد ان نكتب في الاكسيل Application. Visible = False نكتبه كدا YXL. Visible = False اكيد وصلت الفكرة ولو مش وصلت نكمل مثال كمان المتغير ونظيره في الإكسيل YWB= Workbook YSheet= Worksheet YRng= Range اكيد الامور اصبحت سهلة كدا أي كود في الإكسيل نستبدل المذكورين في أعلاه بنظره في الإكسيل وسيعمل الكود بإذن الله يعني مش هتخترع اكواد جديدة هي نفس القديمة بس تعديلات طفيفه المهم الكل يكون عمل الفورم والموديول والاداوت كما ذكرت سابقا بالترتيب الموجود عشان الاكواد متتبدلش مع الادوات نيجي بقي للاكواد Private Sub Combo1_Click() 'جدا الكمبوبوكس ومنه بيتم جلب البيانات بمعلومية الرقم والكود طبعا مفيهوش جديد نفس اكواد الاكسل With YSheet LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row For iRow = 6 To LastRow If .Cells(iRow, 2) = Combo1.Text Then Text1.Text = .Cells(iRow, 2) Text2.Text = .Cells(iRow, 3) Text3.Text = .Cells(iRow, 4) Text4.Text = .Cells(iRow, 5) Text5.Text = .Cells(iRow, 6) Text6.Text = .Cells(iRow, 7) End If Next End With End Sub Private Sub Command1_Click() Dim lstrow As Long 'ودا كود ترحيل البيانات ونفس الشئ مش جديد كل اللي اتغير اللي ذكرنااه If Text1.Text = "" Then MsgBox "íÌÈ ÇÏÎÇá ÌãíÚ ÇáÈíÇäÇÊ" Else lstrow = YSheet.Range("b20000").End(xlUp).Row + 1 YSheet.Cells(lstrow, "b").Value = Text1.Text YSheet.Cells(lstrow, "c").Value = Text2.Text YSheet.Cells(lstrow, "d").Value = Text3.Text YSheet.Cells(lstrow, "e").Value = Text4.Text YSheet.Cells(lstrow, "f").Value = Text5.Text YSheet.Cells(lstrow, "g").Value = Text6.Text Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" MsgBox ("ÊãÊ ÇáÚãáíÉ ÈäÌÇÍ") End If End Sub Private Sub Command2_Click() 'ودا كود اظهار برنامج الاكسيل بردو غيرنا اللي اشرنا ليه فقط YXL.Visible = True End Sub Private Sub Command3_Click() ' ودا لاخفاء برنامج الاكسل YXL.Visible = False End Sub Private Sub Command4_Click() 'لحفظ البرنامج المفروض المتغير يكون شغال بس مش عارف سبب المشكلة ايه حاليا فقلت اجرب الكود العادي اشتغل تمام مشي حالك 'åäÇ ãÔ ÚÇÑÝ ÇáãÊÛíÑ åäÇ ÞÝÔ ãÚÇíÇ æãÔ ÚÇíÒ íÍÝÙ ÞáÊ ÇÌÑÈ ÇáßæÏ ÇáÚÇÏí ÇÔÊÛá ÞáÊ Òí ÇáÝá 'YWB.save ActiveWorkbook.save End Sub Private Sub Command5_Click() 'وطبعاخروج YXL.Quit Set YXL = Nothing End End Sub Private Sub Form_Load() 'هنا بنستدعي ملف الاكسيل من نفس مسار البرنامج بتاعنا ونفتحه YXL.Workbooks.Open App.Path & "/aseel.xlsx" 'اخفاء البرنامج بعد فتحه طبعا YXL.Visible = False 'هنا بقي قولنا له ان يخلي Ysheet دي تبقى الشيت الاول والاكس شيت تبقي الشيت التاني Set YSheet = YXL.Worksheets(1) Set XSheet = YXL.Worksheets(2) عادي ليبل وبياخد بياناته من خليه معينه Label7.Caption = YSheet.Range("a1").Value Label8.Caption = YSheet.Range("a2").Value With Combo1 'ودا ا لكمبوبوكس بندرج فيه بيانات الصف b For Each Data In YSheet.Range("b6:b" & YSheet.Cells(Rows.Count, "b").End(xlUp).Row) .AddItem Data Next End With End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) ودا بقي عشان لما تدوس علي علامة الاكس فوق ميخرجشي من البرنامج ويسيب ملف الاكسيل مفتوح ومخفى '' YXL.Quit Set YXL = Nothing End End Sub وبكدا نكون انتهينا من وضع الاكواد اظن الكل واخد باله انه مفيش جديد وهو دا بالتحديد مفيش جديد كل اللي عملناه واحد تايه وعرفنا السكه خلاص وبعدين محدش ينسى يعمل ملف اكسيل اه بعد دا كله يجي حد يقولي البرنامج مش شغال ليه اقوله فين ملف الاكسيل بعد الاطلاع علي البرنامج هيجي واحد يقولي ايه القلب الجميل اللي علي الفورم دا اللي مكان السهم اهو دا من ضمن اللمسات الجمالية وبيتعمل ازاي يامعلم الشرح بسيط ف الصورة معلش بدل ما اكتب الماوس كتبت الموس شغال بقى اعذروني انا بعمل الشرح في وقت قياسي وانا شغال مرفق البرنامج ومعاه القلب عشان تعملوه مكان السهم يارب اكون وصلت المعلومة صح واي خطأ منى فدا لجهلى اعذروني منتظر الردود علي فكرة الدرس دا تقريبا بنسبة كبيرة يعتبرحصرى لمنتدى اوفيسنا انا بحثت عن ربط الفيجوال بالاكسيل كثيرا وكثيرا وكود من هنا وكود من هنا حتى اكتملت الصورة امامي وتوصلت لهذا والحمد لله مع تحياتي ياسر العربي يتبع ربط الفيجوال بالاكسل.rar
    4 points
  2. مثل ما يقول المثل: الصورة بألف كلمة ، فمجموع الكلمات اللي كتبتها: 12 كلمة + 6000 كلمة (6 صور) = 6012 كلمة شرح جعفر
    3 points
  3. السلام عليكم بالمثال المرفق من اخوي جعفر وكما في الصورة ( الارقام الحمراء ) غير القيمة where المشار اليها برقم اثنين إلى group by واحذف المعيار المشار اليه برقم 3 ولا تنسى تضع اشارة صح في المربع الفارغ الظاهر
    2 points
  4. أستاذنا الغالى ياسر خليل نورت الموضوع و نورت المنتدى بعد فترة غياب بصراحة افتقدك الفترة الماضية أخى الحبيب أبا الحسن و الحسين بارك الله فيكم تشرفت بمرورك
    2 points
  5. وعليكم السلام ورحمة الله وبركاته اليك طريقتين: الطريقة الاولى: . . . والطريقة الثانية: . . . جعفر 317.matger.accdb.zip
    2 points
  6. أخي الكريم مهند جرب الكود بعد التعديل Sub TarhilData2() Dim WS As Worksheet, SH As Worksheet Dim X As Long, Y As Long, Cell As Range Dim lRow As Long Set WS = Sheets("البيانات"): Set SH = Sheets("طبيب أطفال") Application.ScreenUpdating = False For Each Cell In WS.Range("X2:X11") If Not IsEmpty(Cell) Then X = Application.WorksheetFunction.Match(Cell.Value, SH.Rows(1), 0) lRow = SH.Cells(49, X).End(xlUp).Row + 1 WS.Range(Cell.Offset(, -22), Cell.Offset(, -20)).Copy SH.Cells(lRow, X).PasteSpecial xlPasteValues Cell.Offset(, -1).Copy SH.Cells(lRow, X + 3).PasteSpecial xlPasteValues Cell.Offset(, 3).Copy SH.Cells(lRow, X + 4).PasteSpecial xlPasteValues End If Next Cell Application.CutCopyMode = False Application.ScreenUpdating = True End Sub
    2 points
  7. هذا الوصف واضح ، بينما الوصف السابق لم يكن تفضل نقوم بإعادة ترقيم [رقم المادة] كلما حدث حذف ، هكذا: Private Sub Form_AfterDelConfirm(Status As Integer) Dim rst As DAO.Recordset Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 1 To RC rst.Edit rst![رقم المادة] = i rst.Update rst.MoveNext Next i End Sub جعفر 316.students.accdb.zip
    2 points
  8. السلام عليكم ورحمة الله تعالى وبركاته اولا بعد الحمد لله الذى تتم بنعمته الصالحات فسبحان الله الحنان المنان الذى هدانا وما كنا لنهتدى لولا ان هدانا الله عزوجل له الحمد حمدا كثيرا طيبا طاهرا مباركا فيه له وحده الحمد كما ينبغى لجلال وجهه ولعظيم سلطانه ثانيا ادين بالفضل بعد رب العزة سبحانه وتعالى وللكثير من اساتذتى رواد هذا الصرح الشامخ فلولا الله ثم اساتذتى الكرام لما وصلت الى هذا الحد بعد كل الشكر والتقدير اهنئ نفسى واياكم بما وصلت اليه الموضوع بإختصار هو برنامج الصلاحيات والتحكم بالمستخدمين بالفعل أرهقنى موضوع الصلاحيات هذا لو كان اختياراً لتركته وما ترددت فى ذلك لكن تبقى الضرورة وحتمية العمل به هى المحرك الأول والأخير فكانت محاولات الإستماتة حتى إنى فى إحدى اللحظات توقعت أننى لن ولم أحاول البحث أو محاولة إنشاء الصلاحيات بعد هذه اللحظة إستعصى الأمر لدرجة أنني جربت نسبة 90 فى المئة من كل ما هو مقترح على النت لحل تلك المشكلة العويصة مشكلة الصلاحيات وكما لاحظت يعانى منها الكثير غيرى لكن من الله على سبحانه وتعالى بعلمه وفضله فتوصلت لبرنامج Users maker الإصدار الثانى الذى قيل عنه انه يعمل مع منتجات الاوفيس ابتداء من 2007 وحتى 2013 ولكن من وجهة نظرى البرنامج فقير وكنت دائما أقع فى المشاكل بسببه حتى قررت أن أفتح النسخة وأحاول التعديل عليها بما يتماشى ويتناسب مع متطلباتى وأظنها متطلبات اغلب المشاركين كما لاحظت من تساؤلاتهم وإليكم أقدم لكم البرنامج بإصداره الثالث من تعديلى الشخصى وإضافتى التى لم يسبقنى إليها أحد فحاولت تلافى الكثير والكثير من التعقيدات أترك لكم التجربة والتحليل وفى إنتظار الرد للعلم حافظت على حقوق المبرمج الأصلى للبرنامج بارك الله فى علمه الأستاذ القدير محمد مهند العبادى أتحدى وجود إصدار مشابه على الانترنت لما اطرحه عليكم الأن طبعا البرنامج حجمه كبير لن أستطيع إرفاقه عن طريق المرفقات ولذلك أطلب على استحياء من أساتذتنا الكرام المسئولين عن امور المنتديات بكل الحب والود والتقدير بعد تحليل البرنامج والتأكد من فعاليته بشكل جيد وخلوه من الأخطاء إن خلا فالكمال لله وحده إعادة رفع البرنامج على سيرفر المنتدى حتى يكون مرجع فمواقع الرفع المجانية غير مستقرة معلومات هامه جدا جدا جدا عن البرنامج بعد عمل اى برنامج خاص بكم من خلال هذه الاداة Users maker -Third Edition أولا -- من نموذج الدخول أضفت عدد اثنين مستخدمين لكل منهم صلاحيات خاصة وهم مخفيين لا يظهروا بالبرنامج إطلاقاً فى الوصع الطبيعى لعمل البرنامج المستخدم الاول مميزاته الدخول على لوحة تحكم صلاحيات المستخدمين البيانات للدخول اسم المستخدم / admin كلمة المرور / 2015 ثانياً -- المستخدم الثانى مميزاته الدخول على نموذج خاص لإلغاء تفعيل زر Shift أو تمكينه وكذلك إخفاء الجداول والإستعلامات وإظهارها البيانات للدخول اسم المستخدم / superadmin كلمة المرور / 2015 وفى النهاية إن كفيت ووفيت فمن فضل الله وأن ذللت وأخطأت فمن هوان نفسى وقلة حيلتى اسالكم بكل الحب والتقدير إن رأيتم منى خطأ فتجاوزوا عنه بحلم أو صححوه لى بعلم وفى النهاية أعتذر للإطالة جزاكم الله عنى كل الخير روابط تحميل اولا: موقع ...... ميديا فاير ........ إضغط هنا للتحميل accdb for Access 2007- 2010 - 2013 موقع ...... ميديا فاير ........ إضغط هنا للتحميل mdb for Access 2000 - 2002 - 2003 ثانيا : موقع ...... بن الخليج ........ أضغط هنا للتحميل accdb for Access 2007- 2010 - 2013 موقع ...... بن الخليج ........ إضغط هنا للتحميل mdb for Access 2000- 2002 - 2003 اسألكم الدعاء للأستاذ محمد مهند العبادى المبرمج ولوالديه بظهر الغيب كما أطلب منكم على استحياء أن تتذكرونى بدعواتكم الصالحات لوالدى واللهم كما جمعتنى بصحبتكم الطيبة فى الدنيا دون أن أساله اللهم لا تحرمنى منهخا فى الجنة أنا أسألك آمين ..آمين ..آمين أخوكم العبد الفقير إلى الله محمد عصام
    1 point
  9. السلام عليكم مثال قديم للأستاذ أبو هاجر لاستخدام الماسح ( السكانر ) عن طريق الأكسس قمت على تحديثه وزيادة السيطرة واستبعاد تخزين مسار الصور حيث لا داعي لها . مرفق ملف مكتبة dll يجب نسخه في مجلد Windows\System . لا تنسونا من دعاكم . تحياتي . الملفات المرفقة Scanner.rar ( 471.28ك ) عدد مرات التنزيل: 38
    1 point
  10. ابحث عن برنامج حسابات مصنع ملابس
    1 point
  11. الحمد لله الذي بنعمته تتم الصالحات وتصبح على خير يا أخ وائل تقبل وافر تقديري واحترامي
    1 point
  12. تسلم ايدك يابركات يابو الحركات لا ياباشا تمام التمام وتصبح علي خير وسعاده وهنا
    1 point
  13. الموضوع محتاج وقت فقط ليس إلا .. إن شاء الله عندما يتيسر لي الوقت سأقوم بالإطلاع عليه إلا إذا تدخل أحد الأخوة الكرام
    1 point
  14. اضافة للموضوع مرفق ملف من اعداد الاستاذ / عماد الحسامى - رحمه الله وادخله فسيح جناته vlookuptwo.rar
    1 point
  15. السلام عليكم ورحمة الله الاستاذ ياسر خليل ماشاء الله تبارك الله تستاهل هذه الشهادات بكريم اخلاقك وصبرك وحبك للجميع دون إستثناء .والناس شهداء الله في ارضه ولاننسى الباقيين ممن لهم باع في مثل ذلك وهم كثير دون عدد او تخصيص لان الحبايب كثروا بارك الله فيكم جميعا.
    1 point
  16. جرب معادلة الصفيف التالية =INDEX(Table1[السعر],MATCH(MAX((Table1[الصنف]=K12)*(Table1[الحركه]="مشتريات")*(Table1[التاريخ])),Table1[التاريخ],FALSE),1) لا تنسى أن تضغط على Ctrl + Shift + Enter تقبل تحياتي
    1 point
  17. اخي الغالي عبد العزيز بالفعل مش هيشتغل لازم ترفق معاه ملف الاكسيل لانه يعتبر قاعده بياناته يعني الملف التنفيذي ومعه ملف الاكسيل
    1 point
  18. . لا ادري ، لهذا السبب فانا لا استعمله مطلقا في برامجي في النماذج ولكن الظاهر ان هذه المعادلة لا تتأثر في التقارير ، وعلى هذا ، فلا استعملها في التقارير ايضا. ذهبت الى أحد المؤسسات الدينية البارزة وعرضت عليهم خدماتي كمتطوع ، فأول شئ تكلموا معي عنه هو برنامج اساسي في عملهم كان معمول لهم على الاكسس 2003 ، وانهم لم يستطيعوا تشغيله على الاكسس 2007 ، وطلبوا من المبرمج ان يغير لهم البرنامج (طبعا مقابل مبلغ مالي) ، ولكن المبرمج اعتذر وقال ان هذه العملية ستأخذ من 3 الى 6 اشهر. انا عرضت عليهم ان انظر في البرنامج وقد استطيع اصلاحه ، وطبعا نظروا لي نظرة استغراب ، ولكنهم قالوا مافي ضرر من معاينتك للبرنامج. بالاضافة الى بعض التغييرات البرمجية التى اضطررت القيام بها ، كانت هذه المعادلة موجودة في اكثر من مكان في البرنامج ، وبعد حوالي الساعتين ، اشتغل البرنامج على 2007 جعفر
    1 point
  19. 1_ يرجي من السادة الكرام عندما تقوم بانشاء قاعدة بيانات ان نكون الحقول باللغة الفرنسية او اللغة الانجليرية حتى تسهل في كتابة كود (صحيح) وفي النموذج غير فيه كما تشاء الى اللغة العريبية بشرط ان لا تمس الاسماء الحقول حتى لا يطلب منك ادخال اللغة العربية في البرمجة وكتابة الكود صحيح وهذا ما افعله اقوم بنسخ و لصق و اغير في الكود فقط وشكرا
    1 point
  20. السلام عليكم ورحمة الله ماشاء الله تبارك الله اخي عمر يسًر الله لك الخير. الاخ زيزو والاخ حسام (الصقر) والاخ سليم وختامها مسك استاذنا ياسر خليل بارك الله فيهم وجزاهم الله خير الجزاء للتوضيـــــــــــــــــــــــــــــــــــــــــــــــح للأخذ بعين الإعتبار : الموضوع واضح جدا كمثال : التاريخ الصنف الكمية 01/12/2015 صنف1 100حبة 05/12/2015 صنف1 200حبة 10/12/2015 صنف1 300حبة 15/12/2015 صنف1 400حبة 20/12/2015 صنف1 500حبة 30/12/2015 صنف1 600حبة طبعا مما لاشك فيك آخر شراء هو آخر تاريخ تم الشراء فية وهو 30/12/2015 هنا ستم الربط بين التاريخ واسم الصنف وسعر الصنف انتهينا من هذه النقطة لكـــــــــــــــــــــــــــــــــــن المشكله هي ماذا لو ان هناك اكثر من شراء لنفس الصنف في تاريخ معين مثلا تاريخ 30/12/2015 هنا ستحتاج لربط الوقت .ولو افترضنا شراء صنف في تاريخ واحد لاكثـــــــــــــــــــــــــــــــــــــــر من مرة مثلا ثلاث مرات اربع مرات ..... الخ فله حالتين الاولي ان السعر واحد لم يتغير والحالة الثانية بأسعار مختلفة . وعلي هذا الاساس يتم جدولة الكود او المعادلة وياليت ان تتمموه بالكود لتعم الفائدة جزاكم الله خير الدنيا والآخره .
    1 point
  21. يا سلام عليك أخوي ابوخليل ، وفرت عليّ الوقت بالاضافة الى ملاحظات أخوي أبوخليل ، لا تنسى ان تضع علامة صح بيم الرقمين 2 و 3 ، حتى نتائج الحقل جعفر
    1 point
  22. تم رفع الملف مع المعادلة المطلوبة book1 salim.rar
    1 point
  23. وعليكم السلام تفضل جعفر 320.New Microsoft Access قاعدة بيانات (6).accdb.zip
    1 point
  24. إليك معادلة الاخ الحبيب سليم مع تعديل رقم 5 إلى 4 لتظهر النتائج بشكل صحيح (وهي الأفضل في وجهة نظري حيث أنه لا داعي لأعمدة مساعدة) SALIM.rar
    1 point
  25. الله ينور شغالة كويس في المشروع تلاقيك فتحت ملف تنفيذي قديم الملف يعمل جيدا والايقونة ظهرت تمام حول المشروع لملف تنفيذي وانت تشوف
    1 point
  26. حياك الله انا عادة لا استعمل الاختصار مثل ما عملت انت ، وانما اخلي الكود يأخذ راحته في الاسطر ، لأني بعد عدة اشهر لما انظر للكود ، اريد ان اعرف ماهية الكود هذا الجزء من الكود اخذته من هذه المشاركة: http://www.officena.net/ib/topic/65589-النقر-المزدوج-لفتح-تقرير-بواسطة-نموذج-فرعي/?do=findComment&comment=427245 Msg = "This month is NOT in the table CCP" & vbCrLf & _ "Do you want to ADD A NEW RECORD ?" Style = vbYesNo + vbCritical + vbDefaultButton2 Title = "No values in CCP" Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' User chose Yes. rst.AddNew rst!NCcp = Me.NCcp rst!txtMonth = Me.txtMonth1 rst!TheValue = DSum("[TV]", "[qry_1-5_Sum]") rst.Update Else ' User chose No. GoTo Exit_Sub End If . وهذا الرابط: http://www.officena.net/ib/topic/63966-طلب-تحويل-ساعات-العمل-الى-أيام/?do=findComment&comment=415801 Dim Msg, Style, Title, Response Msg = "هل انت متأكد من المواصلة" & vbCrLf & _ "Are you sure you want to continue ?" ' Define message. Style = vbYesNo + vbCritical + vbDefaultButton2 ' Define buttons. Title = "رجاء التأكيد" ' Define title. Response = MsgBox(Msg, Style, Title) If Response = vbNo Then ' User chose Yes. Exit Sub End If وروابط كثيرة لذا نصيحتي لك: توسع في كتابة الكود ، وفككه الى اسطر بدل ان تستعمل سطر واحد (وللعلم أخي الاستاذ رمهان فنان في عمل كود السطر الواحد) ، ففي المستقبل ، سترى الفائدة جعفر
    1 point
  27. تفضل هذا هو الموديول بعد الحفظ انت مجرد عمل موديول جديد اضغط حفظ هتلاقي بيطلب منك تحط الموديول في مكان تحدده بتحطه مع المشروع عادي ليظهر مثل الصورة الموضحه فين يامعلم ايقونة الماوس مغيرتهاش ليه زي ما شرحت بالدرس
    1 point
  28. بسم الله ما شاء الله لمسات جميلة الله ينور والبرنامج شغال زي الفل طبقت الشرح زي الفل بس ملحوظة صغيرة انت حفظت المشروع ونسيت تحفظ الموديول معاه وانا عارفه فضفته عادي المهم ابقي كل ما تعمل تعديل بالمشروع تحفظ عشان لو ضفت مثلا فورمات وموديولات كتير تحفظها اول باول لعل وعسي يحدث خطأ ويفصل البرنامج ويضيع عليك الشغل كله تقبل تحياتي
    1 point
  29. بارك الله فيك أخى و حبيبى فى الله و أستاذى الغالى ان كنت بعيدا عنكم فأنت وكل الزملاء فى القلب وعلى بالى دائما ----------------------------------------------------------------------------- مرة تانية أحييك على هذين الكودين الرائعين تقبل تقديرى واحترامى لشخصكم الكريم
    1 point
  30. الأروع دائماً مرورك العطر تواجدك بالمنتدى ..بلاش موضوع الغطسان ده ..خليك معانا على الدوام ..نفتقد وجودك ولمساتك السحرية تقبل وافر تقديري واحترامي
    1 point
  31. الاخ الكريم عبدالله لو استخدمت خاصيه البحث لوفرت لنفسك وقت اكبر من الانتظار راجع الرابط التالى به طلبك http://www.officena.net/ib/topic/64488-الفرق-بين-امتدادات-الاكسيل/?do=findComment&comment=419595 تقبل تحياتى
    1 point
  32. بعد اذن استاذى زيزو العجوز واستاذى ابوالحسن الاخ الكريم جرب المرفق تم عمل معادلات بالعمود j اسحبها نزولا لاسفل الى اخر بيانات بالجدول بتاعك وشاهد النتيجة بالخليه n12 تقبل تحياتى New Microsoft Excel Worksheet.zip
    1 point
  33. السلام عليكم اخي الكريم اذا كنت تريد برنامج جهاز أو أن يقوم أحد بتصميمه لك فبإمكانك المشاركة في قسم اعلانات الاعضاء أما ان كنت تريد تصميم البرنامج بنفسك فإبدأ على بركة الله وإن شاء الله ستجد الدعم و المشورة والنصيحة في المنتدى
    1 point
  34. السلام عليكم ورحمة الله اليك الحل New Microsoft Excel Worksheet.rar
    1 point
  35. شكرا لك اخي العزيز " ياسر " وفقكم الله لكل خير ورزقكم دوام الصحة والعافية
    1 point
  36. خير ان شاء الله اخى الفاضل ابو البراء شكرا على االاهتمام المشلكه بس انا شغال بفلاشة نت بعيد عنك وانت عارف ان الشبكه تمام ولا نقدر نقول غير كده ... احد .. احد
    1 point
  37. وعليكم السلام.. هل جربت أخي الكود؟ جربه لعله يفي بطلبك ووافني بالنتيجة 111.rar
    1 point
  38. اساتذتى الكبار والمبدعين كالعادة الاستاذ الفاضل الكبير قوى بن عليه حاجى والاستاذ الفاضل الكبير قوى سليم حاصبا تسلم الايادى وتسلم العقول الجميلة والنيرة بالطبع حل بالمعادلات رائع مثلكم جزاكم الله كل خير على كل ماتقدموه لنا من علم وخبره بارك الله فيكم داعيا لكم المولى عز وجل ان يجعل هذة الاعمال يارب فى ميزان حسناتكم وكم تعلمنا من هذا المنتدى العظيم دائما نطمع زيادة فى اثراء الموضوع حبا منا لكم وحبا فى هذا المنتدى العظيم وزيادة فى العلم فمن يستطيع ان يقدم لنا الحل بالكود فخير ونعمه . اكرر شكرى وامتنانى للاستاذان الكبيران جزاهم الله كل خير ومحبه وتوفيق وشكرا
    1 point
  39. أخي الكريم صلاح قينك وفين أراضيك؟؟ بقالك فترة مختفي ..لعل غيابك خير ليك وحشة والله .. مشكور على مرورك العطر بالموضوع
    1 point
  40. تفضل يا سيدي نعمل ماكرو يشتغل عند تشغيل البرنامج ، ويجب ان يكون اسمه AutoExec ، هذا الماكرو نطلب منه تشغيل الوحدة النمطية Login_Form: . الوحدة النمطية Login_Form ، تقرأ قيمة الحقل Shall_I_Open من الجدول tbl_Shall ، فاذا كانت قيمته =-1 (True) ، فانه سيفتح النموذج frm_Log-n ، وإلا فانه سيفتح النموذج frm_Home : . عند اغلاق النموذج frm_Login ، فانه يغير قيمة الحقل Shall_I_Open من الجدول tbl_Shall ، الى القيمه =0 (False) . جعفر 314.form.accdb.zip
    1 point
  41. قبل ان تستطيع الضغط على الزر الذي في الشريط الاصفر ، يجب عليك ان تضغط على رز Stop all Macro السبب في ظهور هذه الرسالة ، هو تشغيلك برنامج اكسس من مجلد غير موثوق به (للأكسس 2007 فما فوق) ، فالاكسس 2010 فما فما فوق ، يمكنك القيام بما قاله الاخ كرار ، ولن تظهر لك الرسالة مرة ثانية ، بينما للأكسس 2007 ، فيجب عليك ان تذهب الى اعدادات الاكسس ، وتختار مجلد موثوق به ، وثم تشغل برامج الاكسس من ذلك المجلد ، ولن تظهر لك هذه الرسالة مرة ثانية جعفر
    1 point
  42. أخي الكريم أبو يوسف إليك كود آخر أسرع في التعامل مع الملف حيث أنه يعتمد على المصفوفات Sub YasserReport() Application.ScreenUpdating = 0 Dim Arr, Xs$, Brr, Dc, Sn%, D As Object, DD As Object, TT(), SSS() Dim S As Worksheet Dim K, T, C, I As Long, J As Long Set D = CreateObject("scripting.dictionary") Set DD = CreateObject("scripting.dictionary") SSS = Array("المادة", "عدد الطلاب") Xs = ActiveSheet.Name For Each S In Sheets If S.Name <> Xs Then Arr = S.UsedRange: Dc = "" For I = 1 To UBound(Arr, 2) If Len(Arr(19, I)) = 0 Then Arr(19, I) = Arr(19, I - 1) If Len(Arr(21, I)) > 0 Then Dc = Dc & "|" & I Next Dc = Split(Dc, "|") ReDim Brr(1 To UBound(Arr) - 18, 1 To UBound(Dc)) For I = 19 To UBound(Arr) For J = 1 To UBound(Dc) Brr(I - 18, J) = Arr(I, Dc(J)) Next Next Sn = UBound(Brr, 2) - 1 For I = 3 To UBound(Brr) Step 2 For J = Sn - 2 To 1 Step -1 If Val(Brr(I, J)) Then D(Brr(I, Sn) & "|" & Brr(1, J)) = Brr(I, Sn) & "|" & Brr(1, J) & "|" & Brr(I, J) End If Next Next End If Next Debug.Print D.Count K = D.keys T = D.Items For Each C In K DD(Split(C, "|")(0)) = "" Next K = DD.keys ReDim TT(UBound(K)) With Sheets(Xs) [A1] = "اسم المدرسة" [A2].Resize(DD.Count, 1) = Application.Transpose(K) For I = 0 To UBound(K) TT(I) = Filter(T, K(I)) For J = 0 To UBound(TT(I)) Cells(I + 2, J * 2 + 2) = Split(TT(I)(J), "|")(1) Cells(I + 2, J * 2 + 3) = Split(TT(I)(J), "|")(2) Next Next I = [A1].CurrentRegion.Columns.Count For J = 2 To I Step 2 Range(Cells(1, J), Cells(1, J + 1)) = SSS Next Application.ScreenUpdating = 1 End With End Sub وإليك الملف المرفق الأخير Grab Data From Sheets Colored In Red Or White YasserKhalil V2.rar
    1 point
  43. السلام عليكم ورحمة الله ولإثراء الموضوع هذا كود من إبداعي ودن الرجوع لاي مصدر كود صغير جدا خفيف وسهل من 7 كلمات Dim MySh MySh = "KHMB" Sheets(MySh).Select يتم وضعة في حدث النقر علي زر الامر مرفق المثال KHMB الذهاب الي الشيت المحدد من الفورم.rar
    1 point
  44. أخي الكريم أبو يوسف جرب الكود التالي عله يفي بالغرض Sub YasserReport() Dim Ws As Worksheet, Wf As Worksheet, Cel As Range Dim TN As Long, S As String, N As String, R As Long, C As Long Set Wf = Sheets("Final") Application.ScreenUpdating = False For Each Ws In Worksheets N = Ws.Name If N Like "Sheet*" Then For Each Cel In Ws.UsedRange.Offset(20, 1).Resize(, 41) If Not Cel.Row Mod 2 = 0 And Cel.Value <> 0 Then S = Ws.Cells(Cel.Row, 45) TN = Cel.Value N = Ws.Cells(19, Cel.Column) If S <> "" Then If N = "" Then N = Ws.Cells(19, Cel.Column - 1) R = 2 Do Until Wf.Range("A" & R) = S Or _ Wf.Range("A" & R) = "" And Wf.Range("B" & R) = "" R = R + 1 Loop C = 2 Do Until Wf.Cells(R, C) = N Or Wf.Cells(R, C) = "" C = C + 2 Loop Wf.Cells(R, 1) = S Wf.Cells(R, C) = N Wf.Cells(R, C + 1) = TN End If End If Next Cel End If Next Ws Application.ScreenUpdating = True End Sub إليك الملف المرفق .. لا تنسانا بدعوة بظهر الغيب تقبل تحياتي Grab Data From Sheets Colored In Red Or White YasserKhalil.rar
    1 point
  45. الأدوات المهمة ووظائفها الخصائص الشائعة للأدوات نظرا لاهتمام بعض الاعضاء الذين لم يتعاملو مع واجهات البرمجة عموما سواء VBA or VB6 والاستفسارات الدائمة عن بدايات التعامل مع الفيجوال قمت بتوضيح الامور اكثر قليلا وكما قال احد الاخوة لي محتاجين نبدأ من تحت الصفر بداية هذه قائمة الادوات الموجودة علي يسار البرنامج خصائص الأدوات الشائعة الاستخدام الخصائص الشائعة: هناك مجموعة من الخصائص الشائعة الاستخدام والمتوفرة لمعظم الأدوات، سنقوم الآن بشرح أهم هذه الخصائص وسنؤجل الحديث عن باقي الخصائص فيما بعد. 1- الخاصية Name: تعتبر هذه الخاصية من أهم الخصائص على الإطلاق، وهي متوفرة لجميع الأدوات دون استثناء، وهذه الخاصية تحدد الاسم البرمجي للأداة، وهو الاسم الذي يستخدم عند كتابة شفرة تخص هذه الأداة مثل : Form1.Caption="Yasser" حيث Form1 تمثل اسم النافذة. عندما تضع أداة جديدة أو تضيف نافذة جديدة يتم وضع الخاصية Name افتراضياً لهذه الأداة وذلك بذكر اسم الأداة يليها رقم مثل Form1 و Form2 و Label1 و Label2 إلى آخره. والآن إذا كنت ترغب في تغيير هذا الاسم الافتراضي فعليك تذكر ما يلي: 1- يجب أن يبدأ الاسم بحرف ولا يجوز أن يبدأ برقم، ويجوز أن يتخلله أرقام. 2- يفضل أن يكون الاسم باللغة الإنجليزية، وذلك لتجنب المشاكل التي يمكن أن تحدث عند استخدام الأسماء العربية ( أتمنى قريبا يقال العكس) 3- يجب أن لا يتجاوز الاسم 40 حرفاً. 4- لا يجوز استخدام بعض المحارف مثل النقطة و الفراغ و الفاصلة و … 5- لا يجوز استخدام الكلمات المحجوزة مثل : FOR و WHILE و FUNCTION و … 6- يفضل استخدام الأسماء التي تدل على وظيفة الأداة، وتجنب الأسماء العشوائية. مثلاً: يمكنك تسيمة النافذة "F" بدلاً من "Form1" و لكن عندها ستصبح الشفرة على الشكل: F.Caption="Yasser" الخاصية Name متوفرة أثناء التصميم فقط، أي من المستحيل تغيير الخاصية Name ضمن الشيفرة وهناك العديد من الخصائص الأخرى تشترك معها بهذه الصفة. 2- الخاصية BackColor (لون الخلفيه): تحدد هذه الخاصية لون أرضية الأداة، وعند محاولة تغيير هذه الخاصية يظهر مربع صغير يحوي سهم ، عند الضغط على هذا المربع يظهر لوح الألوان الذي يمكننا من اختيار اللون الذي نريد . ونلاحظ في مربع الألوان وجود بوابتين الأولى Palette ومنها نختار ألوان ثابتة ، والثانية System ومنها نختار ألوان يستخدمها النظام Windows . 3- الخاصية Caption (العنوان): وهي تحدد النص الذي سيظهر على الأداة كعنوان لها، ويجب أن لا يتجاوز النص 255 حرفاً بما في ذلك الفراغات. 4- الخاصية Enabled (التمكين): تحدد هذه الخاصية فيما إذا كانت الأداة ستتأثر بالأحداث (النقر أو حركة الماوس) أم لا، حيث تأخذ القيمتين True تتأثر أو False لا تتأثر. لن يظهر تأثير هذه الخاصية إلا بعد تنفيذ البرنامج. 5- الخاصية Font (الخط): تستخدم من أجل تحديد شكل ونوع وحجم الخط الذي سيظهر به عنوان الأداة. 6- الخاصية ForeColor (لون الخط): وهي تحدد لون الخط الذي سيكتب به عنوان الأداة. 7- الخاصية Height: تحدد ارتفاع الأداة . 8- الخاصية Width: تحدد عرض الأداة. 9- الخاصية Left: تحدد مقدار بعد الطرف الأيسر للأداة عن الطرف الأيسر للنافذة. 10- الخاصية Top: تحدد مقدار بعد الطرف العلوي للأداة عن الطرف العلوي للنافذة. 11- خاصية Picture: وتستخدم لتحميل صورة ووضعها كخلفية للأداة. 12- خاصية Visible: وتستخدم لإظهار أو إخفاء الأداة أثناء التنفيذ. من المهم الآن أن تقوم بإضافة الأدوات وتجريب الخصائص السابقة، وتصميم واجهات مختلفة تتخيلها.
    1 point
  46. السلام عليكم ورحمة الله وبركاته أخي الحبيب عبد العزيز شرف رفيع لي أن أرى مساهمات رائعة من إخوة كرام وأن يقرنوا اسمي بأسمائهم في مواضيع هامة كموضوع تجزئة الكلمات ضمن مجموعة من الخلايا. التسمية الافتراضية لما ذكرت بيانات - النص إلى أعمدة معالج تحويل النص إلى أعمدة -(الاختيار العلوي): محدد - السهم الآخر: التالي الخطوة الثانية:أشرت إلى (مسافة) الخطوة الثالثة: أشرت إلى عام ...تحديد الوجهة ثم إنهاء. فائق احترامي وشكري ومحبتي لكم جميعا
    1 point
  47. اخوانى الكرام السلام عليكم و رحمة الله و بركاته اولا اود ان اشكر اخونا المهندس محمد طاهر على مجهوده و تفهمه للموقف لرفع هذه الملفات على المنتدى داعيا من المولى عز و جل ان يوفقنا جميعا ثانيا : لقد قمت بوضع ماده تعليميه للاكسيس صوت و صوره اتمنى ان تنال رضاكم فالان دعنا نتعلم جميعا الجداول العلاقات الاستعلامات النماذج التقارير الماكرو الصفحات و نحن نسعى جاهدين لتقديم ما يليق بكم دائما انتظرونا
    1 point
  48. السلام عليكم دي دالةقديمة عملتها بالكود يمكن تنفع معاك المرفق2003/2007 الفرق بين تاريخين.rar
    1 point
  49. للتوضيح ال RANGE (B1:C1 ، E1:F1 ) عبارة عن المدى من الخلابا B1:C1 الى مدى من الخلايا E1:F1 فهو الى وليس و يعن نقدر نقول Range(Start,End) eg وال End اختياري فالموضوع ليس يقبل اثنين او ثلاثة ولكنه من الى فقط فلو وضعت(" Range("A1","Z1 فمعناه من A الى Z وليس AوZ لكن لو كتبت(" Range("A1,Z1 فمعناه A وZ وبهذا ممكن تكتب( "Range("A1,B2,C3:C10,D8,AB5,F3:G8 يعني مدى متقطع ارجو اكون وفقت اوصل معلومة تحياتي هو كلامك مظبوط بس هو كان المقصود ان اي نطاق بين علامتين تنصيص اكثر من مرتين غير مقبول وجرب انت بنفسك ** يعني تحدد أكثر من خلية بالنطاق كالتالي : Range("A13,A18,D14:D18,E21,F14,F9,C11:F11").Select يمشي تمام اخترت اكثر من خلية ونطاقة من الخلايا ضمن التحديد ** وكمان ينفع كده : Range("A1:E9").Select طبعا ده عادي نطاق عبارة عن من الى ** لكن اللي كان مقصود التالي : Range("G20", "G19").Select اختيار مفيهوش مشاكل Range("G20", "G19", "F8").Select هو دة اللي كان القصد انه ميصلحش لانه محدد 3 نطاقات بين 3 اقواس مضاعفة ارجو ان يكون التوضيح وصل ، ولو فيه اي غلط ياريت توضحه لينا
    1 point
×
×
  • اضف...

Important Information