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

الحسامي

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

    730
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    13

كل منشورات العضو الحسامي

  1. السلام عليكم بارك الله فيك اخي خبور وبعد اذنك من اجل اثراء الموضوع والمشاركة معكم في هذا الموضوع هنا كود اخر مع نفس المزايا والتنسيقات ترتيب العشرة الاوائل بالكود4.rar
  2. السلام عليكم اخي احمد لا اعتقد ان مستواي في الدوال اكثر منك وارجوا من احد اخواننا الخبراء في الدوال من شرحها ----------------------------------------------- اما الطلب الثاني بسيط كل ما عليك وضع الكود التالي في اخر سطر من اكواد كبسة " تاكيد الادخال " ComboBox1.RowSource = "dada"
  3. السلام عليكم اخي احمد(ابو عبدالله ) العزيز عند وضع البيانات عند استخدام ال ComboBox و الListBox وجعل هذه الادوات لا تحتوي على اسطر فارغة وتكون حسب البيانات الموجودة في الاساس وعند زيادة صف جديد يتم زيادته تلقائيا في هذه الادوات وعند مسح اي بند في الصفحة يتم مسحه في الادوات يتم استخدام ما يسمى المدى الديناميكي وهذا المدى يتم تعريفه في تسمية النطاقات ولكن باستخدام معادلات لذلك ومن اشهر هذه المعادلات هذه المعادلة وهي حسب برنامجك =OFFSET(Sheet3!$A$2,0,0,COUNTA(Sheet3!$A$2:$A$50000),1) وضعها بدل النطاق الذي استخدمته عند تسمية النطاق dada =Sheet3!$A$2:$A$8
  4. السلام عليكم اخي ابو محمد شاهد المرفق عسى ان يكون المطلوب kkhh12new.rar
  5. السلام عليكم اخي ابو محمد شاهد المرفق عسى ان يكون المطلوب kkhh11.rar
  6. السلام عليكم بارك الله فيك وجزاك الله خيرا معلومات مفيدة جدا
  7. السلام عليكم ما شاء الله اخي خبور بارك الله فبك وجزاك الله خيرا
  8. السلام عليكم ما شاء الله عليك اخي احمد كلمة حق : مبدع وصاحب افكار متميزة وصاحب فكر عالي في التطبيق زما نزال ننتظر منك المزيد اخوك عماد الحسامي
  9. السلام عليكم نعم اخي كيماس كلامك صحيح ويمكنك كذلك تعديل هذه الجزئية من الكود فقط If Not Intersect(Target, Range("a1")) Is Nothing Then الى الكود التالي If Not Intersect(Target, Range("a1")) Is Nothing And Target <> "" Then
  10. السلام عليكم اخي العزيز شاهد الملف New Microsoft Excel Worksheet (2).rar
  11. السلام عليكم اخي العزيز استخدم الكود التالي وضعه في حدث الصفحة Change Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("a1")) Is Nothing Then ActiveSheet.Name = Target End If End Sub وهنا مرفق مثال تغيير اسم الصفحات.rar
  12. السلام عليكم اخي الغالي ياسر خليل " ابو البراء " بارك الله فيك واراح الله بالك --------------------- بالنسبة للطلب الثاني : امكانية استخدام الصفحة والفورم موجود اخي العزيز من خلال نافذة خصائص الفورم اختار الخاصية ShowModal واجعل قيمتها False
  13. هنا بعض المواضيع المتعلقة باستخدامات ال VBA في ال EXCEL * كيفية استخدام الخلايا وبرمجتها بواسطة اكواد ال VBA حيث تم شرح كافة الجوانب المتعلقة بهذا الجانب مع وضع بعض الامثلة العملية وتم عمل هذا الموضوع باجتهاد شخصي وقد يحتمل الصواب والخطأ وقد يحتمل النسيان فان كنت قد أصبت فالحمد لله وانت كنت قد اخطأت فذلك يعلمني وان كنت قد نسيت فجل من لا ينسى او ان اكون قد اغفلت بعض الجوانب التي لم اضعها في الحسبان كل ذلك تجدونه على الرابط التالي : شرح كيفية استخدام الخلايا في الاكسل عند استخدام ال VBA
  14. السلام عليكم ورحمة الله وبركاته اخي العزيز حسب ما فهمت من سؤالك لنفرض اننا نريد الفلترة حسب جزء من كلمة وهذا الجزء ندخله مثلاً في الخلية F3 اي يتم قراءة هذا الجزء من الكلمة عن طريق الخلية فنستخدم الكود التالي Range("A1:e1").AutoFilter Field:=2, Criteria1:="=*" & Range("f3") & "* " أرجوا ان يكون المطلوب
  15. السلام عليكم ورحمة الله وبركاته اخي العزيز الكود سليم نوعا ما لكن : هذا الكود عبارة عن سطر واحد فقط ويمكن كتابته على سطرين لكن يجب فصلهما باشارة "_" أي : الكود الذي لديك مكتوب بهذه الطريقة وهي خاطئة ويبدو من الوهلة الاولى انه مكون من سطرين ويعتبره الفيجول على اساس انه سطرين مستقليين فلا يتم التعرف عليه Private Sub OptionButton1_Click() ChartObjects("Chart 5").Chart.SetSourceData Source:=Sheets("Sheet1").Range("B4:B16,c4:c16") End Sub والصحيح يمكن كتابته اما بسطر واحد هكذا Private Sub OptionButton1_Click() ChartObjects("Chart 5").Chart.SetSourceData Source:=Sheets("Sheet1").Range("B4:B16,c4:c16") End Sub او يمكنك كتابته على سطريين ولن بفصلهما باشارة " _ " هكذا : Private Sub OptionButton1_Click() ChartObjects("Chart 5").Chart.SetSourceData _ Source:=Sheets("Sheet1").Range("B4:B16,c4:c16") End Sub
  16. السلام عليكم اخي العزيز الكود السابق يمكن اختصاره كثيرا وهناك العدد من البنود التي يمكن اختصارها كالتالي : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("b1:b100")) Is Nothing Then '-------------------------------- Application.EnableEvents = False If Target.Count > 1 Then Exit Sub Target.Offset(0, -1).NumberFormat = "dd mmm yyyy " Target.Offset(0, -1).Value = Now If IsEmpty(Target.Cells) Then Target.Offset(0, -1).ClearContents Application.EnableEvents = True End If End Sub اما شرح هذا الكود فاليك If Not Intersect(Target, Range("b1:b100")) Is Nothing Then '-------------------------------- هنا لتحديد النطاق الذي يمكن للكود ان يعمل بواسطته وهنا عند التغيير في اي من الخلايا في النطاق المحدد فسيتم تنفيذ المطلوب وان كان التغيير في غير هذا النطاق فلن يتم تنفيذ الكود Application.EnableEvents = False يستعمل هذا الكود عندما يكون هناك اكثر من كود للصفحة الواحدة ويعمل هذا الامر على تجميد الاكواد الاخرى ويتم تنفيذ الكود في هذا الحدث فقط ولكن في كودك هذا وكون هناك كود واحد فقط وبالتالي لا تلزم هذه الجزئية من الكود وعند استخدام هذه الامر يجب اعادة تفعيل الاكواد الاخرى وذلك بوضع الكود التالي في نهاية الكود Application.EnableEvents = True If Target.Count > 1 Then Exit Sub هنا في حالة اختيار اكثر من خلية لن يتم تنفيذ شئ ولن يتم تنفيذ الكود Target.Offset(0, -1).NumberFormat = "dd mmm yyyy " هنا يتم عمل تنسيق للخلية المقابلة ( السابقة ) في العمود A عند الكتابة في الخلية في العمود الثاني B Target.Offset(0, -1).Value = Now هنا يتم وضع التاريخ في الخلية المقابلة ( السابقة ) في العمود A عند الكتابة في الخلية في العمود الثاني B If IsEmpty(Target.Cells) Then Target.Offset(0, -1).ClearContents هنا عند مسح الخلية في العمود الثاني B بواسطة Delete Key فسيقوم بمسح الخلية في العمود السابق A
  17. السلام عليكم اخي yamz بارك الله فيك بالنسبة للدرس الخامس فهذا درس في بعض الادوات الاضافية التي قد لا تعمل مع بعض نسخ الاكسل ----------------------------------------------------- اخي الحبيب قصي بارك الله فيك وجزاك الله عنا خيرا ----------------------------------------------------- اخي الغالي ابو البراء وانت كذلك لك منزلة خاصة جدا في قلوبنا ----------------------------------------------------- اخي العزيز جلال بارك الله فيك وجزاك الله عنا خيرا ----------------------------------------------------- اخي العزيز kemas بارك الله فيك وجزاك الله عنا خيرا ----------------------------------------------------- اخي العزيز احمد (ابو عبد الله ) بارك الله فيك وجزاك الله عنا خيرا انت والله الي طقع من الاخر (طبعا : طقع من الاخر معناها درجة اولى "SUPER " ) ----------------------------------------------------- اخي العزيز ابن علية بارك الله فيك وجزاك الله عنا خيرا ونحن ندعو لك بالخير والبركة لما تقدمة من اعمال مميزة نتعلم منها الكثير الكثير ----------------------------------------------------- اخي العزيز mathhero بارك الله فيك وجزاك الله عنا خيرا ----------------------------------------------------- اخي العزيز moh_hamza بارك الله فيك وجزاك الله عنا خيرا ----------------------------------------------------- اخي العزيز نادر بارك الله فيك وجزاك الله عنا خيرا
  18. السلام عليكم بارك الله فيك اخي قصي وجزاك الله خيرا اخي الحبيب ابو البراء بارك الله فيك انت فين يا جدع غايب فين الك وحشة
  19. السلام عليكم مرفق الملف مع عمل الفلترة للبيانات اما المعادلات للخلايا الثلاث فمن الافضل ابقاءها كما هي Main File 3.rar
  20. السلام عليكم بعد إذن الحبيبان مهندس المنتدى طارق وعالم المنتدى العزيز ابن علية هنا حل اخر باستخدام الاكواد فقط ادخل التاريخ للفترتين ويتم جلب البيانات تلقائيا SALES4.rar
  21. السلام عليكم ورحمة الله وبركاته بارك الله فيك اخي احمد " ابو عبد الله " على هذا الابداع وبحق ملف اقل ما يمكن ان يقال فيه انه اكثر من رائع وان شاء الله ان يشفي لك ابنك نبيل وان يكون باتم صحة وعافية ------------------------------- واخي احمد للافادة عندما يكون هناك ادوات متكررة كثير ومنعا للبس واختصار الاكواد يمكن ان تستخدم جمل التكرار لذلك وبصورة اوضح :- لو ان لديك مثلا TextBox عدد 10 وذات تسلسل رقمي باسماءها واردت ان تقوم بمسحها مثلا فيمكنك استخدام الكود التالي For i = 1 To 10 Me.Controls("TextBox" & i) = "" Next i وهذا الكود السابق يعادل الكود التالي TextBox1 = "" TextBox2 = "" TextBox3 = "" TextBox4 = "" TextBox5 = "" TextBox6 = "" TextBox7 = "" TextBox8 = "" TextBox9 = "" TextBox10 = "" واعذرني اخي احمد على هذا التطفل وانما اردت التوضيح للفائدة والله من وراء القصد
  22. السلام عليكم ورحمة الله وبركاته اخي خبور بارك الله فيك على هذه الملفات التي تعتبر بحد ذاتها مرجع علمي
  23. السلام عليكم ورحمة الله وبركاته الاخوة الاعزاء ابو عبدالله (الجزيرة) احمد يعقوب زمان ابو عاصم احمد حمور (ابو عبدالله) خبور خير زياد علي --------------------------- بارك الله فيكم وجزاكم الله خيرا وما نحن نهدف إلا الى نشر العلم ما استطعنا ولا نريد على ذلك اجرا سوا الدعاء ولوجه الله تعالى وما نحن إلا منظومة نكمل بعضنا البعض نعلم ونتعلم من الاخرين
  24. السلام عليكم ورحمة الله وبركاته اخي وحبيبي زياد علي والله اننا مشتاقون لك ودائما انا وحبيبك الغالي يحيى حسين في السؤال عنك وكم احزننا ما اصابك في فقيدكم الغالي والدك العزيز رحمه الله وجعل مثواه الجنه باذن الله تعالى وجعلها خاتمة الاحزان ----------------------------------------------------------- اخي احمد ( ابو عبدالله ) بارك الله فيك وجعلك كما عودتنا مبدع ومتميز ------------------------------------------------------------ اخي ابو عبدالله ( الجزيرة) بارك الله فيك وان كنا نفتقدك في الاونة الاخيرة ------------------------------------------------------------ اخي ابو عاصم بارك الله فيك وجزاك الله خيرا على مرورك ------------------------------------------------------------ استاذنا الغالي خيور خير بارك الله فيك وجزاك الله خيرا على ابداعاتك وفنك الفريد في الاكسل
×
×
  • اضف...

Important Information