بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 02/22/16 in مشاركات
-
شكرا اخي جعفر على هذه النوادر الجميلة وتفضل اخي عبدالله يمكنك كتابة اي شيء على الزر Dim resalh As Integer Ok = "أكيد موافق" Cancel = "not agree" MessageBoxH Me.hwnd resalh = MsgBox("تفضل هذه الخلطة في اللغة", vbOKCancel, "رسالة")5 points
-
عدم الرد من صاحب السوال جعلني ادخل مرة اخرى اواكتشف اني لم ارفق الوحدة المسؤولة عن الترجمة تفصل والصقها في صفحة وحدة نمطية جديدة Public Ok, Cancel, ABORT Public RETRY, IGNORE, YES, NO Private m_hHook As Long Private Const IDOK = 1 Private Const IDCANCEL = 2 Private Const IDABORT = 3 Private Const IDRETRY = 4 Private Const IDIGNORE = 5 Private Const IDYES = 6 Private Const IDNO = 7 Private Const WH_CBT = 5 Private Const GWL_HINSTANCE = (-6) Private Const HCBT_ACTIVATE = 5 Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _ (ByVal hwnd As Long, ByVal nIndex As Long) As Long Private Declare Function SetDlgItemText Lib "user32" Alias "SetDlgItemTextA" _ (ByVal hDlg As Long, ByVal nIDDlgItem As Long, _ ByVal lpString As String) As Long Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _ (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, _ ByVal dwThreadId As Long) As Long Private Declare Function UnhookWindowsHookEx Lib "user32" _ (ByVal hHook As Long) As Long Public Sub MessageBoxH(hwndThreadOwner As Long) Dim hInstance As Long Dim hThreadId As Long hInstance = GetWindowLong(hwndThreadOwner, GWL_HINSTANCE) hThreadId = GetCurrentThreadId() m_hHook = SetWindowsHookEx(WH_CBT, AddressOf _ MsgBoxHookProc, hInstance, hThreadId) End Sub Private Function MsgBoxHookProc(ByVal uMsg As Long, ByVal _ wParam As Long, ByVal lParam As Long) As Long If uMsg = HCBT_ACTIVATE Then SetDlgItemText wParam, IDOK, Ok SetDlgItemText wParam, IDCANCEL, Cancel SetDlgItemText wParam, IDABORT, ABORT SetDlgItemText wParam, IDRETRY, ABORT SetDlgItemText wParam, IDIGNORE, ABORT SetDlgItemText wParam, IDYES, YES SetDlgItemText wParam, IDNO, YES UnhookWindowsHookEx m_hHook End If MsgBoxHookProc = False End Function4 points
-
شرح للحل الذي وضعته 1- في الورقة رقم 2 تم وضع معادلة في العامود C لاستخرج جميع الموردين (محلي) بواسطة المعادلة التالية (صفيف) =IF(ROWS($C$2:C2)>COUNTIF(Sheet1!$A$2:$A$100,$J$1),"",INDEX(Sheet1!$B$2:$B$100,SMALL(IF(Sheet1!$A$2:$A$100=$J$1,ROW($A$2:$A$100)-ROW($A$2)+1),ROWS($C$2:C2)))) 2-من هذاالنطاق وضعت Define name اسميته (MouwaredM) بواسطة المعادلة التالية (الخلية 1$J$ تحتوي على كلمة "محلي") =$C$2:INDEX($C$2:$C$100,COUNTIF(Sheet1!$A$2:$A$100,$J$1)) 3- نفس الشيء بالنسبة للموردين (صادر) في العامود G اسميته (MouwaredT) 4- تم اخفاء الورقة 2 لعدم العبث بها غن طريق الخطأ 5- ننتقل الى الصفحة الاولى في العامود (data validation ( I غلى كل الخلايا تم وضغ المعادلة التالية =IF($H2="","",IF($H2=Sheet2!$J$1,MouwarredM,MouwaredT)) 6- في العامود J هذه المعادلة =IF($I2="","",SUMIF($B$2:$B$100,$I2,$C$2:$C$100)) مع تحياتي3 points
-
شرح الحل المقدم اولا:تم عمل قائمة منسدلة فى العمود نوع المورد وهذا رابط يوضح اليك طريقى عمل القائمة المنسدلة اضغط لعرض المزيد ثانيا :تم اعداد معادلة صفيف لفرز المحلى والتصدير فى العمود فى n3 و o3 والبحث عن البيان المرتبط بالقائمة المنسدلة فقط {=IFERROR(INDEX($B$2:$B$31;SMALL(IF($A$2:$A$31=N$2;ROW($A$2:$A$31)-1;"");ROW(1:100)));"")} ثالثا : تم اعداد قائمة منسدلة ووضع هذه المعادله فىها =INDEX($N$3:$O$19;;MATCH($H2;$N$2:$O$2;0)) رابعا : فى عمود المديونية تم اعداد معادلة للبحث عن عن القيم بشرط القوائم المنسدلة {=IFERROR(VLOOKUP($H2;IF(($A$2:$A$31=$H2)*($B$2:$B$31=$I2);$A$2:$C$31;"");3;0);"")} هذا شرح مختصر وارجو ان اكون قد وفقت فى ايصال المعلومه تقبلوا منى جميعا تحياتى3 points
-
جزاكم الله خيراً أخي وحبيبي في الله أبو يوسف بارك الله فيك وجعل عملك في ميزان حسناتك يوم القيامة أما بالنسبة للنقد فلن أستطيع المشاركة فيه حيث أجهل طبيعة الملف من حيث أنني أجهل طبيعة العمل ولكن لا تقلق ما أكثر النقاد في منتدانا - لا أقصد الإهانة - بل أقصد أن أشكر الله على تلك النعمة؟ تقبل تحياتي3 points
-
السّلام عليكم و رحمة الله و بركاته بارك الله فيك أخي الغالي و أستاذي الحبيب " ياسر العربي " على الملف المميّز لحساب العمر على الشيت الاكسل و إثراءً للموضوع و للتّنويع ربّما يستفيد منه أحد الأعضاء ..حساب العمر بين تاريخيْن على اليوزرفورم فائق إحتراماتي حساب العمر بين تاريخين.rar3 points
-
السلام عليكم ورحمة الله وبركاته إخوتي الكرام إليكم البرنامج بعد محاولة التعريب فما كان به من خير فمن الله وإن كان من خطأ أو سهو أو نسيان فمني ومن الشيطان جزاكم الله خيراً على حسن أدبكم وكلامكم الرفيع والسلام عليكم New-Userform-.rar3 points
-
موضوع انشاء صفحات html بسيطة جدا ولا تحتاج لخبرة كل ما عليك تنزيل برنامج الفورنت بيج او اي برنامج لتصميم صفحات الاتش تي ام برنامج الفورنت بيج كان ينزل مع نسخ الاوفيس حتى 2003 ولكن تم اسقاطه بعد ذلك من المجموعه ويوجد بديل له اسمه Microsoft Office Publisher ولكن لم اتعامل معه التعامل مع الفورنت بيج كأنك تتعامل مع ملف وورد من كتابة وتنسيقات وجداول وارفاق صور وهكذا وتقوم بحفظ عملك على هيئة صفحة نت html طبعا بعد صنع كافة الصفحات يتم وضعها في برنامج الكتاب الالكتروني مثل وضع الصور باذن الله الموضوع سهل وهحاول اشوفلك الراوبط للبرنامج واوضحلك طريقة عمله ولكن اعذرني الان انا بالعمل والنت هنا يدوب بالفلاشة تصفح وهذه صورة توضح شكل البرنامج ومرفق الصفحة التى تم انشائها او ريح دماغك بردو واعمل شرحك في ملف وورد وحفظ باسم واحفظه بامتداد htm index.rar3 points
-
قائمة بافضل المواقع شهرة وشعبية على مستوى العالم فى الاكسيل Excel حسب Alexa Ranking ========================================== وبكل اسف ولا موقع عربى فيهم . والسبب فى شهرة هذه المواقع حجم التفاعل وتبادل المعلومات والخبرات ادخل اى موقع وشاهد اى موضوع وقارن بنفسك . ولكن نحن فى العالم العربى قد نبخل حتى بعمل اعجاب او مشاركة او نخجل من وضع اراءنا ..........الخ لدينا الكثير من علماء الاكسيل العظماء فى العالم العربى اتمنى من الجميع الدعم لهؤلاء العلماء . واتمنى من مدربى الاكسيل وعلماؤه ان يقدمو ما لديهم بكل الطرق احلم بان نكون افضل من الغرب فى كل شىء .3 points
-
اريد فقط ان انبه الاخ ان المشرف ادخل المعادلة =INDEX($A$1:$A$18,SMALL(IF(ISNUMBER($A$1:$A$18),ROW($A$1:$A$18)),ROWS($G$2:G2))) باستعمال ctrl+shift+entr ;)2 points
-
السلام عليكم لاثراء الموضوع جرب أخى هذه المعادلة =INDEX($A$1:$A$18;SMALL(IF(ISNUMBER($A$1:$A$18);ROW($A$1:$A$18));ROWS($G$2:G2))) New Microsoft Excel Worksheet.rar2 points
-
بسم الله ما شاء الله .. نعم هكذا يكون العمل وتكون الاستفادة القصوى من الموضوع بارك الله فيكم إخواني وأحبابي في الله وجزاكم الله خير الجزاء2 points
-
أخي الكريم أبو يحي جرب الكود التالي Sub Test() Dim Rng As Range On Error Resume Next Set Rng = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeConstants, 1) Rng.Copy Range("C1").PasteSpecial xlPasteValues Application.CutCopyMode = False End Sub تقبل تحياتي Use SpecialCells To Copy Numeric Values YasserKhalil.rar2 points
-
بسم الله والحمد لله والصلاة والسلام على رسول الله أما بعد: السلام عليكم ورحمة الله وبركاته إخوتي وأحبتي الكرام نوابغ أوفيسنا الذي نحبه ونرتاده لننهل من علمكم جزاكم الله خيراً .. بما أن عملي محاسبة في مجال التعهدات والحفريات -أبنية وطرق - إلخ...فإنني أتعامل مع نجارين باطون وعمال بناء وحفر عملهم 1/2 يومية أو 1 يومية أو 1.5 يومية أو 2 يومية ..فقد فكرت بعمل برنامج يخص هذا المجال لأنهم غير موظفين بل يحصلون على لقاء عملهم حسب يومياتهم أرجو أن تشاهدوا برنامجي هذا وتوجهونني ليخدم هذه الشريحة بالشكل الأمثل وأتمنى على علمائنا الأجلاء التأكيد على ورقة البونات التي يجب أن تطبع وفق اليوم الحالي ليحتفظ بها ..ما أريده طباعة هذه البونات حتى ل 100 عامل مثلاً كل يوم بيومه. اسم المستخدم: admin كلمة المرور: 123 الأوراق المحمية: دون كلمة مرور بيانات تسجيل الورشة : يتم كتابتها لتضاف على الأوراق المطلوبة والسلام عليكم عمال ورشات.rar2 points
-
أخي الكريم أحمد الصور غير موجودة .. قم بضغط الصور في ملف مضغوط وارفعه على موقع رفع خارجي بارك الله فيك أخي وحبيبي ياسر العربي وإن شاء الله في انتظار تفرغك لننهل من علمك في هذا المجال .. تقبل وافر تقديري وحبي واحترامي2 points
-
رابط برنامج الفرونت بيج لتصميم صفحات ومواقع الانترنت http://almakan.net/bramj/F-Arabic.zip سيريال البرنامج Front Page 2003 Arabic Serial :WFDWY-XQXJF-RHRYG-BG7RQ-BBDHM وان شاء الله نتفرغ ونشرح ازاي نصمم الصفحات وباذن الله اشوف البرنامج اللي اشرت اليه ودائما ما يتم حفظ صفحة ال html بمرفقاتها من الصور والاستيلات وغيرها في فولدر تابع لها المهم عند اختيار الفولدر المراد تحويله الى كتاب يجب وضع كل مستلزمات الصفحات داخل هذا الفولدر بمعنى بسيط عندي صور وضايفها في الصفحات مع الاكواد مثلا والكلام لازم الصور تبقي في نفس الفولدر حتى تظهر داخل البرنامج وان لم تضيفها من داخل البرنامج مجرد اضافة صفحات النت html سيتم عرض الصور بداخلها عادي خالص وشكرا2 points
-
تفضل يا سيدي Private Sub Adad_R_AfterUpdate() DoCmd.RunCommand acCmdSaveRecord DoCmd.SetWarnings False DoCmd.OpenQuery "Q1" DoCmd.SetWarnings True End Sub Private Sub Al_adad_AfterUpdate() DoCmd.RunCommand acCmdSaveRecord DoCmd.SetWarnings False DoCmd.OpenQuery "Q1" DoCmd.SetWarnings True End Sub جعفر 295.المثال.mdb.zip2 points
-
2 points
-
2 points
-
تفضل اخي الغالي لعله المطلوب بعد اذن الغاليين نتيجة بالدرجات.rar نتيجة بالدرجات.rar2 points
-
أخي الكريم حمادة أنا لست متمكن بالفورم بالقدر الكافي الذي يمكنني من تقديم المساعدة والأكواد الموجودة تحتاج لبعض الوقت لدراستها جيداً لمعرفة أغوارها .. والوقت للأسف غير متوفر لدي بالشكل الكافي أنا أقوم بالإطلاع بشكل سريع على الموضوعات وأقدم الحلول في الموضوعات التي لا تستغرق وقت طويل إن شاء الله يساهم الأخوة المتمكنين في الفورم بتقديم المساعدة تقبل تحياتي2 points
-
السلام عليكم أخي وحبيبي في الله ياسر أبو البراء ممكن اعمل موضوع بهذا الموضوع لأنكم وضعتم حد للإعجاب بالموضوعات ..حتى لا يقولوا بخيل ولكن يمكنني تعويضها بكلمة طيبة تتغلغل في جوانح أخي الحبيب حتى تبلغ شغاف قلبه ...وقد شبهها الله تعالى بشجرة طيبة أصلها ثابت وفرعها في السماء تؤتي أكلها كل حين بإذن ربها.. والسلام عليكم.2 points
-
أخى محمد ماهر تفضل نسخة من شيت كنترول المرحلة الاعدادية الخاص بى افحص الملف واطلع على المعادلات فى الشيت وان شاء الله تستفيد منه حتى تتمكن من عمل الشيت الخاص بك كلمة المرور لجميع الصفحات هى officena كنترول الإعدادى رجب جاويش الإصدار 15.rar2 points
-
أخي الحبيب الغالي أبو يوسف مجرد مرورك بالموضوع هو في حد ذاته أغلى وأفضل وأحسن من أي إعجاب وممكن تفتح موضوع جديد بطلبك .. وتخلي عنوان الموضوع "سلفني إعجاب شكراً" تقبل وافر حبي وتقديري2 points
-
السلام عليكم......أي إحراج هذا؟؟؟!!!. You are only allowed to give 20 likes per day. You cannot give any more likes today لماذا يا أوفيسنا...اكرموا علينا ببعض الرصيد حتى لا يزعلوا منا أحبابنا.. والمواضيع التي كتبناها ...أين أنت يا عبد العزيز البسكري...تشوف الحال ..أنت عندك منها ...2 points
-
يا شباب نفد رصيدي من الإعجابات فاعذروني....حدا يسلفني...قرضة حسنة. تحويل --- دفع كاش --- فلّسنا.2 points
-
لا أبداً لا تقنعني أنه صوتك وحش ...حتى لو كان كذلك فانظر إلى قول الإمام الشافعي رحمه الله: وكن رجلاً على الأهوال جلداً وشيمتك السماحة والسخاء يُغطى بالسماحة كلُ عيب وكم عيب يغطيه السخاء. والسلام عليكم. ربنا يبارك لك بولديك محمد وأسيل ويرزقك مثلهم ومثلهم ومثلهم ...آمين يا شباب نفد رصيدي من الإعجابات فاعذروني....حدا يسلفني...قرضة حسنة.2 points
-
2 points
-
هذا شرف لي أن يقوم كل الأساتذة بالرد علي الموضوع ... بارك الله في علمكم ووقتكم2 points
-
ان شاء الله بعد صلاة الضهر احمله واتفحصه وان كان هناك ملاحظات سوف اقول لك بما ان طبيعة عملى مراجع حسابات وصلت لها بالعمل وليس بالدراسه تقبل فائق الاحترام والتقدير يا ابانا الفاضل جزاك الله كل خير2 points
-
السلام عليكم بارك الله بكم جميعاً مساهمة مني بموضوعكم الكريم تقبلوا تحياتي العطرة.2 points
-
السلام عليكم أخي الحبيب ... كم يشرفني ويسعدني متابعتكم لأعمالي المتواضعة - كوني مبتدئ - فمجرد مروركم العطر يضفي على النفس شعوراً بالأخوّة الصادقة ولكنني أطلب منكم النقد الموضوعي فأنا لا أنزعج من عرض الملاحظات ...كيف يجب أن تكون الفكرة هذه أو تلك ...علماً أن طريق الأخ محمد علي الطيب أفضل من حيث التخفيف من حمل الملف والمعادلات ... وبكم الله بارك أخي الحبيب تقبل تحياتي ومحبتي والسلام عليكم.2 points
-
استاذى الكبير وفاكهة المنتدى وصاحب الافكار الى بتعلم فى القلوب قبل العقول سمحلى اهنيك على دماغك العالية اوى المتكلفة والى بتخلينا نستمتع بكنوزك اتمنى من الله ان يوفقك الى ما يحب ويرضى ويسهلك ويرزققك الصحة والعافية وخلى بالك مشوارك كبير بس احنا عرفين ان الكبير لازم يكون مشوارة كبير ربنا يكرمك يا ابا يوسف والشكر موصول للمايسترو الاستاذ ياسر العربى صاحب التحف الفنية القيمة التى تكون بمثابة الصواريخ العابرة للعقول بارك الله فيكم جميعا وربنا ما يحرمنا منكم ابدا جزاكم الله كل خير2 points
-
2 points
-
السلام عليكم ورحمة الله وبركاته هل تعني أن يكون معرباً كما في المرفق يرجى أن يرضيكم New-Userform-.rar2 points
-
جزاكم الله خيرا أستاذي الكريم ولكن هل يمكن فصل جزء من خلية عن باقي الخلية وليكن مثلا الجيزه : المركز المصرى للكتاب ، 1417 هـ = 1996 م. أريد الحصول على الجملة التي بعد النقطتين وقبل الفصلة وهي "المركز المصري للكتاب" حيث أن الملف يحتوي على عمود به أكثر من 2500 صف العمود هو E أريد فصل الجزء الخاص الذي بعد : وقبل الفصلة في كل خلية فهل يمكن ذالك جزاكم الله خيرا1 point
-
الحمد لله أنه المطلوب لي طلب بسيط أخي الكريم هل يمكن أن تغير إسم الظهر لاسم عربي يكون معبراً عن شخصك الكريم تماشياً مع تعليمات المنتدى، وعذراً على المداخلة1 point
-
1 point
-
1 point
-
بعد اذن اخي احمد (لا حط الخلية C3 التي تحتو ي على معادلة) ترحيل المحذوف 1.rar1 point
-
انا مع كل كلمة قالها استاذى ابوالبراء ياسر وبالفعل لابد من ارفاق ملف حتى نستطيع مساعدة وقد اعددت هذه المعادله حسب مارايت وشاهدت الصوره اتمنى ان تفيدك =IFERROR(VLOOKUP($C$16;$B$5:$E$13;COLUMN(B$1);0);"not found")1 point
-
وإياكم ..شكراً على مروركم العطر ..كما أشكر اخي الحبيب أحمد الفلاحجي الذي سيقدم لي هذا النقد البناء وأقول:على رسلك يا أخي وخذني بحلمك ...وارفق بحال أخيك فإن شدّدت فسيأتي يوم يشدّد عليكم أحدهم ...وإن يسرّت فاليسر من شيمكم يا أخي ...أقولها على سبيل الدعابة..فالخيل خيلك والميدان ميدانك.. والسلام عليكم.1 point
-
استاذ عبد العزيز ... لم لا نجعل جدول الطلاب و جدول الدرجات في جدول واحد يشبه التقرير المرفق اعلاه ؟ اعتقد ان ذلك اسهل ...1 point
-
أخوي ابو خليل رحم الله والديك دنيا وآخرة ، كنت اريد ابحث عنها جعفر وتمت التجربة بنجاح وان شاء الله استخدم هذه الطريقة في مرفق الرابط: http://www.officena.net/ib/topic/67205-هل-من-حل-شافى-لمشكلة-اختلاف-اعدادات-اللغة-بالويندز-على-الأجهزة-المختلفة/?do=findComment&comment=437551 وبهذه الطريقة يتكامل الموضوع اكثر جعفر1 point
-
اخى محمد الريفى جزاك الله خيرا للفت الانتباه ولكن اظن ان هناك مواقع مدعومه من ميكروسوفت اتمنى لعالمنا العربى الخير وفقكم الله1 point
-
السلام عليكم ورحمة الله وبركاته لي رأي أود طرحه على حضراتكم قال الله تعالى:"واعتصموا بحبل الله جميعاً ولا تفرقوا" الوحدة قوة والتفرق ضعف إنما يأكل الذئب من الغنم القاصية ما أود قوله اجتمعوا على فكر واحد ...عندما تطرحُ فكرةٌ يتبناها من اتفق رأيهم عليها ...ثم يتخذون إجراءات ويدرسون الطرق الموصلة إلى النتيجة المرجوة ..لا أن تطرح الفكرة ثم تذهب أدراج الرياح فنحن بحاجة إلى كلمة سواء يدعمها كل محبي العمل الجماعي للنهوض بشأن الأمة .ثم يقوم كلٌّ بدوره حسبما هيأ الله له في مجال (أعني التخصص)فمثل أخي الحبيب محمد بارع بالمعادلات وإخوتي ياسر وياسر برعا بالأكواد وأخي الصقر له دور بارز في شرح الفورم وأخي خالد بارع بشرح المعادلات والأكواد ولا أقلل من شأن أحد إنما سقت أمثلة يمكنكم تكوين نواة لعمل بارز ولامع . فالبكاء على الأطلال دافع للنهضة .وكل إناء ينضح بما فيه فليكن كل منكم شعلة متقدة توصلون بها علمكم إلى كافة أصقاع المعمورة على أن يكون خالصاً لوجه الله تعالى فالله طيب ولا يقبل إلا طيباً والسلام عليكم ورحمة الله وبركاته.1 point
-
بسم الله الرحمن الرحيم اليوم بمشيئة الله سنتكلم عن شروحات الفريم ( Frame ) تستخدم هذه الاداه فى احتواء بعض ادوات التحكم مثل ( الليبل او التكست بوكس او الكمبوبوكس وغير ها من العناصر) داخل الفريم بقصد اعطاء شكل جمالى أن شاء الله هيتم تناول الموضوع على ست مراحل 1- كيفية انشاء Frame على الفورم اثناء عملية التصميم 2- كيفية اضافه عناصر تحكم داخل Frame اثناء عملية التصميم 3- التعرف على خصائص Frame من شاشة الخصائص اثناء عملية التصميم 4-التعامل مع خصائص الـ Frame فى لغة البرمجه 5-كيفية اضافه عناصر تحكم داخل الـ Frame والتحكم فى الاسكرول بار للــ Frame عند فتح الفورم او اثناء العمل على الفورم وهو نشط 6-التحكم فى العناصر الموجوده داخل الـ Frame بطرق احترافيه نبدأ بسم الله أولا :- كيفية انشاء Frame على الفورم اثناء عملية التصميم لأضافه Frame جديد على الفورم يوجد طريقتين الطريقه الاولى :- الطريقه الثانيه :- نسخ فريم موجود على الفورم وعمل فريم اخر منه ملحوظه لو كان Frame1 يوجد به عناصر تحكم وليكن به comboBox1 وقمت بنسخ Frame1 لعمل فريم اخر منه ستجد داخل الفريم الجديد Frame2 بداخله comboBox2 وله نفس خصائص comboBox1 الخلاصه انه عند نسخ فريم يتم نسخه مع ما يحتويه من عناصر تحكم ايضا ويكون الفريم الجديد وما يحتويه من عناصر له نفس الخصائص اللى موجوده بالفريم الاول **************************************************************************************** الى لقاء اخر من حلقات سلسلة علمنى كيف اصطاد ان شاء الله هيكون عن كيفية اضافه عناصر تحكم داخل الـ Frame اثناء عملية التصميم انتظرونا تقبلوا تحياتى1 point
-
سادسا :- اجبار المستخدم على الاختيار من الكمبوبوكس يوجد طريقتين الطريقه الاولى :- هى استخدام الخاصيه Style اثناء شرحنا لخصائص الكمبوبوكس فى مرحلة التصميم تكلمنا عن الخاصيه Style ودا نسخ الجزئيه الخاصه بالخاصيه Style من شروحتنا السابقه الخاصيه ( Style ):- وهى بنظرى من اهم الخصائص للكمبوبوكس زى ما احنا عارفين لفتح القائمة الخاصه بالكمبوبوكس للاختيار منها لابد من الضغط على السهم لتفتح القائمه ولكن هذه الخاصيه تتيح للمستخدم التحكم فى وقت فتح القائمة الخاصه بالكمبوبوكس فلها خيارين الخيار الاول Fm StyleDropDown Combo - 0 :- هو الافتراضى لابد من الضغظ على السهم لفتح القائمة كما تتيح للمستخدم كتابة اى شئ بالكمبوبوكس غير موجود بالقائمه بمعنى لا تلزم المستخدم من الخيار من القائمة والخيار الثانى Fm StyleDropDown List - 2 : -هو فتح القائمة من خلال الضغط على السهم او بمجرد وقوف مؤشر الماوس على الكمبوبوكس وكمان ميزة ثالته وهى مهمه جدا هو انه لا يمكن للمستخدم كتابة اى شئ فى الكمبوبوكس يعنى كانك عامل خاصيه حمايه للكمبوبوكس ولا سبيل امام المستخدم الا من الاختيار من القائمه -------------------------------------------------------------------------------------------- الطريقه الثانية :- استخدام الخاصيه MatchFound عايزين نعمل كود يقوم باختبار قيمة الكمبوبوكس هل هى موجوده بالقائمه او لا ؟ لو الكمبوبوكس التطابق مع القائمة = خطأ نفذ الكمبوبوكس فارغ ( دا شرح الكود كدا بالبلدى وحنا قاعدين على المصطبه) لتحويل الكلام اللى بالبلدى ده الى لغة البرمجه تابع معايا لو نستبدلها بـ IF (يعنى قاعدة IF) الكمبوبوكس نستبدله باسم الكمبوبوكس المراد العمل عليه وهو على سبيل المثال Me.ComboBox1 التطابق مع القائمه دى الخاصيه Match Found بمجرد كتابة اسم الكمبوبوكس ثم . ثم حرف M ستجد الفيجوال بيسك يعرض لك قائمه للاختيار شاهد الصوره التاليه = خطأ False ( أى ان القيمة المختاره غير موجوده بالقائمه ) نفذ Then الكمبوبوكس فارغ " " شاهد الكود لما نجمع الكلام ده بقى هيكون كالتالى If Me.ComboBox1.MatchFound = False Then ComboBox1 = "" End If طيب ما هو وقت تنفيذ الكود وقت التنفيذ انت اللى بتحدده مثلا ممكن يكون فى حدث تغيير الكمبوبوكس ()Private Sub ComboBox1_Change Private Sub ComboBox1_Change() If Me.ComboBox1.MatchFound = False Then ComboBox1 = "" End If End Sub وبكدا لو عندك قائمه الكمبوبوكس وليكن بها ( مصر & السعودية & السودان & الجزائر ) والمستخدم تجاهل هذه القائمة وراح يكتب تونس بمجرد بس كتابة حرف ت سوف يقوم الكود بالعمل مش هيلاقى دوله فى القائمة تبدأ بحرف ت اذن تحقق شرط عدم التطابق فهيقوم بمسح حرف ت ممكن واحد يفتكر فى عفريت مسح الحرف يعنى كل ما تكتب شئ غير موجود بالقائمه هتلاقيه بيتمسح فورا ----------------------- ممكن نكتب الكود فى وقت حدث الخروج من الكمبوبوكس Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If Me.ComboBox1.MatchFound = False Then ComboBox1 = "" End If End Sub يعنى المستخدم بمجرد ما يكتب تونس ويضغط انتر للانتقال الى عنصر اخر على الفورم هتلاقى الكود بيتنفذ ويمسك المستخدم من قفاه ويقوله تعالى تونس غير موجوده فى قائمة الكمبوبوكس وهيمسح تونس يعنى كأن المستخدم مكتبش اى حاجه ومازل الكمبوبوكس قيمته فارغه ممكن المستخدم يتجنن هو ايه اللى بيحصل هو ليه كل ما اكتب تونس يتم مسحها هو فى عفريت ؟؟ ما عفريت الا بنى ادم فعلشان نريحه نظهر له رساله تفيد بانه يجب الاختيار من القائمه Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If Me.ComboBox1.MatchFound = False Then ComboBox1 = "" MsgBox " الرجاء الاختيار من القائمة", vbCritical, "خطأ" End If End Sub قمنا باضافه هذا السطر بالكود قبل نهاية IF MsgBox " الرجاء الاختيار من القائمة", vbCritical, "خطأ" الرساله تتكون من ثلاث اقسام يفصل ما بين كل قسم وقسم علامة , القسم الاول وهو الرساله " الرجاء الاختيار من القائمه" وتم وضعها بين علامتى تنصيص ( وهو قسم اجبارى) القسم الثانى وهو نوع الرساله واظهار علامه لها فكتبنا Vbcritical رساله خطأ ( وهو قسم اختيارى يمكن الاستغناء عنه ) القسم الثالث وهو عنوان الرساله فكتبنا "خطأ" وممكن تكتب اى عنوان كما تشاء ( وهو قسم اختيارى يمكن الاستغناء عنه) فالاساس فى الرساله هو نص الرساله " الرجاء الاختيار من القائمة " MsgBox فأذا ارد اظهار علامه للرساله او عنوان لها قم باضافه القسم الثانى والثالث او استكفى بالقسم الاول اذا حبيت شاهد الرساله عند الاختيار الخاطئ من المستخدم هل يمكن كتابة الكود فى سطر واحد ؟ نعم يمكن ذالك Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If Me.ComboBox1.MatchFound = False Then: ComboBox1 = "": MsgBox "الرجاء الاختيار من القائمة", vbCritical, "خطأ": Exit Sub End Sub كما تشاهدون الكود انه فى سطر واحد فقط وذالك باستخدام : : ( تكتب من خلال الضغط على شيفت + حرف ك بالعربى ) واستبدلنا عبارة End if بــ Exit Sub -------------------------------------------------------------------------------------------------------------------- الحمد لله انتهينا من شروحات الكمبوبوكس والى لقاء اخر من حلقات سلسلة علمنى كيف اصطاد ان شاء الله هيكون عن الـــ Frame انتظرونا تقبلوا تحياتى1 point
-
الطريقه الحاديه عشر :- تعبئه الكمبوبوكس بأستخدام المصفوفه ويتم ترتيبها ابجديا اولا ثم تعبئة الكمبوبوكس هذه الطريقه للاستاذ القدير / ياسر خليل تفضل بها علينا وارسلها لى على الخاص الكود مشروح جاهز Private Sub UserForm_Initialize() 'يوضع الكود في حدث الفورم ويقوم بعمل قائمة كومبوبوكس مميزة في عناصرها ومرتبة أبجدياً 'تعريف المتغيرات Dim A, E 'مسح محتويات الكومبوبوكس ComboBox2.Clear '[Sheet1] بدء التعامل مع ورقة العمل المسماة برمجياً With Sheet1 'ليحمل قيم النطاق في العمود الثاني أي أنها تعتبر مصفوفة بكل القيم في هذا النطاق [A] تعيين قيمة للمتغير A = .Range("B2", .Range("B" & Rows.Count).End(xlUp)).value End With 'بدء التعامل مع المصفوفات With CreateObject("System.Collections.ArrayList") '[Aِ] من عناصر المصفوفة [E] عمل حلقة تكرارية لكل عنصر For Each E In A 'إذا كان العنصر لا يساوي فراغ ولا يوجد عنصر مماثل في المصفوفة أي يتم التعامل مع القيم الفريدة If (E <> "") * (Not .Contains(CStr(E))) Then 'يتم إضافة العنصر إلى المصفوفة الجديدة التي تحتوي على قيم فريدة غير مكررة .Add CStr(E) End If Next 'ترتيب عناصر المصفوفة الجديدة تصاعديا .Sort 'إضافة عناصر المصفوفة الجديدة للكومبوبوكس ComboBox2.List = .ToArray End With End Sub لو حضرتك عايز الترتيب يكون من ( تنازليا ) فقط غير هذا السطر .Sort الى .Sort: .Reverse تقبلوا تحياتى1 point
-
أخي الكريم أيمن إبراهيم شوف مشاركة الأخ الفاضل خالد الرشيدي رقم 2 وشوف مشاركتك رقم 3 ركز على الجزء اللي فيه كلمة "أعجبني هذا" هتلاقي إنك معملتش إعجاب للأخ الحبيب خالد مع إنه يستاهل ، وهو عمل إعجاب على ردك اللي بتشكره فيه (عجبت لك يا أستاذنا أيمن ... متفوتش عليك دي) تقبلوا وافر تقديري واحترامي1 point