اذهب الي المحتوي
أوفيسنا

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

  1. جعفر الطريبق

    جعفر الطريبق

    الخبراء


    • نقاط

      9

    • Posts

      140


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      7

    • Posts

      9927


  3. وائل احمد المصري

    • نقاط

      6

    • Posts

      358


  4. الصـقر

    الصـقر

    الخبراء


    • نقاط

      5

    • Posts

      1836


Popular Content

Showing content with the highest reputation on 10/05/15 in all areas

  1. بسم الله الرحمن الرحيم الاخوه الكرام اليوم بمشيئة الله سنتكلم عن المحور الخامس والاخير كيفية عمل تنسيقات للقيم المدخله فى TextBox عرفنا قبل كدا فى الشروحات السابقه ما هى اوقات تنفيذ الكود هنعمل مراجعه بسيطه لربط شرح اليوم بالشروحات السابقه قبل أن نتحدث عن وقت تنفيذ الكود لازم نعرف أولا أزاى بيكون كتابة ألاعلان عن الكود للـ TextBox Private Sub TextBox1_AfterUpdate() هنا يتم كتابة الكود المراد تنفيذه End Sub السطر الاول هو بداية الاعلان عن الكود فنقوم بكتابة Private Sub ستجد لونها بالكود أزرق ( وهو بداية لاى كود خاص لأى عنصر تحكم داخل الفورم ) ثم نقوم بكتابة اسم العنصر المراد عمل الكود له وهو بمثالنا TextBox1 ثم نقوم بكتابة _ ( تكتب من خلال الضغط على Shift+زر الطرح الموجود بالاعلى بجوار زر + ) ثم نقوم بكتابة وقت تنفيذ الكود (هو هنا على سبيل المثال AfterUpdate ) ثم كتابة () قوسين بهذا الشكل وبمجرد الضغط انتر ستجد الكود عمل سطر تانى فيه End sub يوجد طريقه اخرى وهى اتبع الصوره التالية توضح لك قم بالضغط على اى مكان فاضى بالفورم وادخل لمحرر الاكواد الخاص بالفورم هنبدأ بالامثله العمليه لان بالمثال يتضح لنا المقال وانا راجل عملى مش بحب النظرى 1-التحكم فى تنسيق القيم المدخله فى التكست بوكس بعدد صحيح شاهد الكود Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0") End Sub السطر الاول عرفنا انه الاعلان عن الكود وسوف يتم تنفيذه فى وقت تحديث التكست بوكس أى بعد الانتهاء من الادخال والانتقال او الخروج من التكست الى اى عنصر اخر على الفورم والسطر التانى هو الكود اللى هيتم تنفيذه شرح الكود ( السطر التانى ) شاهد الصوره هنا نوع التنسيق "0" تم وضعه بين علامتين تنصيص وبداخله 0 يعنى تنسيق التكست بوكس بعد الادخال يكون رقم صحيح فلو فرضنا حضرتك كتبت 20.60 وخرجت من التكست بوكس ستجد القيمة اصبحت 20 فقط ولا يوجد علامه عشريه -------------------------------------------------------------------------------------------------------------------------------------------------------- 2-التحكم فى تنسيق القيم المدخله فى التكست بوكس بوضع علامه عشريه Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0.0") End Sub هنا نوع التنسيق "0.0" يكون رقم واحد بعد العلامه العشريه مثال لو حضرتك ادخلت 20 فقط ستجد التكست بوكس اصبح 20.0 ولو حضرتك دخلت 20.2 ستجد التكست بوكس اصبح 20.2 ولو حضرتك دخلت 20.50 ستجد التكست بوكس اصبح 20.5 فقط يعنى سوا دخلت رقم عشري واحد او ادخلت رقمين عشريين او لم تدخل ارقام عشريه ستجد النتيجة بعد رقم عشرى واحد طيب لو احنا عايزين رقمين بعد العلامه العشريه الموضوع بسيط جدا هنخلى التنسيق كالتالى "0.00" شاهد الكود Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0.00") End Sub لاحظتم الفرق طيب لو 3 أرقام عشريه Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0.000") End Sub ------------------------------------------------------------------------------------------------------------------------------------ 3-التحكم فى تنسيق القيم المدخله بوضع علامه العمله $ Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0" & "$") End Sub هنا تم "0" ( وهو تنسيق رقم صحيح) ثم علامه & ( تكتب من خلال الضغط على Shift+رقم 7 فوق الحروف ) ثم ثم وضع علامه العمله "$" بين اقواس تنصيص فلو حضرتك كتبت 20 ستجد $20 واحد هيقولى هو مش ممكن يكون العلامه يسار الرقم وليس يمين الرقم هقوله ممكن وليه لا هنعكس الموضوع بدل "$"&"0" هنخليها "0"&"$" Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "$" & "0") End Sub فلو حضرتك كتبت 20 ستجد النتيجة 20$ طيب ممكن نخلى علامه العمله وكمان وجود ارقام عشريه طبعا ممكن Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "$" & "0.00") End Sub فلو حضرتك كتبت 20.1 ستجد النتيجة 20.10$ ---------------------------------------------------------------------------------------------------------- 4-التحكم فى تنسيق القيم المدخله بوضع نص بجوار الرقم Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0" & "ريال") End Sub هنا تم كتابه النص بين علامتى تنصيص " ريال" فلو حضرتك كتبت 20 ستجد النتجية 20 ريال -------------------------------------------------------------------------------------------------------------------- 5-التحكم فى تنسيق القيم المدخله بوضع علامه % Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "%0") End Sub فلو حضرتك كتبت 20 ستجد النتيجة %20 ( اذا كانت لغة الكتابه بالكيبورد عربى ) أما اذا كانت لغة الكتابة انجليزى وكتبت رقم 20 ستجد النتيجة 20% فمن خلال لغة الكتابه بالكيبورد تقدر تتحكم فى مكان العلامه % هل تكون قبل الرقم أم بعده واحد هيقولى هو ممكن نجعل الرقم بعلامات عشريه مع وجود علامه % هقوله ليه بس الاحراج يا عبدالتواب شوف يا سيدى الكود التالى Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "%0.00") End Sub فلو حضرتك كتب 20.1 ستجد النتيجة 20.10% ---------------------------------------------------------------------------------------------------------------------------------------- 6-التحكم فى القيم المدخله اذا كانت سالبه توضع بين اقواس Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0;(0)") End Sub فلو حضرتك كتبت -50 ستجد النتجية (50) يعنى تحول اى رقم سالب الى بين اقواس طيب لو كان الرقم السالب فيه علامات عشريه شاهد الكود ولاحظ الفرق البسيط Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0;(0.00)") End Sub مثال لو حضرتك كتبت-20.1 ستجد النتيجة (20.10) -------------------------------------------------------------------------------------------------------------------- 7-التحكم فى القيم المدخله اذا كانت تاريخ لو حضرتك عايز تكتب تاريخ وليكن 2015/8/6 وعايز بعد الادخال يظهر فقط اليوم Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dd") End Sub ستجد ان النتيجه 6 dd تشير الى Day يعنى اليوم **************************************************************************** لو انا عايز النتيجة 6 اللى هى اليوم تظهر فى التكست بوكس 2 ( TextBox2) Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "dd") End Sub فلو حضرتك كتبت التاريخ 2015/8/6 فى التكست بوكس 1 ستجد التكست بوكس 2 مكتوب فيه 6 ************************************************************************************************ لو عايزين نظهر الشهر فقط هنستبدل dd بـ mm وهى اختصار لكلمة (Month) Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "mm") End Sub ستجد النتجية ظاهره فى التكست بوكس 2 وهى 8 ************************************************************************************** لو عايزين نظهر السنه. هنستبدل mm بـ yyyy وهى اختصار Year Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "yyyy") End Sub ستجد النتيجة فى التكست بوكس 2 هى 2015 ***************************************************************************************** لو عايزين نظهر اليوم كتابه 06-08-2015 يطلع فقط الخميس Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "dddd") End Sub ستجد النتيجة فى التكست بوكس 2 هى الخميس ********************************************************************************** لو عايزين نظهر الشهر 06-08-2015 يظهر فقط اغسطس Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "mmmm") End Sub ستجد النتيجة هى اغسطس ********************************************************************** لو عايزين ننسق التاريخ المدخل يكون كالتالى 06/08/2015 Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dd/mm/yyyy") End Sub ****************************************** لو عايزين ننسق التاريخ المدخل يكون كالتالى2015/08/06 شوف الكود Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "yyyy/mm/dd") End Sub ****************************************** لو عايزين ننسق التاريخ المدخل يكون كالتالى06-08-2015 يعنى يكون العلامه بدل من / تكون - Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "yyyy-mm-dd") End Sub ****************************************** لو عايزين نجعل التاريخ كالتالى 06-08-15 ( يعنى أظهار السنه رقمين فقط Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "yy-mm-dd") End Sub هنا خلينا السنه بدل من yyyy الى yy فقط ****************************************** لو عايزين ننسق التاريخ كدا 06 أغسطس2015 Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dd mmmm yyyy") End Sub ****************************************** لو عايزين نخلى التاريخ يظهر كالتالى الخميس أغسطس 2015 Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dddd mmmm yyyy") End Sub ****************************************** لوعايزين نظهر تاريخ اليوم بمجرد وضع مؤشر الماوس فى التكست بوكس Private Sub TextBox1_Enter() TextBox1.Text = Format(Now, "yyyy/mm/dd") End Sub هنا استخدمنا وقت التنفيذ الحدث Enter ****************************************** 8-التحكم فى أجبار المستخدم على ادخال ارقام فقط فى التكست بوكس Private Sub TextBox1_Change() If Not IsNumeric(Me.TextBox1.Value) Then: MsgBox " الرجاء ادخال أرقام فقط ", vbCritical, "خطأ": Me.TextBox1.Value = "": Exit Sub End Sub هنا عملنا كود فى حدث التغيير للتكست بوكس بمجرد كتابة اى حرف وليس رقم ستجد التكست بوكس يرفض الادخال ويقوم بمسح المحتوى اللى تم ادخاله وكمان يظهر رساله استخدمنا فى الكود IF Not IsNumeric ثم التكست المراد ادخال ارقام فقط ووضعه بين قوسين ثم اقفال IF بـ then ****************************************** 9-التحكم فى أجبار المستخدم على ادخال حروف فقط فى التكست بوكس نفس الكود السابق ولكن بدون Not Private Sub TextBox1_Change() If IsNumeric(Me.TextBox1.Value) Then: MsgBox " الرجاء ادخال حروف فقط ", vbCritical, "خطأ": Me.TextBox1.Value = "": Exit Sub End Sub ****************************************** **************************************************************************** ******************************************************** ************************************** الى هنا بحمد الله انتهيت من شرح الخمس محاور المتعلقه بالتكست بوكس والى لقاء اخر من حلقات علمنى كيف اصطاد وسيكون بأذن الله الكمبوبوكس
    5 points
  2. السلام عليكم أخي الكريم إجعلها بصيغة الصفيف {} عن طريق أن تضغط (بعد الانتهاء من كتابة المعادلة في الخلية) ، تضغط Ctrl-Shift-Enter بدلا من Enter وحدها ستكون الصيغة كالتالي =LARGE($C$14:$C$36,{1;2;3;4;5}) مرفق الملف معدلا اكبر خمس قيم.rar
    5 points
  3. أساتذتى واخوانى الأعزاء السلام عليكم ورحمة الله وبركاته اليوم أقدم لكم كودا تستطيع من خلاله أن تعرض على المستخدم رسالة Message box ثم تختفى الـ Message box بعد تعامل المستخدم مع أزرار ها فاذا لم يتدخل تختفى الـ Message box تلقائيا بعد مدة زمنية محددة الكود وعليه شرح بسيط : Sub MokhtarTest() Dim Title As String Dim Delay As Byte Dim iType As Integer Dim Msg As String Dim MyObject As Object ' عنوان الرساله Title = " منتدى أوفيسنا" Delay = 2 ' مدة عرض الرساله بالثانية iType = 0 ' نوع الرسالة يساوى عدد مما يأتى ' من 128 الى 134' من 64 الى 70 ' من 32 الى 38 ' من 16 الى 22 ' من صفر الى 6 Msg = Space(10) & "مرحبا" & vbLf & vbLf & " تاريخ اليوم " & vbLf & vbLf & Date ' حجم ونص الرسالة Set MyObject = CreateObject("WScript.Shell") MyObject.Popup Msg, Delay, Title, iType Set MyObject = Nothing ' تفريغ الذاكرة End Sub تفضلوا المرفق والسلام عليكم displays a timed Message box then hide without click buttons .rar
    4 points
  4. جرب هده الفروميلة =INDEX(A1:A20,MATCH(MIN(COUNTIF(A1:A20,A1:A20)),COUNTIF(A1:A20,A1:A20),0)) هده Array Formula فيجب ادخالها في الخلية عن طريق Shift+Control+ Enter
    3 points
  5. السلام عليكم يا أستادي الفاضل مختار حسين فعلا نحن كلنا هنا لنتعلم و لهدا نحاول دائما تحسين أعمالنا قدر الامكان ... أنا أعتبر كل سؤال أو مشاركة فرصة للتعلم و لتحسين خبراتنا اليك هدا التعديل للكود فهو يتحسب مسبقا لأي أخطاء ممكن أن تحدث كما أنه أسرع و أكثر مرونة بسبب ال Enum Argument ممكن اضافة ميزة أخرى للكود ألا و هي اعطاء المستخدم امكانية ارجاع الخلايا كما كانت قبل التفريغ أو التعديل أو التلوين ملف للتحميل : https://app.box.com/s/3tmxv0k3xxzj3fg6616oounfugns55si الكود في موديول عادي: Option Explicit Private Enum ActionToTake EditCells = 0 EmptyCells = 1 ColorCells = 2 FlashCells = 4 End Enum Private Declare Function sndPlaySound32 Lib "winmm.dll" _ Alias "sndPlaySoundA" (ByVal lpszSoundName _ As String, ByVal uFlags As Long) As Long Sub test() Dim eAction As ActionToTake Dim sAction As String Dim oTargetRange As Range Set oTargetRange = Sheet1.Range("A1:K20") eAction = FlashCells Select Case eAction Case EditCells sAction = "edit" Case EmptyCells sAction = "clear" Case ColorCells sAction = "change the color of" Case FlashCells sAction = "flash" End Select If MsgBox("You are about to " & sAction & " the cells in the Range : " & vbCr & vbCr & _ oTargetRange.Address(external:=True) & vbCr & vbCr & "Go ahead ?", vbExclamation + vbYesNo) = vbYes Then If CheckRangeForErrors(Target:=oTargetRange, WhichAction:=eAction) = False Then MsgBox Err.Description End If End If End Sub Private Function CheckRangeForErrors( _ ByVal Target As Range, _ Optional ByVal WhichAction As ActionToTake = FlashCells _ ) _ As Boolean Dim oCellsWithErrorFormulae As Range Dim oCell As Range Dim ar() As Long Dim j As Long Dim i As Long Dim t As Single On Error Resume Next Set oCellsWithErrorFormulae = Target.SpecialCells(xlCellTypeFormulas, 16) If Not oCellsWithErrorFormulae Is Nothing Then With oCellsWithErrorFormulae Select Case WhichAction Case EditCells .Value = "Error Edited" Case EmptyCells .ClearContents Case ColorCells .Interior.Color = vbRed Case FlashCells ReDim ar(1 To .Cells.Count) For Each oCell In .Cells i = i + 1 ar(i) = oCell.Interior.ColorIndex Next oCell For i = 1 To 4 Call sndPlaySound32("C:\windows\media\notify.wav", 1) .Cells.Interior.ColorIndex = 3 t = Timer Do DoEvents Loop Until Timer - t >= 0.2 j = 0 For Each oCell In .Cells j = j + 1 oCell.Interior.ColorIndex = ar(j) Next oCell t = Timer Do DoEvents Loop Until Timer - t >= 0.2 Next i i = 0 For Each oCell In .Cells i = i + 1 oCell.Interior.ColorIndex = ar(i) Next oCell Erase ar Set oCellsWithErrorFormulae = Nothing Set oCell = Nothing End Select End With CheckRangeForErrors = True End If End Function
    3 points
  6. حفظك الله استاذي عبدالعزيز ما هو الا تطبيق لما تعلمناه في هذا المنتدى الرائع و أتمنى ان تفي بالغرض.
    2 points
  7. السّلام عليكم و رحمة الله و بركاته بارك الله فيك الأخ الكريم مختار البركاني على المعادلّة التي أراها موفّقة بإذن الله .. جزاك الله خيرا و زادها بميزان حسناتك
    2 points
  8. اخي حسام تفحص المرفق الكهرباء.rar
    2 points
  9. السلام عليكم ورحمة الله وبركاته أخي وأستاذي الكبير جعفر الطريبق الله يبارك فيك وجزاكم الله كل خير وأتشرف أن تكون معلمي في مجال البرمجة والعمل معكم في أنشاء اضخم وأكبر البرامج المحاسبية على أكسل أنت في مجال البرمجة ونحن في مجال التصميم والرسم وأن شاء الله نكون مع بعض وكافة الأعضاء الكرام منبراً لنشر العمل والمعرفة في أرجاء الارض والأمة الاسلامية بارك الله فيكم الموضوع أصبح مجاب بشكل نهائي تقبل مروري وتحياتي
    2 points
  10. اخي العزيزاهلا وسهلا بك بما انك جديد اطلع على التعليمات العامة وقم بتعريب اسمك ثانيا ارفق الملف حتى يستطيع من يملك الوقت لمساعدتك
    2 points
  11. الافضل استخدام pivot table واظهار اعلى قيم كما تريد اكبر خمس قيم.rar
    2 points
  12. 2 points
  13. Version 4.0.0

    1574 تنزيل

    برنامج العطاء للتقسيط القروض و الاقساط اسم البرنامج : برنامج العطاء للتقسيط نسخة البرنامج : النسخة 4 متطلبات البرنامج : برنامج اوفيس اكسس 2003 صلاحية البرنامج : برنامج مجاني مفتوح يتم تسجيل الاقساط للعميل واظهار المسدد والمتبقي على العميل كذلك طباعة تقرير سواء باسم العميل لوحدة او برقم هوية العميل في حالة وجود عدد من الملفات لهذا العميل وكذلك طباعة كمبيالة للعميل - عقد مبايعة - مخالصة والباقي تقدر تكتشفة بالبرنامج البرنامج يتم استعمالة في تقسيط بطاقات سوا وغيرها لمن يعملون في التقسيط نريد ارائكم واقترحتكم ومشاركاتكم بعد تجربة البرنامج في هذه الصفحة رابط البرنامج البرنامج من هنا كما تم رفعة على مكتبة اوفيسنا
    1 point
  14. أبدأ بحمد الله أولا وأخيرا على ما انعم ووفق وأصلي واسلم على الرحمة المهداة والسراج المنير نبينا محمد وعلى آله وصحبه وسلم ... وبعد كل عام وأنتم بخير وأعاد الله علينا أيامه الكريمة بالخير واليمن والبركات في موضوع اخي الكريم ابو عبدالرحمن وطلبه لواجهة برنامج لتسجيل الأطفال لرياض الاطفال او الروضة علي هذا الرابط فضلت ان تكون في مشاركة منفصلة لتعميم الفائدة ان شاء الله تعالى بشكل بسيط وجذاب صدقة جارية لفارس من فرسان منتدانا أوفيسنا أخي ومعلمنا عماد الحسامي رحمة الله عليه ورحم جميع المسلمين وغفر لهم الأحياء منهم والأموات حتي لا أطيل عليكم شرح مبسط للبرنامج أترككم لتجربة البرنامج في المرفقات وارحب بمشاركتكم في اجراء اية تعديلات وفقنا الله واياكم للصالحات مع تحياتي // ضاحي الغريب KG_Dahy.rar الان الاصدار الثاني علي الرابط التالي اضغط هنا
    1 point
  15. السلام عليكم اريد ايجاد اكبر خمس قيم في الملف استخدم الدالة =MAX($C$14:$C$36;{1;2;3;4;5}) كذالك الدالة =LARGE($C$14:$C$36;{1;2;3;4;5}) اصبحة النتيجة اكبر خمس قيم.rar
    1 point
  16. السلام عليكم ورحمة الله وبركاته وبعد ,,, أقدم لكم اخوتى الأفاضل كودا يقوم بفحص نطاق من الخلايا ويحدد فقط الخلايا التى تحوى معادلات ذات القيم الخاطئة ويميزها بالتلوين أو التعديل أو التفريغ أو بعمل فلاش لتلك الخلايا لك الخيار فى اختيار شكل التمييز المناسب الكود وعليه شرح بعض السطور : Option Explicit Private Declare Function sndPlaySound32 Lib "winmm.dll" _ Alias "sndPlaySoundA" (ByVal lpszSoundName _ As String, ByVal uFlags As Long) As Long Sub CheckRangeForError() ' by mokhtat 2/10/2015 ' Error values include #DIV/0!, #N/A, #NAME?, #NULL!, #NUM!, #REF!, and #VALUE!. Dim C As Range Dim i As Integer Dim PlaySound As Boolean ' تحديد نطاق الفحص Sheets("Sheet1").Range("A2:F20").Select ' تحديد الخلايا التى تتضمن أخطاء Selection.SpecialCells(xlCellTypeFormulas, 16).Select ' استدعاء صوت من أصوات الويندوز للتنبيه على انتهاء الفحص PlaySound = True If PlaySound Then Call sndPlaySound32("C:\windows\media\notify.wav", 1) ' حدد الصوت المفضل لك طبقاً للمسار المقابل End If ' رسالة الى المستخدم بسؤال عن الرغبة فى التمييز أم لا If MsgBox(" تم انتهاء الفحص , هل تريد تمييز الخلايا ؟ ", vbYesNo + vbQuestion) = vbNo Then Exit Sub ' فى حالة اختيار لا يتم الخروج من الاجراء Else ' فى حالة اختيار تعم يتم عمل تمييز للخلايا بالتفريغ أو بالتعديل أو التلوين أو الفلاش ' ------------------------------------------------------------ ' تمييز الخلايا التى بها اخطاء بالتعديل ' For Each C In Sheets("Sheet1").Range("A2:F20") ' If IsError(C.Value) Then ' C.Value = "معادلة خاطئة" ' End If ' Next C '------------------------------------------------------------- ' تمييز الخلايا التى بها اخطاء بالتفريغ ' For Each C In Sheets("Sheet1").Range("A2:F20") ' If IsError(C.Value) Then ' C.Value = "" ' End If ' Next C '------------------------------------------------------------- ' تمييز الخلايا التى بها اخطاء بالتلوين ' For Each C In Sheets("Sheet1").Range("A2:F20") ' If IsError(C.Value) Then ' C.Interior.ColorIndex = 3 ' End If ' Next C '------------------------------------------------------------- ' تمييز الخلايا التى بها اخطاء بالفلاش For Each C In Sheets("Sheet1").Range("A2:F20") If IsError(C.Value) Then C.Select With C For i = 1 To 2 ' عدد مرات الوميض Application.Wait (Now + TimeValue("0:00:01")) ' انتظار مؤقت لمدة ثانية .Interior.ColorIndex = 6 Application.Wait (Now + TimeValue("0:00:01")) .Interior.ColorIndex = 7 Next .Interior.ColorIndex = xlNone .Font.Color = -16777024 End With End If Next '------------------------------------------------------------ End If End Sub تفضلوا المرفق وتقبلوا تحياتى select all cells if contains Error value .rar
    1 point
  17. السلام عليكم ورحمة الله وبركاته لدي برنامج للموظفين عباره عن قاعدة بيانات تحتوي على الموظفين ومدة خدمة الموظف والدورات التي التحق بها وخلاف ذلك المشكله عند فتح البرنامج تظهر رساله خطأ ( نتج عن إعداد خاصية " حقول - الربط - الأساسية " هذا الخطأ " Return Without GoSup" ارجو حلها ولكم جزيل الشكر
    1 point
  18. إنَّا لله وإنا إليه راجعون خبر وفاة علم من أعلام الثقافة في المنتدي خبر هزنا وأثر فينا جميعا ربنا يرحمك ياأستاذنا الرائع صاحب القلب الصافي ربنا يوسع عليك في قبرك ويجعل أعمالك وكلامك الطيب صدقة جارية لك وداعا أستاذي
    1 point
  19. أخي الكريم حسام أهلاً بك في المنتدى ونورت بين إخوانك قم بضغط ملفك ببرنامج الوينرار ثم قم برفعه لتجد المساعدة من إخوانك
    1 point
  20. مشكور الاستاذ المبدع وائل ابو الأوائل فعلا جربت مثل ما شرح الفيديو لكن للاسف انا الاكسل عندي به عطل لانه فيه برامج اخرى لم يستطع التعامل معها كما هو موضوع لها سأعيد تثبيته ان وجدت القرص وفعلا هو شرح ممتاز وفوق الخيال وكنت ابحث عن ذلك مدة اشهر حتى وفقت الى هذا المنتدى ومن ثم طرح الموضوع بواسطة احد المشرفين وشكرا لك مرات كثيرة والى الامام يا تاج الابداع
    1 point
  21. مشكورين الجميع على التواصل اللي حاصل ابداع تميز انفراد تعاون محبة عطاء
    1 point
  22. كود جميل للاستاد الفاضل مختار حسين عند بعض الملاحظات 1- من الأفضل اضافة Error Handling للكود لتفادي ال RunTime error في حالة عدم وجود أي خلايا تحتوي على معادلات في الصفحة 2- يمكن الاستغناء عن Select ليكون الكود أسرع 3- في حالة وجود أكثر من خلية حاوية لمعادلة يمكن اشغال الوميض على كل الخلايا مرة واحدة في نفس الوقت .. هدا الأمر من شانه الاسراع بالكود خصوصا لو وجدت خلايا عديدة 4- من الأحسن تغيير شكل الكود بحيث يصبح التعديل و التفريغ و التلوين و الوميض Arguments يتم اختيارهم من طرف المستخدم .. هدا من شأنه اعطاء للكود مرونة كبيرة
    1 point
  23. الأساتدة الافاضل ياسر و توكل كما سبق لي أن قلت لم أجرب الكود و اعتمدت فقط على ال ASCII MAP للحروف العربية لكي أجرب الكود يجب أن أغير السيتينس عبر Control Panel-Regional Settings لكن الجهاز يطلب مني ادخال سيدي الويندوز XP الدي ضاع مني
    1 point
  24. مجرد فكرة خفيفة لية تلوووووووووووووووووب في المدى خلية خلية وانت ممكن تعمل اللي انتة عاوزة بالفلترة الفكرة بالمرفق Book1.rar
    1 point
  25. أخي إسلام الموضوع كان عن: بينما ردك كان لإنشاء سجل جديد!! جعفر
    1 point
  26. وعليكم السلام الامر هو: DoCmd.GoToRecord , , acLast ويعمل على جميع اصدارات الاكسس جعفر
    1 point
  27. السلام عليكم ورحمة الله وبركاته: فرز رائع ومذهل بضغطة زر واحدة تم الترتيب الأسماء هجائياً ذكوراً ثم إناثاً حسب الصفوف ما شاء الله بارك الله لا قوة إلا بالله جزاك الله خيراً...يا أبا البراء ...لا فض فوك ...اللهم اجعل علمه نافع وقلبه لذكرك خاشع وبدنه لك خاضع...وأدخله الجنة برحمتك بسلام...آمين
    1 point
  28. أخي الكريم قنديل الصياد بارك الله فيك كنت قد جهزت الملف بالأمس ولكن انقطعت الكهرباء فجأة إليكم الملف التالي Sort Data.rar
    1 point
  29. تشكر اخي وائل بعد اذنك اضافة بسيطة Book1 salim.zip
    1 point
  30. وعليكم السلام في آخر شيت انتبه للخليتين G1 , G2 لأن الخلية A1 تأخذ بياناتها منهما تحياتي تفعيل البطاقتين1.rar
    1 point
  31. اخي ابا الحسن والحسين عملك ابداع يضاف الي قائمه ابداعاتك القيمه التي نتمني من الله ان يجعلها في ميزان حسناتك ان شاء الله ولكن تعليقي الوحيد هو انه مادام المستخدم يملك كلمه المرور او استخدامه في الفتره المسموح بها فهو مالك الملف فيحق له ان يستخدم الملف بكامل امكانياته والحاله الوحيده التي يفتح بها الست اعمده فقط هي حاله دخول كلمه السر الخطأ وهذا مجرد رأي ليكمل الابداع
    1 point
  32. الله ينور ولا اروع أداء متميز بارك الله في كل من ساهم في هذا العمل المتميز الله ينور يا رجالة
    1 point
  33. اساذنا العزيز وهنا عملت على تصغير حجم قاعدة بياناتك ، فصغرت من 56MB الى 12MB جعفر Folow up V.2.zip
    1 point
  34. حياك الله أخي الاستاذ علي واذا حبيت ، ممكن اغير لك الرقم 1 (للغياب) ، بعلامة صح او بحرف غ جعفر الشئ المهم هو ان المرفق 221.Folow up V.2.accdb.zip يجب تغيير صيغة الملف الى 7z وطريقة تغيير الواحد الى علامة الصح ، او حرف الـ غ ، هي في التنسيق فقط جعفر Folow up V.2.accdb.zip
    1 point
  35. الأعضاء الأعزاء أسعد الله أوقاتكم بكل خير يسرني إعلامكم بأنني سأقوم قريباً برفع ملفات الفيديو الخاصة بالدورة المميزة والأولى على مستوى المنتديات العربية: إكسيل 2013 المستوى المتقدم حيث ستكون هذه الدورة استكمالاً لدورتنا السابقة " مهارات الاستخدام الفعال لبرنامج اكسيل 2013" والتي سوف تجدونها على الرابط التالي: https://www.youtube.com/watch?v=T7XFV5YnnUk&list=PLPoNGHomnbeXAKxx955de2LObBbofdfWx وسوف تحتوي هذه الدورة على أكثر من 35 درس فيديو عالي الجودة تغطي العديد من المواضيع المتقدمة والمتقدمة جداً. الخطوط العريضة لهذه الدورة هي كما في الصورة المرفقة. http://www.mrkzgulf.com/do.php?img=67347 فانتظرونا......... أخوكم م/نضال الشامي Google+ Twitter
    1 point
  36. السلام عليكم استاذ مختار كود جميل و دقيق وشرح مبسط شكراً لحسن توصيل المعلومة .............وكما قال الاستاذ ياسر خليل .أسلوب جديد ومميز ورائع بارك الله فيك واستغل هذه الفرصه للاساتذة الافاضل ان يقومو مشكورين عند وضع كود بشرحه حتى يتسنا لنا فهم الكود والتعديل عليه وتوفير وقت وجهد الشخص الذي يريد المساعدة ........فلا تحرمونا من شرح الاكود .....
    1 point
  37. وعليكم السلام . هل مخترفى الاكسس على وزن المخرفين الاجابة بالصور من التقرير: لا يوجد عندك تذييل لقسم sit: . فعملنا التذييل ، وغيرنا في اعداداته: . والنتيجة: جعفر 227.Human Resources DataBase.mdb.zip
    1 point
  38. بارك الله فيك أخي الحبيب ياسر على حسن استجابتك هكذا يكون العمل .. يسر على إخوانك ييسر الله عليك والشكر موصول لصاحب الكود الأخ الغائب عن العين الحاضر في القلب الأخ الغالي المتميز رجب جاويش تقبلوا تحياتي
    1 point
  39. اخي الفاضل هذان السطرا تم ايقافهما بالعلامة الموضوعة علي يسار كل سطر 'PURPOSE: Different ways to find the last row number of a range 'SOURCE: www.TheSpreadsheetGuru.com هذان السطران تعريف لمتغيرات يختارها المبرمج ويقوم بتعريف البرنامج عليه وعلي ماذا تشير Dim sht As Worksheet Dim LastRow As Long هذا السطر جعل المبرمج احد المتغيرات عندما يذكرها فانها تشير الي الشيت رقم 1 في هذا الملف Set sht = ThisWorkbook.Worksheets("Sheet1") هذا السطر تم ايقافه 'Ctrl + Shift + End هنا يعرف المبرمج المتغير الثاني وهو يشير الي الصف الاخير للخلاياالغير فارغة في العمود الاول من الشيت الاول LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row هذا السطر تم ايقافه(ويعتبر كعنوان لايؤثر في الكود) 'Using UsedRange هنا يتم معرفة مدي الخلايا المستخدمة sht.UsedRange 'Refresh UsedRange هنا جعل المتغير الثاني يساوي اخر صف في صفوف المدي المستخدم LastRow = sht.UsedRange.Rows(sht.UsedRange.Rows.Count).Row هذا السطر تم ايقافه(ويعتبر كعنوان لايؤثر في الكود 'Using Table Range هنا جعل المتغير الثاني يساوي عدد صفوف الجدول المستخدم LastRow = sht.ListObjects("Table1").Range.Rows.Count هذا السطر تم ايقافه(ويعتبر كعنوان لايؤثر في الكود 'Using Named Range هنا جعل المتغير الثاني يساوي عدد صفوف مدي مخفوظ LastRow = sht.Range("MyNamedRange").Rows.Count هذا السطر تم ايقافه 'Ctrl + Shift + Down (Range should be first cell in data set) هنا جعل المتغير الثاني يساوي عدد صفوف الخلايا المستخدمة LastRow = sht.Range("A1").CurrentRegion.Rows.Count End Sub ارجو ان تكون هناك افادة تحياتي
    1 point
  40. لو سمحت هل فام أ / محمد بعمل كنترول شيت للتعليم الزراعي كما طلبت أرجو الأفادة
    1 point
  41. جـــــزاكم الله كل خير علي ما تقدموه في هذا الصرح العملاق
    1 point
  42. http://www.mediafire.com/download/2ut575z5k6q9s7h/برنامج_الكومى_لعمل_الارقام_السرية.rar تم التعديل بتاريخ 14 ديسمبر 2014
    1 point
  43. المجموعة الثالثة المجموعة الثالثة.rar
    1 point
  44. المجموعة الثانية المجموعة الثانية.rar
    1 point
  45. السلام عليكم بعد اذن اخي الحبيب ابو اسامة يمكنك البحث من خلال الخلية A6 Private Sub Worksheet_Change(ByVal Target As Range) Dim X As Integer, Y As Integer KH_Range If Target.Address = MyCell.Address Then If MyCell <> "" And IsNumeric(MyCell) Then X = MyCell.Value + 3 For Y = 1 To 21 MyRange.Areas(Y) = ورقة2.Cells(X, Y + 2) Next Y Else MyRange.ClearContents End If End If End Sub وتعديل البيانات وترحيلها مرة اخرى Public MyRange As Range, MyCell As Range Sub KH_Range() Set MyRange = ورقة1.Range("B6,C6,A12,B12,C12,D12,E12,F12,G12,H12,A15,B15,C15,D15,E15,F15,G15,H15,E6,F6, G6") Set MyCell = ورقة1.Range("A6") End Sub Sub KH_START() Dim X As Integer, Y As Integer KH_Range If IsEmpty(MyCell) Or IsNumeric(MyCell) = False Then MsgBox "استخدام خاطىء": GoTo 1 X = MyCell.Value + 3 For Y = 1 To 21 ورقة2.Cells(X, Y + 2) = MyRange.Areas(Y) Next 1 MyCell.ClearContents End Sub تفضل المرفق ___________.rar
    1 point
  46. السلام عليكم ممكن نعدل في الكود حسب ما تريد Sub ttt() x = ورقة2.Cells(Rows.Count, 5).End(xlUp).Row + 1 For y = 3 To 28 ورقة2.Cells(x, y) = Range("r_" & y - 2) 'Range("r_" & y - 2) = "" هذا السطر ان اردت مسح الخلايا بعد الترحيل Next End Sub ___________1.rar
    1 point
  47. السلام عليكم و رحمة الله شاهد المرفق test.rar
    1 point
  48. السلام عليكم و رحمة الله شاهد المرفق test.rar
    1 point
×
×
  • اضف...

Important Information