بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 06/07/17 in all areas
-
السلام عليكم بعد اذن استاذي القدير / أبو البراء اعتقد مع كثرة البيانات سيكون الكود الذي ادرجة استاذي ابو البراء جزاه الله عنا خيراً هو الخيار الافضل - ومع ذلك اليك حل اخر بالمعادلات test 000_2.rar =IFERROR(INDEX(Sheet1!$B$2:$B$1000,SMALL(IF(Sheet1!$A$2:$A$1000=$A2,ROW($A$2:$A$1000)-ROW($A$2)+1),COLUMN(A1))),"")2 points
-
تفضل تم التعديل مشكلتك تكمن في اختلاف مسمى الصف بين الجدولين فأنا اعتمدت اسم الصف في جدول أ وعدلت اسماء الصفوف في جدول ترحيل الناجحين3.rar2 points
-
أخي الكريم أبو سارة .. جربت كود الأخ الحبيب خالد ويعمل بشكل جيد جداً عموماً إثراءً للموضوع هذا كود آخر مقارب لكود الأخ خالد لعله يفيدك Sub PopulateNumbers() Dim cell As Range Dim x As Long Dim lr As Long Range("C3:C1000").ClearContents For Each cell In Range("A3:A" & Cells(Rows.Count, 1).End(xlUp).Row) x = cell.Offset(, 1) lr = Cells(Rows.Count, 3).End(xlUp).Row + 1 Range("C" & lr).Resize(x, 1).Value = cell.Value Next cell End Sub2 points
-
اتفضلي اليك هذا الكود مثلا عندك جدول باسم تابل 1 و حقل باسم موبايل ونوعيته هو تيكست وتريد تتغير الى نمبر استخدم هذا الكود Dim db As DAO.Database Set db = CurrentDb Dim strSQL As String strSQL = "ALTER TABLE Table1 ALTER COLUMN mobile INTEGER" db.Execute strSQL Set db = Nothing او بلعكس من نمبر الى تيكست اسنخدم هكذا strSQL = "ALTER TABLE Table1 ALTER COLUMN mobile TEXT(10)" هناك ملاحظة : لا يجوز ان تستخدم الكود بواسطة نموذج مصدره ذلك الجدول2 points
-
السلام عليكم ورحمة الله أخواني الكرام وعلمائنا وأساتذتنا العباقرة في هذا الصرح العملاق والأكثر من رائع بعد إنتهاء ولله الحمد من برمجة برنامج شؤون الموظفين والمرتبات ونشره في الموقع منذ فترة وجيزة على هذا الرابط برنامج شؤون وإدارة الموظفين بحلته وشكله الجديد أحببت اليوم بعد طلبات من الاصدقاء أن أقوم برفع البرنامج مفتوح المصدر لكي تتم الفائدة منه في كافة النواحي العلمية والعملية وذلك من (خلال الكودات وطريقة التصميم) ماعليكم سوا فك الضغط عن الملف المرفق وتنصيب البرنامج بكل سهولة وفي الاخير تفعيل الماكرو يعمل البرنامج على كافة أنظمة ويندوز وكافة نسخ أوفيس من 2007 ومافوق لاتنسونا من الدعاء بظهر الغيب في هذه الايام المباركة الملف بامتداد zip هو الملف كاملا Office Soft.Employ & Salary-Source.zip Office Soft.Employ _ Salary-Source.rar1 point
-
السلام عليكم و رحمة الله تعالى و بركاته إخوتي الكرام حياكم الله و تقبل الله منا و منكم الصيامكم و القيام أضع بين أيديكم طريقة إنشاء نسخة تجريبية و حمايتها و قابلية تفعيلها و كل هذا بتوظيف الرجستري. خصائص البرنامج: 1- يكتشف إرجاع التاريخ 2- حتى لونزلت نسخة ثانية بعد إنتهاء التفعيل أو إنتهاء النسخة التجريبية فلن تعمل لأن الحماية مخزنة بالرجستري 3- رقم التفعيل يتغير من يوم إلى آخر حسب التاريخ 4- تستطيع تفعيل البرنامج بعد إنتهاء التفعيل بنفس النسخة 5- يحذف البرنامج الجدول الذي به رقم النسخة و كود الحماية مباشرة بعد أول تشغيل 6- يعطيك في أول تشغيل فترة تجريبية تحددها انت كما تشاء 7- رقم التفعيل مخبأة في مكان بالرجستري لا يمكن الحصول عليه هذا هو المرفق و أتمنى من الأعضاء أن يقوموا بتجربة المرفق و إعطائنا النتائج و من بعدها نقوم بشرح أكواد البرنامج: فترة تجريبية1.rar1 point
-
بعد اذنك طبعا سويت لك بعض التعديلات تجربة-3.rar1 point
-
هذا الكود يؤكد كلامي أخي شيفان حيث ان حدث عند الضغط يخص النموذج ولا يخص قاعدة البيانات ككل متى يكون هذا ممكنا؟! بدون وضع الكود الثاني في حدث عند الضغط Form_keydown والله تعالى اعلى واعلم1 point
-
لا يوجد سبب فهذا هو المطلوب تيسيرا على المستخدم يبدو أن حضرتك ما قرأت هذا الجزء جيدا والمدة هنا يومان فقط لنرى من سيجعل البرنامج يعمل لأكثر من يومين بدون استخدام أداة التفعيل فأداة التفعيل تجعله يعمل إلى الأبد وفقنا الله وإياكم لكل خير1 point
-
حسب فهمي لا ليس ممكن .. إلا اذا * المبرمج اعطاه الكود في وقت محدد ان يغير شيء هكذا ما هو نوع ذاك الحقل من قبل والان صار اي ؟ ممكن توضيح اكثر لان ما افكر ان يحدث هذا الامر1 point
-
شكرا جزيلا أستاذ ياسر وضحت الفكرة وتم إضافتها إلى المخزون المعرفي في الأكسل.1 point
-
المرفق السابق لك أستاذ عمرو لا يعيد التسلسل من البداية مع بداية كل شهر جديد ولكن يعيد مع عام جديد فقط على أية حال عدلت لك الكود ليضيف البادئة التي طلبتها auto number text field.rar1 point
-
1 point
-
لربما بسبب اهتزاز الشاشة وهنا يمكن استخدام السطر التالي في بداية الكود بعد الإعلان عن المتغيرات Application.ScreenUpdating=False وفي نهاية الكود نفس السطر مع تغيير القيمة False إلى True1 point
-
ما شاء الله تبارك الله على ابداعك وسرعة ردك واهتمامك اخونا الكريم أ / محمد صالح إن شاء الله سيتم تسمية الشيتات باللغة الانجليزية وجزاكم الله عنا خير الجزاء وفقنا الله وإياكم لكل خير1 point
-
هل تقصد أنك إذا أدخلت القمية ( 1000) في خلية ما تظهر بهذه الطريقة ( 1.000) في نفس الخلية أو في خلية اخرى؟ هل يمكنك توضيح المطلوب بطريقة أخرى ؟1 point
-
زيادة في اثراء الموضوع هذا الكود Option Explicit Sub copy_as_you_want() Dim i, c As Integer Dim Cont Dim Lr As Long Lr = ActiveSheet.Cells(Rows.count, 3).End(3).Row Range("c3:c" & Lr).ClearContents i = 3 c = 3 Do While Cells(i, 1) <> "" Cont = Cells(i, 1).Offset(0, 1).Value If Not IsNumeric(Cont) Or Cont = "" Or Cont = 0 Then i = i + 1: GoTo 1 Cont = Int(Abs(Cont)) Range("c" & c & ":c" & c + Cont - 1).Value = Cells(i, 1).Value i = i + 1 c = c + Cont 1: Loop End Sub1 point
-
ألف شكر لك حبيبي ياسر خليل أبو البراء هذا يعمل عندي بفاعلية قصوى وهو المطلوب في ميزان حسناتك وبارك الله لك والشكر موصول لكل من ساعدني في هذا العمل جزاكم الله خير الجزاء1 point
-
أين الجزء الذي فيه نسخ التنسيق .. يفترض أنك تريد نسخ التنسيق من نطاق أو خلايا محددة باستخدام الأمر Copy أين هو في الكود؟ ثم إن السطر التالي غير منطقي إذ لابد من الإشارة لنطاق محدد للصق التنسيقات فيه .. راجع شرح الصورة مرة أخرى PasteSpecial Paste:=xlPasteFormats1 point
-
جرب حذف السطر التالي من الكود حيث أنه يقوم بتحويل المعادلات لقيم ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value1 point
-
السلام عليكم اخى الكريم حقيقة لا افهم المطلوب جيداً اتقصد هذا - ضع المعادلة التالية F1 - ام لم يكن المطلوب يرجي مزيد من التوضيح =E1/10001 point
-
يمكنك قبل نهاية الكود الإشارة للخلايا المطلوب مسحها ثم مسحها باستخدام ClearContents مثال : Range("B2:C2").ClearContents1 point
-
عليكم السلام ورحمة الله وبركاته هوا فيه حل ممكن تعمل تقسيم للقاعدة Splitt وبالتالى الجداول هتنفصل عن النماذج والتقارير والاستعلامات ومهما قمت بالتطوير كل ما عليك فعله هو ربط القاعدة المقسمة بالجداول مرة اخرى وبالتالى لن تحتاج الى استيراد البيانات من الاصل مهما قمت بالتطوير بالتوفيق1 point
-
1 point
-
1 point
-
1 point
-
الدروس من الدرس الرابع ... الي ... الدرس السادس كيفية اظهار محرر الفيجوال بيسك الاكسيل4.rar مكونات محرر الفيجوال بيسك 5.rar كيفية التعامل مع محرر الفيجوال بيسك 6.rar الدروس من الدرس السابع ... الي ... الدرس التاسع المـــــــاكـــــــــــرو7.rar تابع المـاكـــــرو8.rar تابع المـاكـــــرو9.rar الدروس من الدرس العاشر ... الي ... الدرس الحادي عشر تابع المـاكـــــرو10.rar تابع المـاكـــــرو11.rar أرجو من الله ان أكون قد وفقت في توصيل ولو معلومة صغيرة لمن يريدها بخصوص هذا الجزء تقبلوا خالص تحياتي1 point
-
هذه نسخة لأكسس 2003 من برنامج شريط الطباعة إنشاء شريط طباعة.rar1 point
-
أهلين أخي العزيز جعفر و الله شرفتنا بمشاركتك. 1- الشريط يفتح تلقائيا و بدون أي تدخل و ذلك لأنني قمت بإضافة وحدة نمطية تتحسس لفتح التقارير و عند وجود أي تقرير مفتوح سوف تقوم بفتح الشريط مباشرة. 2- قمت بإضافة نموذج frm1 و وضعت أمر فتحه في حدث عند التحميل للنموذج الرئيسي و يبقى هذا النموذج مفتوح لكنه مخفي 3- وضعت أمر فتح الوحدة النمطية في حدث عند عداد الوقت (TIMER) للنموذج frm1 و أعطيت قيمة الفاصل الزمني نصف ثانية يعني أنه كل نصف ثاني يتحقق البرنامج هل هناك تقرير مفتوح أم لا و على هذا الأساس يقوم بفتح شريط الطباعة. 4- أضف ما شئت من التقارير و ضع كود فتحها بشكل عادي فالوحدة النمطية سوف تتعرف تلقائيا على اسم النموذج المفتوح و الشريط سوف يتحكم بأوامر التقرير كليا. 5- و إذا شئت قم بفتح التقرير من شريط التنقل سوف ترى أن الشريط يفتح معه أيضا. يعني أنه لإضافة شريط الطباعة هذا لا تحتاج لأي تغيير على أوامرك السابقة. فقط قم بتصدير الوحدة النمطية و النموذج frm1 و شريط الطباعة إلى برنامجك و ضع كود فتح النموذج frm1 في وضعية الإخفاء في حدث عند التحميل للنموذج الرئيسي لديك. و هذا هو الملف بعد التعديلات الأخيرة إنشاء شريط طباعة.rar نعم أخي تستطيع ذلك. إذا كنت تريد طباعة عدد من الصفحات أضغط على الزر إعداد الطباعة و اختر الصفحات التي تريدها و عدد النسخ كما توضح الصورة التالية: و إذا كنت تريد عدد النسخ المطبوعة من الصفحة الحالية فقم بالتالي: 1 أضف مربع نص 2 قم بكتابة اسم مربع النص مكان 1 في هذا الكود لزر "ط ص الحالية": DoCmd.PrintOut acPages, Me.NPg, Me.NPg, acHigh, 1, False1 point
-
1 point
-
1 point
-
المثال الثامن استخدام طرق البحث في البيانات بواسطة اقترانات البحث في مجال aggregate functions المقدمة لاحظت من خلال المشاركات أن بعض المشاركين يعانون من صعوبة البحث في الجداول باستخدم اقترانات تحديد المجال ويواجهون صعوبة في وضع شروط البحث. قمت بتصميم هذا المثال ليساعد في فهم الطريقة التي يتم بها البحث وطريقة تحديد الشروط التي لها علاقة بنوع البيانات المستخدمة. التفاصيل من اقترانات البحث في مجال معين مثل جدول Dlookup ، DFirst ، DLast ، DSum ، DCount ، DAvg ، DMax ، DMin وغيرها في المثال تم بناء جدول بيانات الطلاب : الرقم والاسم وتاريخ الميلاد و المصروف و إن كان للطالب أخ وقد اختيرت هذه البيانات بالتحديد لإختلاف أنواع البيانات فيها فالرقم (رقم Number) والاسم (نص Text) وتاريخ الميلاد (تاريخ Date) والمصروف (رقم مزدوج Double) وله أخ (منطقي Boolean) ولكي نتعلم كيف نستخدم هذه العناصر في الشروط. وقد قمت في هذا المثال بعمل عدة اسئلة وهي البحث عن طالب بواسطة الرقم ؟ البحث عن طالب بواسطة الاسم ؟ البحث عن طالب بواسطة تاريخ الميلاد ؟ البحث عن طالب بواسطة الرقم و الاسم معا ؟ البحث عن طالب بواسطة وقوع تاريخ ميلاده بين تاريخين محددين ؟ البحث عن عدد الطلاب بواسطة سنة تاريخ الميلاد ؟ البحث عن أول طالب بواسطة إبتداء اسمه بأحرف معينة؟ البحث عن أصغر تاريخ ميلاد ضمن المجموعة ؟ البحث عن مجموع المصاريف لكل الطلاب ؟ البحث عدد الطلاب الذين لهم أخ ؟ البحث عن مجموع مصروف الطلبة الذين ليس لهم أخ وولدوا في شهر بعد الذي سيتم تحديده ؟ البحث عن معدل مصروف الطلبة الذين لم يولدوا في السنة المحددة ؟ البحث عن أخر طالب في الجدول له أخ ؟ عرض اسم وتاريخ ميلاد أول طالب يظهر في الجدول؟ ولنناقش هذه الطرق والاسئلة 1. البحث عن طالب بواسطة الرقم ؟ Private Sub cmd1_Click() no = InputBox("الرجاء إدخال رقم الطالب", "ادخال") w = Nz(DLookup("[sno]", "[student]", "[sno] = " & Str(no)), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub استخدمت هنا الأقواس [ ] لحصر أسماء الحقول والجدول وهذا غير ضروري إذا كان الحقول من مقطع واحد ولكنه مهم جدا عند تكون الحقول أو اسم الجدول من مقطعين كأن يكون اسم الجدول مثلا جدول الطلاب أو يكون حقل التاريخ اسمه تاريخ الميلاد الاقتران Nz يضم لنا عدم ارجاع القيمة الفارغة Null فإذا كان الجواب Null يرجع لنا كجواب للبحث القيمة الخالية Empty ومنها نعرف نتيجة البحث لاحظ هنا كيف تم حصر الرقم بالاقتران str لتحويله إلى نص string 2. البحث عن طالب بواسطة الاسم ؟ Private Sub cmd2_Click() N = InputBox("الرجاء إدخال الاسم", "ادخال") w = Nz(DLookup("[sname]", "[student]", "[sname] = '" & N & "'"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا مع الحقل من نوع نص كيف نستخدم علامات التنصيص المفردة ' للإحاطة بالمتغير النصي 3. البحث عن طالب بواسطة تاريخ الميلاد ؟ Private Sub cmd3_Click() D = InputBox("الرجاء إدخال تاريخ الميلاد", "ادخال") w = Nz(DLookup("[sdate]", "[student]", "[sdate] = #" & D & "#"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا كيف نستخدم إشارة النمبر # للإحاطة بحقل من نوع تاريخ 4. البحث عن طالب بواسطة الرقم و الاسم معا ؟ Private Sub cmd4_Click() no = InputBox("الرجاء إدخال رقم الطالب", "ادخال") N = InputBox("الرجاء إدخال الاسم", "ادخال") w = Nz(DLookup("[sno]", "[student]", "[sno] = " & Str(no) & " and [sname] = '" & N & "'"), Empty) If Not IsEmpty(w) Then MsgBox "الطالب موجود" Else MsgBox "لا يوجد نتيجة" End If End Sub 5. البحث عن طالب بواسطة وقوع تاريخ ميلاده بين تاريخين محددين ؟ Private Sub cmd5_Click() D1 = InputBox("الرجاء إدخال التاريخ الأول", "ادخال") D2 = InputBox("الرجاء إدخال التاريخ الثاني", "ادخال") w = Nz(DLookup("[sdate]", "[student]", "[sdate] between #" & D1 & "# and #" & D2 & "#"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub عملية استخدام between ولا تنسى أن حدي البحث متضمنان في البحث 6. البحث عن عدد الطلاب بواسطة سنة تاريخ الميلاد ؟ Private Sub cmd6_Click() Y = InputBox("الرجاء إدخال سنة تاريخ الميلاد", "ادخال") w = DCount("*", "[student]", "year([sdate]) = " & Str(Y)) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا طريقة المقارنة مع السنة وهي رقم 7. البحث عن أول طالب بواسطة إبتداء اسمه بأحرف معينة ؟ Private Sub cmd7_Click() N = InputBox("الرجاء إدخال بداية الاسم", "ادخال") w = Nz(DFirst("[sname]", "[student]", "[sname] Like '" & N & "*'"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ كيف استخدمنا Like وأين وضعنا * 8. البحث عن أصغر تاريخ ميلاد ضمن المجموعة ؟ Private Sub cmd8_Click() w = Nz(DMin("[sdate]", "[student]"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub في بعض الاحيان لا نحتاج إلى شروط في البحث 9. البحث عن مجموع المصاريف لكل الطلاب ؟ Private Sub cmd9_Click() w = Nz(DSum("[sexp]", "[student]"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub 10. البحث عدد الطلاب الذين لهم أخ ؟ Private Sub cmd10_Click() w = Nz(DCount("[sexp]", "[student]", "[shasbrother] = True"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا كيف استخدمنا البحث عن حقل نعم/لا boolean منطقي واستخدام true ويمكن أيضا المقارنة العدد -1 11. البحث عن مجموع مصروف الطلبة الذين ليس لهم أخ وولدوا في شهر بعد الذي سيتم تحديده ؟ Private Sub cmd11_Click() M = InputBox("الرجاء إدخال الشهر", "ادخال") w = Nz(DSum("[sexp]", "[student]", "[shasbrother] = false and month([sdate]) > " & Str(M)), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ كيفية صياغة الشروط المركبة مع and 12. البحث عن معدل مصروف الطلبة الذين لم يولدوا في السنة المحددة ؟ Private Sub cmd12_Click() Y = InputBox("الرجاء إدخال السنة", "ادخال") w = Nz(DAvg("[sexp]", "[student]", "year([sdate]) <> " & Str(Y)), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub <> تعني لا يساوي 13. البحث عن أخر طالب في الجدول له أخ ؟ Private Sub cmd13_Click() w = Nz(DLast("[sname]", "[student]", "[shasbrother] = True"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub 14. عرض اسم وتاريخ ميلاد أول طالب يظهر في الجدول ؟ Private Sub cmd14_Click() w = Nz(DFirst("[sname] & ' ' & [sdate]", "[student]"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ علاملات التنصيص المفردة ' وذلك لترك فراغ بين الرقم والاسم المثال : aggregate.rar تحياتي1 point