بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 11/30/15 in مشاركات
-
جرب هذه المعادلة في الخلية H3 واسحب يميناً حتى الخلية V3 و نزولاً =MID($B3,COLUMNS($H$3:H3),1)3 points
-
تفضل ال mid مدموجة مع vlookup دالة VlookUp.rar الmid وحدها لن تكفي في حالتك نفترض ان البيانات تتغير ونريد معرفتها عن طريق الvlookup فدمج الاتنين معا يفي بالغرض حيث يتم استدعاء الكلمة عن طريق الvlookup وتقوم الدالة mid بعرض ما قمنا بتحديده فقط وشكرا3 points
-
تفضل حبيبي ابو يوسف =MID($B3;1;1) =MID( المصدر; رقم الحرف; عدد حروف الظهور) واشوفلك باذن الله موضوع الvlookup دالة VlookUp.rar3 points
-
السلام عليكم ورحمة الله وبركاته إخوتي الأكارم أساتذتي الفضلاء علماء الإكسيل ورواده في منتدى أوفيسنا الحبيب رأيت مرة طريقة توزيع اسم على خانات بواسطة الدالة VlookUpلم أتأكد من طريقة صياغته فأحببت طرحه عليكم وقدمت لكم تصور كيفية تفريغ الاسم في عدة خلايا بواسطة هذه الدالة راجياً من حضراتكم إبداء أفكاركم النيرة ...فالتنوع به الفائدة الكبرى كحديقة تضم شتى أصناف الورود بأشكالها وأحجامها وروائحها العطرة والسلام عليكم دالة VlookUp.rar2 points
-
استاذ عبد العزيز انت وضعت هذه المعادلة في الخلية H3 و هي تنفذ فقط في هذه الخلية (رغم انه يوجد دمج للخلايا) لو جربت ان تزيل الدمج ستلاحظ الفرق بينما المعادلة الاخرى تضع في كل عامود حرفاً من حروف النص( مع احتساب الفراغات)2 points
-
2 points
-
2 points
-
السلام عليكم إخواني الكرام كل عام وأنتم بخير ... أقدم لكم دالة تقوم بالتحويل من التاريخ الهجري إلى الميلادي Function ConvertDate(ByRef StringIn As String) As String Dim SavedCal As Integer Dim d As Date Dim s As String SavedCal = Calendar Calendar = 1 d = CDate(StringIn) Calendar = 0 s = CStr(d) ConvertDate = Format(s, "dd/mm/yyyy") Calendar = SavedCal End Function لمزيد من التفاصيل يرجى زيارة الرابط التالي رابط الموضوع من هنا1 point
-
اخواني الكرام بعد التوكل على الله ثم الاستشارة وحسب رغبة بعض الاخوة نبداء على بركة الله هذه الدورة شروط الدورة: تقتصر الدورة على شرح الفيجول بيسك للتطبيقات VBA ولا علاقة للمعادلات بهذه الدورة لذا نرجو ان يقتصر السؤال والاستفسار حول الاكواد فقط. عدم إضافة عبارة الشكر (نشكر الجميع على تقدير الجهود) حتى لا يحتاج الموضوع الى تنقيح فإن أعجبك شرح أو رد يمكنك تقييمه من خيار أعجبني شكراً. ان يكون موعد الاستفسارات حول الجزء المطروح للشرح خلال 24 ساعة فقط ويتم الانتقال الى جزء أخر لتعميم الفائدة. سيكون الشرح بشقين كتابي ومرئي. على الاساتذة الذين يشاركون في الشرح اخذ الشرط الثالث بالاعتبار (مشكورين). * سيتم حذف أي مشاركة لا يتم التقيد فيها بالشروط. == تم نقل جميع مشاركات النقاش الى هنا =============================== دروس الدورة ============================= الدرس الاول1 الدرس الاول2 الدرس الثاني الدرس الثالث الدرس الرابع 1 الدرس الرابع 2 الدرس الرابع 3 اساسيات لغة VBA كلغة برمجة (نظري) الفصل الثالث ج1 الفصل الثالث ج2 اسئلة الدورة (الجزء الاول)1 point
-
السلام عليكم ورحمة الله وبركاته إخواني الأحباب في المنتدى المحبب إلى قلوبنا .. أقدم لكم اليوم شرح فيديو ، لكيفية عمل تصفية متقدمة Advanced Filter بالأكواد .. . والشرح مقدم في عدد 2 فيديو .. الأول لكيفية إدراج موديول وكتابة الأسطر الخاصة بتنفيذ التصفية المتقدمة ، والفيديو الثاني لكيفية تنفيذ الكود بدون أزرار بمجرد التغير في ورقة العمل أو التغير في شروط التصفية .. رابط الفيديو الأول : التصفية المتقدمة بالأكواد رابط الفيديو الثاني ومرفق لكم ملفين ..الملف الأول Advanced Filter VBA خاص بالفيديو الأول ، والملف المسمى Advanced Filter Worksheet_Change خاص بالفيديو الثاني أرجو أن ينال الدرس إعجابكم ، وتستفيدوا منه ولا أنتظر منكم سوى دعوة بظهر الغيب ، وادعوا الله لي أن يجعل أعمالنا صالحة ولوجهه خالصة ، وأن يجعل أعمالنا في ميزان حسناتنا يوم القيامة ، إنه ولي ذلك والقادر عليه كان معكم أخوكم أبو البراء من منتدى أوفيسنا (دي القفلة بتاعتي لو تلاحظوا .. مش شعبان عبد الرحيم بس اللي عنده القفلة !) حمل الملف من هنا1 point
-
السلام عليكم ورحمة الله تعالى وبركاته امممممم وردت على بالى فكرة عندما كنت فى عيادة اعادة التأهيل " العلاج الطبيعى" وهى كالاتى عمل برنامج قاعدة بيانات اكسس لادارة عيادة علاج طبيعى تقوم الفكرة على النحو الاتى اولا تسجيل بيانات المريض الشخصية ثانيا تسجيل الادارة ومكان عمل المريض ثالثا والاهم فى النقاط التالة 1- ادارة العياده بمعنى يدخل كل 4 مرضى الى الغرف رقم 1 , 2 , 3 , 4 على التوالى حسب الجهاز والتشخيص فى حالة وجود المريض داخل الغرفة رقم 1 مثلا لا تقبل اضافة مرضى اخرين حتى تكون الغرفة شاغرة مرة اخرى وهناك ميعاد لكل مريض وعدد جلسات محددة اريد عند حجز ميعاد ويوم محدد للمريض لا يكون هذا الميعاد متاح لمريض اخر حتى تنتهى جميع جلسات هذا المريض اولا اممممممممممممم مبدئيا احب من اساتذتنا الكرام جزاهم الله عنا كل الخير مناقشة الفكرة هنا نظريا وانا ان شاء الله احاول التطبيق بصورة عملية جزاكم الله خيرا1 point
-
1 point
-
السلام عليكم تفضل الطابعة عند الضغط على الاسم_111.rar1 point
-
السلام عليكم اذا لم يتغير عمود الذي به النجمه سهل ارفق الملف وبه الاضافات التي تريدها مع شرح مبسط وابشر ان شاء الله خير تحياتي1 point
-
تعديل على الكود ليظهر كل مجموعة بلون واحد Sub cond() Dim lr As Integer lr = Cells(Rows.Count, 1).End(3).Row Range("a1:c" & lr).Interior.ColorIndex = xlNo k = 3 For i = 1 To lr If Range("a" & i).Interior.ColorIndex <> xlNo Then GoTo 1 For j = i + 1 To lr If Range("a" & i) & Range("b" & i) & Range("c" & i) = Range("a" & j) & Range("b" & j) & Range("c" & j) Then Range("a" & i).Resize(1, 3).Interior.ColorIndex = k Range("a" & j).Resize(1, 3).Interior.ColorIndex = k End If Next 1: k = k + 1 Next End Sub1 point
-
الحمد لله أن هناك من يحس بألمنا شكراً يا عربي ...ألف شكر ... لا نكفيك حقك يا أخي.1 point
-
1 point
-
1 point
-
أخي الحبيب عبد العزيز أعزك الله السلام عليكم ورحمة الله وبركاته أشكرك على التشجيع الدائم والمتابعة الطيبة والمرور العطر تقبل تحياتي وشكري أستاذي الفاضل سليم حاصبيا حل رائع يضاف إلى أعمالكم القيمة شكراً جزيلاً على هذا التنوع الخصب بين الأساتذة الكرام ياسر وسليم تقبلوا تحياتي العطرة جميعاً.1 point
-
1 point
-
1 point
-
السلام عليكم حط الاكواد التاليه في حدث الفورم Private Sub CommandButton1_Click() On Error Resume Next Dim Lis, c, cl, Lr, Cm Lr = Range("A13").End(xlDown).Row + 1 With Me.ListBox1 .AddItem For c = 0 To 5 cl = Choose(c + 1, 6, 1, 2, 3, 5, 4) Cm = Me.Controls("TextBox" & cl) .List(UBound(.List), c) = Cm Range("A" & Lr).Offset(0, c) = IIf(IsNumeric(Cm), Val(Cm), CStr(Cm)) Me.Controls("TextBox" & cl) = "" Next c Mx End With On Error GoTo 0 End Sub Private Sub UserForm_Activate() Mx End Sub Private Sub UserForm_Initialize() Dim Rng As Range Set Rng = Range(Range("A13"), Range("A13").End(xlDown).Resize(1, 6)) Me.ListBox1.List = Rng.Value End Sub Private Sub Mx() Dim M M = Application.Max(Range("A:A")) + 1 TextBox6 = M End Sub1 point
-
السلام عليكم هنا الكود يعطيك 3أسطر فارغة بين البيانات فإذا حبيت أن يكون الأسطر الفارغة هي 4بدلا من 3 فاذهب إلى السطر Range("A32:G34").Offset(32 * t, 0).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove وغير الرقم 34 إلى 35 تفضل المرفق تخفيف حجم الملف5.rar1 point
-
تم دمج الموضوعات والشكر موصول لأخي وحبيبي في الله أبا الحسن والحسين على الإفادة بتكرار الموضوعات ونرجو من الأخ السائل عدم تكرار الموضوعات بدون داعي1 point
-
1 point
-
السلام عليكم ورحمة الله اخي مختار حاليا الأرقام هي متغيرة اما ماتم إضافتة قبل وبعد الرقم فهو ثابت وممكن تكون متغيره بالوقت إما إضافة له الساعة او الدقيقة او الثانية او أي جزء من التاريخ او مجموعة مع بعض علي حسب ماترغب. الأخ محمود بكري نعم ممكن ومثل مايوجد برامج للعثور علي كلمة المرور حق الشبكات وحق الجوالات يوجد لبرامج الاوفيس والمنتدى ملئ بذلك منها القديمة جدا جدا بتأخذ جهد ووقت للبحث عن القديمة واما القريبة فيوجد آخر شي كود للأستاذ مشرفنا الغالي ياسر خليل أبو البراء ممكن يشاهد الرد ويوافيك بالرابط1 point
-
اخي أبا الحسن والحسين لو اخفينا العمود اللي فيه المعادله يعطي خطأ دخول كلمه المرور ياتري ماالسبب جاري تجربه الملف اخي مختار بس اكيد طبعا الملف هايكون صعيدي اصيل برضو1 point
-
السلام عليكم اضغط STEP1 ثم اختار اسم الورقة اضغط STEP2 ثم اختار اسم الإدارة التعليمية او المكتب اضغط STEP3 تظهر لك القائمة بالمدارس يمين الورقة و امامها عدد مرات التكرار تحياتي و تقديري school.rar1 point
-
استدراك لتوضيح الأمور مطلوب الحصول على الاتى من قاعدة البيانات ان شاء الله ان يسر الله الامر لانشائها 1- بيانات شاملة للمريض 2-حجز مسبق للمريض بحيث لا يتعارض الحجز المحدد لاحد المرضى في يوم معين وساعة محدده لحين انتهاء عدد الجلسات التي يتم تحديدها مع مريض اخر مثال المريض xx محدد له 12 جلسة وايام جلساته تكون يومى الاحد والأربعاء الساعة 10 صباحا المطلوب عند حجز جلسات لمريض vv لا تتعارض مع المريض xx في الأيام في نفس الساعة مثل ما هو موضح فى الجدول التالى مثلا 3-تقرير سنوي عند عدد جلسات كل مريض على حده 4-تنظيم دخول المرضى حسب الغرف الشاغرة اى يتم التحكم والكنترول من قاعدة البيانات حتى في دخول وخول المرضى عن طريق معرفة الغرف ان كانت شاغرة ام لا1 point
-
زي ما قال اخي ابو البراء يرجى التوضيح اكتر انا دخلت بصراحه تلت اربع مرات واخرج كدا1 point
-
إذاً ارفق ملف معبر عن الملف الأصلي للإطلاع عليه ومحاولة التعديل وإن كنت أرى أن هذا سيعقد الأمور ..بعض الشيء ولكن دع إخوانك يحاولوا على ملف مرفق لكي تصل إلى حل دقيق وسريع1 point
-
أخي الكريم الطلب غير واضح على الإطلاق ولم أفهم شيئاً وهذا السبب في عدم استجابة الأعضاء على ما أظن يرجى التوضيح والتفصيل وضرب مثال أو إرفاق النتائج المتوقعة تقبل تحياتي1 point
-
1 point
-
السلام عليكم و رحمة الله وبركاته اخي ابو يوسف حاضرين ولا يهمك احاول فيه غدا ان شاء الله حيث الموضوع تركيبه من الأكواد و الدوال توصلنا باذن الله للنتيجه1 point
-
1 point
-
تفضل ابو يوسف المثال حسب فهمي اختر اسم المكتب من القائمة للفتح تقرير اجمالي مدارس حسب مكتب المختار SchoolR.rar1 point
-
سادساً :- التعامل مع العناصر الموجوده داخل الــ Frame بطرق احترافيه فى البدايه يبدو ان العنوان غريب وغير مفهوم خليك معايا خطوه خطوه هتفم يعنى ايه الكلام ده شاهد الصوره التاليه دا فورم فى مرحلة التصميم وزى ما انتم شايفين يوجد زر اخضر اسمه Test وهو عباره عن Label ويوجد ايضا عدد 2 تكست بوكس وعدد 2 كمبو بوكس المطلوب انا عايز اعمل كود عند الضغط على الزر الاخضر اثناء عمل الفورم يقوم الكود بعمل اختبار للعناصراللى من النوع تكست بوكس هل هى فارغه ام بها بيانات اذا كانت فارغه يعطينى رساله باسم التكست وكمان يجعل لون التكست احمر ازاى ننفذ الكلام ده اولا هو عايز الكود يتم تنفيذه عند الضغط على الزر الاخضر حلو اوى طيب الزر الاخضر ده عباره عن ايه ؟ شوف الصوره هتلاقى ان الخاصيه Name هى Label1 اذن الكود هيكون كالتالى Private Sub Label1_Click() 'مكان وضع الكود المراد تنفيذه End Sub ما هو الكود المراد تنفيذه ؟ هو اختبار العناصر هل هى من النوع تكست بوكس أم لا واذا كانت من النوع تكست بوكس هل هى بها بيانات ام لا واذا تبين ان العنصر من نوع التكست بوكس ولا يوجد به بيانات اظهرلى رساله باسم العنصر وكمان اجعل العنصر لونه احمر أول شئ علشان اختبر كل العناصر اللى على الفورم واشوف نوعها اذن لازم اعرف متغير من نوع Control لان انا هتعامل مع العناصر Dim a As Control هنا سميت المتغير اسم a ( وطبعا يمكن تسمية اى اسم كيفا شئت ) وقلت اى المتغير a ده عباره عن عنصر تحكم ( قد يكون لليبل او تكست بوكس او كمبوبوكس او ليست بوكس او فريم او تشيك بوكس وغيرها من العناصر ) فعلشان الف على كل العناصر اللى موجوده على الفورم يبقى لازم الحلقه التكراريه For Each Private Sub Label1_Click() Dim a As Control For Each a In Me.Controls ' مكان اختبار العنصر اذا كان من النوع تكست بوكس وايضا هل هو فارغ من البيانات Next a End Sub عملت حلقه For Each للمتغير a وقلت ان a ده هو عباره عن عنصر تحكم موجود على الفورم Me.Controls Me هنا عايده على عناصر الفورم ازاى بقى اعمل اختبار للعناصر هل هى من النوع تكست بوكس و هل هى بها بيانات ام لا اذن هستخدم if Then If TypeOf a Is msForms.TextBox And a = "" Then End If if تعنى لو الاختبار الاول هل العنصر من نوع التكست بوكس TypeOf a Is msForms.TextBox TypeOf تعنى نوع الــ a هو عنصر التحكم اللى بيتغير كل مره مع الحلقه For Each is يكون msForms.TextBox تكست بوكس الاختبار الثانى a = "" and تعنى ( و ) لعمل شرط ثانى a = "" عنصر التحكم فارغ Then تعنى نفذ التالى ( وطبعا قفلنا if بــ End if ) طيب لما الكود يختبر نوع العنصر ويلاقيه تكست بوكس وكمان يلاقيه فارغ ماذا ينفذ يجعل التكست بوكس لون الخلفيه احمر ويظهر لى رساله باسم العنصر If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 MsgBox "فارغ يرجى تعبئة التكست" & a.Name End If شاهد الكود بشكله النهائى Private Sub Label1_Click() Dim a As Control For Each a In Me.Controls If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 MsgBox "فارغ يرجى تعبئة التكست" & a.Name End If Next a End Sub هعملك مشهد تمثيلى لعمل الكود جوا دراما يعنى جايز الاقى فيكم مخرج يكتشفنى عند عمل الكود فى اول سطر هيخزن فى ذاكرته ان المتغير a هو عنصر تحكم ثم ياتى للسطر الثانى وهو For Each a In Me.Controls الحلقه هتجعل ان a هى Label1 هيروح للسطر اللى بعده يعمل اختبار بالــ if فهيلاقى ان a اللى هى دلوقتى ( Label1) مش من النوع تكست بوكس اذن متحققش الشرط الاول فهينتقل الى End if بدون ما ينفذ اى شئ ثم ينتقل الى Next وتعنى ارجع الى الحلقه For Each مره تانية لما يرجع للحلقه سيكون a فى هذه المره هى TextBox1 ثم ينتقل الى السطر التالى اختبار if طبعا هيختبر نوع TextBox1 هيلاقيه بالفعل من النوع TextBox تحقق اول شرط طيب هيشوف الشرط التانى هل التكست فارغ ام به بيانات اذا كان فارغ هيجعل لون خلفيته حمراء ويعطنى رساله باسمه ثم ينتقل الى Next وتعنى ارجع الى الحلقه For Each مره تانية لما يرجع للحلقه سيكون a فى هذه المره هى ComboBox1 ثم ينتقل الى السطر التالى اختبار if طبعا هيختبر نوع ComboBox1 هيلاقيه مش من النوع ComboBox فلم يتحقق الشرط الاول فهينتقل الى End if بدون ما ينفذ اى شئ ثم ينتقل الى Next وتعنى ارجع الى الحلقه For Each مره تانية وهكذا الى ان تنتهى الحلقه بعد ما تجعل a بكل العناصر اللى على الفورم وينتهى الكود شاهد هذه الصوره عند عمل الفورم والضغط على الزر الاخضر دى كانت مقدمه للمثال التالى وهو الاهم واللى اكيد هيقابلك لو انت هتصمم برامج اكيد هيقابلك المثال التالى مثال 2 :- شاهد الصوره التالية طبعا علشان اعمل كود فى حدث الليبل " الحفظ " هيكون الاعلان عن الكود كالتالى Private Sub Label1_Click() 'اولا اختبار صحة الادخالات 'ثانيا ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub انا موضوعى اليوم هو اولا اختبار صحة البيانات المدخله أما الجزء الخاص بترحيل البيانات الى الشيت مش موضوعى اليوم سنتناوله لاحقا باذن الله اولا اختبار صحة البيانات المدخله لو رجعت للصوره السابقه هتلاقى ان المطلوب اختبار كل عناصر التكست بوكس هل تم ملئ الدرجات بها ام لا وزى ما عرفنا قبل كدا ممكن تكون كالتالى Private Sub Label1_Click() If TextBox1 = "" Then TextBox1 .BackColor = 10200 End If If TextBox2 = "" Then TextBox2 .BackColor = 10200 End If End Sub يعنى هختبر كل عنصر بالشكل ده طبعا مستحيل طيب هتعمل ايه لو كان عندك مثلا 100 تكست بوكس او اكتر ؟؟؟؟؟؟ طبعا لو عملت كدا محتاج 100 صفحه علشان تكتب الكود مش منطق طبعا اذن لازم من حل احترافى شاهد الكود بشكل احترافى فى بضعه اسطر وبعدين نشرحه Private Sub Label1_Click() Dim a As Control For Each a In Frame1.Controls If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If Next a 'ثانيا كود ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub الكود فى المثال السابق كانت حلقة For Each عباره عن For Each a In Me.Controls ( هنا كان المتغير a يمثل كل العناصر على الفورم لذالك استخدمت Me.Controls وقلت ان Me عائده على الفورم النشط لكن فى الكود الحالى انا عايز اتعامل مع العناصر اللى داخل الــ Frame1 فقط فتم كتابة الحلقه كالتالى عباره عن For Each a In Frame1.Controls فهنا a هتكون كل عنصر من العناصر اللى داخل الفريم فقط واحد صاحى معايا هيلاحظ ان لما استخدمت If لاختبار ان العنصر من النوع تكست بوكس تم استخدام شرط التحقق من نوع العنصر انه تكست بوكس وشرط ان العنصر فارغ فى سطر واحد من خلال And شاهد الكود If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If ولكن عند استخدام if لاختبار ان العنصر من النوع كمبوبوكس وان الاختيار تم من القائمه تم استخدام if لاختبار شرط التحقق من نوع العنصر اذا كان كمبوبوكس يتم تنفيذ if اخرى وكتابة الشرط الثانى ان الاختيار تم من القائمه شاهد الكود If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If فى حد عنده تفسير لذالك ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ليه مكتبناش اختبار ان نوع العنصر كمبوبوكس وان الاختيار تم من القائمة فى سطر واحد من خلال And مثل التكست بوكس يعنى يكون كدا If TypeOf a Is msForms.ComboBox And a.MatchFound = False Then a.BackColor = 10200 End If هقولك انا ما هو السبب الحلقه For Each لما تشتغل هيكون اول مره a كل مره تمثل عنصر من عناصر التحكم داخل الفريم فهيكون أما ليبل أو تكست بوكس أو كمبوبوكس كما هو بمثالنا فى الصوره السابقه موضوع الشرح لما تشتغل If الاولى If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If فعندما يكون a عباره عن Label " " = a " " =Label1 فلا يوجد مشكله لان Label ممكن = فارغ -------------------------------------- فعندما يكون a عباره عن TextBox " " = a " " =TextBox1 فلا يوجد مشكله لان TextBoxممكن = فارغ -------------------------------------- فعندما يكون a عباره عن ComboBox " " = a " " =ComboBox1 فلا يوجد مشكله لان ComboBox ممكن = فارغ -------------------------------------- لما تشتغل If الثانيه If TypeOf a Is msForms.ComboBox And a.MatchFound = False Then a.BackColor = 10200 End If فعندما يكون a عباره عن Label a.MatchFound = False Label.MatchFound = False فهنا يوجد مشكله لان Label ليس من خواصه MatchFound وكذالك TextBox لان MatchFound هى من خواص ComboBox فقط وهى لعمل اختبار هل الاختيار تم من القائمه ام لا لذالك مينفعش نعمل الكود بالشكل ده هيحدث Error ولتجنب Error لازم يكون الكود بالشكل التالى If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If يعنى اختبر العنصر هل هو ComboBox أولا أم لا اذا كان من النوع ComboBox اعمل اختبار عليه وهو هل تم الاختيار من القائمه أم لا واذا كان العنصر من النوع Label أو TextBox متعملش اختبار MatchFound ارجوا ان يكون الشرح واضح هو بس محتاج تركيز شويه شاهد الكود مره تانية بشكله النهائى كالتالى Private Sub Label1_Click() Dim a As Control For Each a In Frame1.Controls If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If Next a 'ثانيا كود ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub شاهد الصوره التاليه عند تشغل الفورم والضغط على زر الحفظ طبعا انت ممكن تغير فى الكود بدل ما ينفذ بجعل الخلفيه لونها احمر a.BackColor = 10200 ممكن تغير اى شئ تريد تنفيذه يعنى مثلا يعطى للمستخدم رساله باسم العنصر اللى فيه خطأ زى كدا Private Sub Label1_Click() Dim a As Control For Each a In Frame1.Controls If TypeOf a Is msForms.TextBox And a = "" Then MsgBox a.Name & " برجاء تعبئة بيانات" End If If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then MsgBox a.Name & " برجاء تعبئة بيانات" End If End If Next a 'ثانيا كود ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub شاهد الصوره التاليه عند تشغل الفورم والضغط على زر الحفظ ------------------------------------------------------------------------------------------------------------------------------------ الى لقاء اخر من حلقات سلسلة علمنى كيف اصطاد انتظرونا تقبلوا تحياتى1 point
-
السلام عليكم انسخ الكود التالي الى حدث الورقة المسماه "الصفحة 2" Private Const My_Rng_Adrs As String = "$A$3:$D$55000" Private Const Area_Prnt As String = "$C$7:$E$15" Dim Ar_1() As Variant Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Range("A7:A1000"), Target) Is Nothing Then MsgBox "" If Target <> Empty Then Dim Wr As Worksheet: Set Wr = Sheets("الصفحة 3") With Wr .Cells(7, 4) = Target .Cells(8, 4) = Target.Offset(0, 1) .Cells(9, 4) = Target.Offset(0, 2) .PageSetup.PrintArea = Area_Prnt .PrintPreview .Cells(7, 4) = "": .Cells(8, 4) = "": .Cells(9, 4) = "" End With Cancel = False Set Wr = Nothing End If End If End Sub Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$5" Then Range(Range("A7"), Range("D7").End(xlDown).Resize(1, 4)).ClearContents If Ali_Serch(CStr(Target), 1) = True Then Range("A7").Resize(UBound(Ar_1, 1), UBound(Ar_1, 2)) = Ar_1() End If Erase Ar_1 End If If Target.Address = "$C$5" Then Range(Range("A7"), Range("D7").End(xlDown).Resize(1, 4)).ClearContents If Ali_Serch(CDate(Target), 3) = True Then Range("A7").Resize(UBound(Ar_1, 1), UBound(Ar_1, 2)) = Ar_1() End If Erase Ar_1 End If If Target.Address = "$E$5" Then Range(Range("A7"), Range("D7").End(xlDown).Resize(1, 4)).ClearContents If Ali_Serch(CStr(Target), 4) = True Then Range("A7").Resize(UBound(Ar_1, 1), UBound(Ar_1, 2)) = Ar_1() End If Erase Ar_1 End If End Sub Private Function Ali_Serch(Trget As String, Col As Long) As Boolean Dim Ar Dim Rng As Range Dim C, x, i, XX, Xi, Xt Dim Data_1 Dim Wrsh As Worksheet Set Wrsh = Sheets("الصفحة 01") With Wrsh If Col = 3 And Not IsDate(Trget) Then MsgBox "صيغة التاريخ التي كتبتها غير صحيحه !!", vbExclamation, "إدخال خاطئ !!": Exit Function Set Rng = .Range(My_Rng_Adrs) Ar = Rng.Value ReDim Preserve Ar_1(1 To Rng.Rows.Count, 1 To 4) For x = LBound(Ar, 1) To UBound(Ar, 1) XX = Ar(x, Col): Xi = Trim(Ar(x, 1)): Xt = Trim(Ar(x, 2)) If Col = 3 Or Col = 4 Then Data_1 = Val(XX) ElseIf Col = 1 Then Data_1 = CStr(Xi & " " & Xt) ElseIf Col = 3 Then Data_1 = CDate(DateSerial(Year(XX), Month(XX), Day(XX))) End If If Not Data_1 = Empty Then If Data_1 Like Trget Then Ali_Serch = True i = i + 1 For C = 1 To 4 Ar_1(i, C) = IIf(C = 3, Format(Ar(x, C), "dd/mm/yy"), CStr(Ar(x, C))) Debug.Print Ar(x, C) Next C End If End If Next x End With Set Rng = Nothing: Set Wrsh = Nothing End Function بعد كتابة الاسم او التاريخ او رقم التسجيل اضغط انتر ستظهر النتائج اسفل جدول البحث انقر مرتين على نتيجة البحث في العمود "A" الاسم الاول سيطبع لك النتيجه جرب وابلغنا بالنتائج تحياتي تم اضافة المرفق وبه الكود اعلاه تجربة_111.rar1 point
-
السلام عليكم ورحمة الله أخي الكريم عملت بما في ملفك المرفق، أي بمجرد اختيار الاسم من المنسدلة يتم طباعة البيانات حسب شيت "صفحة الطباعة"... أرجو أن يكون المطلوب... بن علية تجربة.rar1 point
-
إخواني الكرام إليكم الملف يعمل على النسختين 32 بت و 64 بت أرجو أن تستفيدوا منه .. تقبلوا وافر تقدير واحترامي Codes Library v1.9.7.rar1 point
-
السلام عليكم و رحمة الله و بركاته الي كل الاخوه بالمنتدى علينا جميعاً ان نقوم باستبدال اسماء المستخدمين الخاصه بنا من الانجليزيه الي العربيه والله المستعان1 point
-
وعليكم السلام. للدخول الى عرض التصميم 1- ضع أحد أصابعك على زر الشفت باستمرار بينما أنت تفتح قاعدة البيانات 2- سيفتح لك اطار قاعدة البيانات وفيها الجداول والنماذج وغيرها .1 point
-
السلام عليكم ورحمة الله وبركاته ***************** هذا الموضوع تجميع لروابط الموضوعات التي قدمتها ، أسأل الله العلي القدير أن يجعل أعمالنا صالحة ولوجهه خالصة. افتح الباب وادخل لعالم البرمجة (متخافوش يا أحباب من اللي ورا الباب) استخراج كل الاحتمالات لأرقام محددة (موضوع الأسبوع الخامس) ترتيب الأسماء أو القيم طبقاً لطول السلسلة النصية (موضوع الأسبوع الرابع) عكس القيم في عمود أوقلب النتائج في عمود مجاور (موضوع الأسبوع الثالث) استخراج الصور من مصنف إكسيل حتى ولو كانت علامة مائية (موضوع الأسبوع الثاني) إخفاء كل الأعمدة ما عدا أعمدة محددة (موضوع الأسبوع الأول) وبضدها تتميز الأشياء (تجميعة Toggles) للشيء وعكسه الدالة MOD وعد الخلايا التي تحتوي على أرقام زوجية أو أرقام فردية حصرياً استخراج ملف فلاشي من داخل مصنف ليكون ملف منفصل بذاته أربعة عشر طريقة لمعرفة السنة الكبيسة أو السنة العادية باستخدام المعادلات طباعة أوراق عمل محددة حسب الاختيار مع إمكانية اختيار الطابعة وعدد النسخ منع التكرار في عمود ومنع نسخ أكثر من خلية بالعمود حصرياً دالة معرفة UDF لمعرفة الرقم التسلسلي للوحة الأم MotherBoard Serial إدراج أسماء الشهور بكل اللغات استخراج القيم الفريدة أي الغير مكررة في نطاق باستخدام الكائن القاموس إرسال إيميلات دفعة واحدة عبر الـ Outlook باستخدام برمجة الـ VBA تقسيم أو شطر قائمة واحدة إلى قائمتين بالتساوي جعل النص في أداة الـ Label يظهر بشكل رأسي عمل قائمة بأسماء الملفات في مسار محدد بالمعادلات بدون أكواد فورم لتوليد أرقام عشوائية ما بين رقمين مع الاحتفاظ بقيم البداية والنهاية في الريجستري إعلان عن خدمة برنامج السجلات المدرسية (البرنامج غير مجاني وليس للبيع) الحلقات التكرارية للمصفوفة تشغيل ملف صوتي بامتداد WAV عند تحديد خلية معينة بداية الطريق لإنقاذ الغريق إلغاء زر إغلاق التطبيق Excel Application Close Button إعادة ضبط نافذة محرر الأكواد الناموس في شرح القاموس استخراج القيم الفريدة أي الغير مكررة في نطاق باستخدام الكائن القاموس إضافة Addin تقوم بترتيب أسطر الكود (تنظيم الأكواد) المصفوفات في الإكسيل (نتعلم سوياً لنرتقي) - الحلقة الأولى المصفوفات في الإكسيل (نتعلم سوياً لنرتقي) - الحلقة الثانية تقليل حجم ملف الإكسيل (موضوع للبحث) تقسيم بيانات صف إلى عدة أعمدة إظهار المعادلات بدون أكواد معرفة الأرقام الناقصة Missing Numbers في سلسلة أرقام تصفية البيانات من خلال مربع نص TextBox (بحث بالأحرف الأولى والتصفية حسب البحث) استخراج القيم الغير مكررة مع إمكانية ترتيب القيم Sort أكواد البداية والنهاية لـ (ياسر بن خليل) البحث المتعدد وتلوين كلمات البحث باستخدام فورم استخراج القيم الغير مكررة في نطاق وعدها عن طريق دالة معرفة دالة معرفة UDF Function تقوم بإظهار المعادلات عمل طريق مختصر Shortcut على سطح المكتب للمصنف عن طريق الأكواد نسخ صورة لنطاق وعمل ارتباط للصورة بهذا النطاق إضافة شريط أمر تحكم إلى قائمة الكليك يمين تشغيل الماكرو عدد معين من المرات نسخ أو تحميل صورة من الويب إلى الإكسيل توليد تواريخ عشوائية بين تاريخين إغلاق المصنف بدون حفظ وإعادة فتح المصنف من جديد كيفية تصميم شيت الكنترول (ناصر سعيد) استخدام دوال الإكسيل WorksheetFunction التعامل مع الأنواع المختلفة للبيانات باستخدام SpecialCells مقارنة عمودين باستخدام التنسيق الشرطي إدراج رسم بياني في تعليق منع طباعة أوراق العمل كسر حماية أوراق العمل (القنبلة الجديدة) كسر حماية محرر الأكواد بدون برامج (قنبلة الموسم) إنشطار البيانات المفلترة (موضوع متميز بإذن الله) إنشاء تبويب مخصص Custom Tab إخفاء محتويات الخلايا (حيلة بسيطة) إظهار وإخفاء النطاقات المعرفة Defined Names داونلود مانجر من خلال الإكسيل ..حمل ملفاتك بالإكسيل ثلاثة طرق لتحديد أوراق العمل بالأكواد الملف القاتل (ملف يحوي كود لحذف أي ملف تحدده) فحص الاتصال بالانترنت عن طريق الأكواد التصفية المتقدمة بالأكواد Advanced Filter نسخ كود من مصنف لمصنف آخر ، ومن مصنف للمنتدى البحث عن جزء من النص باستخدام الدالة VLOOKUP (موضوع خفيف) دالة استخراج بيانات الرقم القومي (المحافظة والنوع وتاريخ الميلاد) دمج أوراق العمل من مصنفات مختلفة إلى مصنف واحد (المجمع) الإنشطار الكبير .. انشطار أوراق المصنف إلى مصنفات منفصلة نسخ البيانات بأكملها من ورقة عمل لورقة عمل أخرى دالة DatePart للتعامل مع أجزاء الوقت والتاريخ فتح مستند نصي ببرنامج الورد من داخل الإكسيل تجميع القيم مع كل إدخال جديد في نفس الخلية Accumulator عمل خريطة لورقة العمل Quick Map معرفة دقة الشاشة Screen Resolution دالة معرفة UDF لاستخراج الإيميلات داخل نصوص Emails From Text دالة معرفة UDF لتوليد أرقام عشوائية غير مكررة (فريدة) دالة معرفة UDF لدمج النصوص بمزايا مختلفة عن الدالة CONCATENATE دالة معرفة UDF لجمع الخلايا ذات التنسيق Bold (عريض) تغيير اسم ورقة العمل تبعاً لتغير قيمة خلية أوتوماتيكياً إنشاء القوائم المنسدلة (دروس للمبتدئين) معرفة الصف الأخير وإنشاء نطاقات ديناميكية غير ثابتة باستخدام الأكواد تغيير خصائص القائمة المنسدلة بإدراج كومبوبوكس إضافة الدوائر الحمراء وحذفها معرفة إذا ما كانت الخلية تحتوي على معادلة أم لا (بدون أكواد) المشروع الكبير (مكتبة الصرح .. زاخرة بالشرح) وهي عبارة عن تجميع لمكتبة الأكواد بشرى لمدخلي البيانات في موقع وزارة التربية والتعليم ادخل الموقع بنقرة واحدة تغيير أسماء أرقام سور القرآن الكريم إلى أسماء تلك السور الحفظ التلقائي كل 10 ثواني البحث عن القيم المتعددة بدون تكرار الخاصية Offset ف لغة البرمجة ألغاز إكسيلية (موضوع ترفيهي) عمل قائمة منسدلة يمكنك البحث من خلالها استخراج القيم بدون الخلايا الفارغة استخراج القيم بدون الخلايا الفارغة (دالة معرفة) تحديد صف وعمود الخلية النشطة (تلوين العمود والصف باستخدام التنسيق الشرطي) برنامج صغير للترجمة (ترجم من اللغة العربية للغة الإنجليزية) إنشاء أوراق عمل وفرزها وحذفها وضع علامة صح بمجرد النقر المزدوج في الخلية إضافة رائعة للإكسيل تقوم بفصل البيانات تقويم للسنة المقبلة 2015 دالة لإدراج صورة الخاصية Resize في لغة البرمجة دالة لعد التواريخ البحث عن الخلايا المدمجة بطرق مختلفة معرفة الوقت الذي تم فيه الدخول على الحاسوب انتحار ملف الإكسيل Kill This Workbook (Suicide) الخلية النابضة (من روائع الأعمال) العدسة المكبرة بالاكواد (من روائع الأعمال) الحلقة التكرارية FOR......Next استخدام الدالة DIR في محرر الأكواد للفيجوال بيسك إنشاء تقويم ميلادي بالأكواد المصفوفات في الإكسيل Arrays دالة تحويل التاريخ الهجري إلى ميلادي الحصول على قيم غير مكررة في قائمة التحقق التحقق من الصحة عمل اختصار للأمر في القائمة المختصرة دالة العد المتعددة والشاملة معرفة آخر يوم لأي يوم من أيام الأسبوع لأي شهر من شهور السنة ( موضوع مميز ) استخراج الأسماء المكررة في قائمة دالة معرفة لاستخراج تاريخ الميلاد والنوع ومحافظة الميلاد من الرقم القومي كود برمجي لفتح وغلق الـ CD-ROM قائمة بأسماء أوراق العمل دورة للمبتدئين في عالم البرمجة السلاسل النصية إدراج صورة في تعليق ************************* دمتم في رعاية الله1 point
-
السلام عليكم صراحة احببت ان اضع هذا الموضوع منفردا بالرغم من ان هناك مشاركة سابقة لهذا الموضوع علي الرابط التالي اضغط هنا الا ان الموضع هنا قد اكتمل و اصبح لابد من فصله و الموضوع كما اشار العنوان ارجو التجربة و اخباري بالنتيجة تحياتي full_customer.rar1 point
-
بالرغم من مرور أكثر من عامين إلا أنني استفدت كثيرا.. وأكثر من إفادتي لمست روح التعاون والإخاء من السيد الأستاذ المهندس/ دغيدي.. لعلك تكون بخير وبصحة جيدة وبالرغم من إحتياجي لتعلم المزيد عن أكسس.. إلا أنني خجلت من تواضعكم واهتمامكم العالي وذوقكم الرفيع.. فودت أن أكتب تعليقي وأقول لك جــزاك الله كل خير1 point
-
الأخ الفاضل / أحمد فضيله أحييك على هذه الدعوة وأضم صوتى الى صوتك1 point
-
لا شكر على واجب أختنا الفاضلة و الشكر كله لله تعالى1 point
-
ممكن سؤال اذا سمحت يا استاذ نادر ياترى اقدر اغير الباسوورد ولا لا؟ واذا كان ممكن اعمل ده ازاي؟؟؟؟؟؟ شكرا1 point
-
12/11/2009 طريقة عمل البرنامج 1- تسجيل بيانات العميلالدخول الى صفحة العملاء و تسجيل بيانات العميل - غير قابل لتكرار اسم العميل 2- توزيع الأقساطالدخول الى ورقة توزيع الأقساط ثم يتم ادخال البيانات كاملةبمجرد ادخال البيانات تظهر لك النتائج في الجدول الأيسر 3- اضغط على زر حفظ بيانات الأقساط - سوف يتم حفظ البيانات في ورقة الأقساط و منها تجد اجمالي المبالغ المطلوبة من العميل قد ظهرت في ورقة بيانات العملاء 4-الدخول الى ورقة السندادخل اسم العميل - سوف تظهر لك قائمة منسدلة بأسماء الأجهزة التي تم عمل اقساط لها لهذا العميل تختار منها الجهاز او السلعة المطلوبة بعد ادخال اسم العميل و نوع الجهاز تظهر لك قائمة منسدلة بـ أول قسطين مطلوب سدادهما من العميل تختار منها ماتريدتقوم بتسجيل المبلغ - و هنا تستطيع تسجيل أي مبلغ اقل من او يساوي قيمة القسط المختار او مطلوب سداده بعد اكتمال بيانات السند تختار طـبـاعة الـسـنـدبعد طباعة السند تلقائيا سوف يتم تسجيل المبلغ في العمود A امام العميل في ورقة توزيع الأقساط - ويتم حفظ كامل بيانات السند في ورقة حفظ البيانات السداد - الآن لدينا في ورقة بيانات العملاء عمود الأقساط المتأخرة - هنا يتم حساب كل الأقساط المطلوبة من هذا العميل قبل تاريخ اليوم و يخصم منها اجمالي المبالغ المسددة من العميل الآن تستطيع استخدام الملف و استخراج النتائج منه مع تحياتي للجميع 4_توزيع_الأقساط_ومتابعتهاQest.rar1 point
-
سابعا : حماية و أمان برنامج تثبيت نظام المستخدمين آليا عمل نظام صلاحيات المستخدمين برمجيا مسائل متنوعة في صلاحيات المستخدمين طريقة استخدام الكراك لتسجيل البرنامج - منع التعديل بصيغة mde - و مسائل متقدمة في الحماية اسلوب الحماية بالدونجل طريقة اخفاء و اظهار الاستعلامات بالكود كود لاخفاء الجداول الفعلية و المرتبطة مثال آخر لاخفاء و اظهار الجداول بالكود الحماية بطريقة زرع ملف1 point