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

البحث في الموقع

Showing results for tags 'combobox'.

  • Search By Tags

    اكتب الكلمات المفتاحيه بينها علامه الفاصله
  • Search By Author

نوع المحتوي


الاقسام

  • الترحيب
    • نرحب بزوار الموقع
  • قسم تطبيقات و لغات مايكروسوفت
    • منتدى الاكسيل Excel
    • قسم الأكسيس Access
    • منتدي الوورد Word
    • منتدى الباوربوينت
    • منتدى الاوتلوك Outlook
    • المنتدى التقني العام و تطبيقات الأوفيس الأخرى
    • إعلانات شخصية للأعضاء
    • قنوات تعليمية وإعلانات دورات تدريبية
  • إدارة المشاريع والبحث العلمي وعلوم البيانات
    • إدارة المشاريع ومحافظ المشاريع
    • البحث العلمي والإحصاء
    • الذكاء الإصطناعي و التنقيب فى البيانات
  • القسم العام
    • قسم الاقتراحات و الملاحظات
    • مشاركات المدونات
    • أوفيسنا على الفيسبوك

الاقسام

  • VBA Code Library
  • قسم الإكسيل
  • قسم الأكسيس
  • قسم الوورد
  • Project Management
  • Self development التطويرالذاتي
  • معلومات مفيدة
  • أدوات عامة

مدونات

  • M-Taher's Blog
  • مدونة محمد طاهر
  • Officena
  • اا الفاروق اا
  • ‎مدونة أخبار التكنولوجيا
  • M-Taher's Blog
  • يحيى حسين's Blog
  • خبور خير's Blog
  • Dr. AbdelMalek Abu Sheikh's Blog
  • m.hindawi's Blog
  • احمدزمان's Blog
  • الحسامي
  • مدونة أ / محمد صالح
  • yahiaoui's Blog
  • عبدالله المجرب's Blog
  • صيد الخواطر
  • حمادة عمر مدونة
  • مدونة جعفر
  • مدونة عادل حنقي
  • مجدى يونس: لمسة وفاء لمنتدى اوفيسنا
  • Excel Expert Financial&Accounting
  • مدونة اعمال ايقونات الماس لمنتدى اوفيسنا
  • رقائق فى دقائق
  • Shivan Rekany

ابحث عن النتائج فى ......

ابحث عن النتائج التي تحوي ....


تاريخ الانشاء

  • بدايه

    End


اخر تحديث

  • بدايه

    End


Filter by number of...

انضم

  • بدايه

    End


مجموعه


Job Title


البلد


الإهتمامات


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype

تم العثور علي 10 نتائج

  1. السلام عليكم ورحمة الله أشارك معكم اليوم أكواد داخل وحدة نمطية عامة تم تطويرها لتصفية محتويات أي مربع سرد (ComboBox) في أي نموذج بشكل ديناميكي بمجرد الكتابة داخل مربع التحرير والسرد تصفية ديناميكية: يدعم التصفية المتعددة باستخدام أكثر من حقل (مثل الاسم + الرقم القومي) تدعم التصفية على حقل واحد أو حقول متعددة باستخدام نمط LIKE '*...*' وذلك لتتم التصفية بناء على اى جزء من الكلمة الكود داخل الوحده النمطية العامة Option Compare Database Option Explicit Private dictRowSources As Object Private strLastFilterValue As String Private strLastComboName As String Private Sub EnsureDictionary() If dictRowSources Is Nothing Then Set dictRowSources = CreateObject("Scripting.Dictionary") End If End Sub Public Sub ClearComboMemory(ByVal frm As Access.Form) Dim strKey As Variant Call EnsureDictionary For Each strKey In dictRowSources.Keys If Left(strKey, Len(frm.Name) + 1) = frm.Name & "." Then dictRowSources.Remove strKey End If Next End Sub Public Sub FilterCombo(ByVal frm As Access.Form, _ ByVal strComboName As String, _ Optional ByVal strFilterField As String = "") Dim cmb As Access.ComboBox Dim strSourceSQL As String Dim strFilterValue As String Dim strFilteredSQL As String Dim strOrderByClause As String Dim strKey As String Dim objRegex As Object Dim objMatches As Object Dim arrFilterFields As Variant Dim strWhereClause As String Dim i As Long On Error GoTo ExitWithError ' التحقق من صحة النموذج وعنصر التحكم If frm Is Nothing Then MsgBox "النموذج غير صالح.", vbExclamation Exit Sub End If ' Debug.Print "Form: " & frm.Name ' Debug.Print "ComboBox: " & strComboName Set cmb = frm.Controls(strComboName) ' التحقق من مصدر البيانات Call EnsureDictionary strKey = frm.Name & "." & cmb.Name If dictRowSources.Exists(strKey) Then strSourceSQL = dictRowSources(strKey) Else strSourceSQL = Trim(Replace(cmb.RowSource & "", ";", "")) ' إزالة الفاصلة المنقوطة ' Debug.Print "RowSource: " & strSourceSQL If Len(strSourceSQL) = 0 Then MsgBox "مصدر البيانات غير صالح.", vbExclamation Exit Sub End If dictRowSources.Add strKey, strSourceSQL End If ' إعادة تعيين المصدر إذا لم يتم توفير حقل تصفية If Len(strFilterField) = 0 Then If cmb.RowSource <> strSourceSQL Then cmb.RowSource = strSourceSQL End If cmb.Requery cmb.Dropdown strLastFilterValue = "" strLastComboName = strComboName Exit Sub End If ' التحقق من نوع عنصر التحكم النشط If TypeOf Screen.ActiveControl Is Access.TextBox Or TypeOf Screen.ActiveControl Is Access.ComboBox Then strFilterValue = Nz(Screen.ActiveControl.Text, vbNullString) ' Debug.Print "ActiveControl: " & Screen.ActiveControl.Name ' Debug.Print "FilterValue: " & strFilterValue Else ' Debug.Print "ActiveControl is not TextBox or ComboBox" If cmb.RowSource <> strSourceSQL Then cmb.RowSource = strSourceSQL End If cmb.Requery cmb.Dropdown strLastFilterValue = "" strLastComboName = strComboName Exit Sub End If ' إعادة تعيين المصدر إذا كانت القيمة المصفاة فارغة If Len(strFilterValue) = 0 Then If cmb.RowSource <> strSourceSQL Then cmb.RowSource = strSourceSQL End If cmb.Requery cmb.Dropdown strLastFilterValue = "" strLastComboName = strComboName Exit Sub End If ' التحقق مما إذا كانت القيمة المصفاة أو ComboBox قد تغيرت If strFilterValue = strLastFilterValue And strComboName = strLastComboName Then cmb.Requery cmb.Dropdown Exit Sub End If ' استخدام Regex لاستخراج ORDER BY Set objRegex = CreateObject("VBScript.RegExp") With objRegex .Global = True .IgnoreCase = True .Pattern = "\s*ORDER\s+BY\s+.*$" End With Set objMatches = objRegex.Execute(strSourceSQL) If objMatches.Count > 0 Then strOrderByClause = objMatches(0).Value strSourceSQL = Trim(Replace(strSourceSQL, strOrderByClause, "")) Else strOrderByClause = "" End If ' Debug.Print "SourceSQL: " & strSourceSQL ' Debug.Print "OrderBy: " & strOrderByClause ' التحقق من الحقول وإنشاء شرط WHERE لحقول متعددة If Len(strFilterField) > 0 Then arrFilterFields = Split(strFilterField, ",") strWhereClause = "" For i = LBound(arrFilterFields) To UBound(arrFilterFields) Dim strField As String strField = Trim(arrFilterFields(i)) If Len(strField) > 0 Then If Len(strWhereClause) > 0 Then strWhereClause = strWhereClause & " OR " strWhereClause = strWhereClause & strField & " LIKE '*" & Replace(strFilterValue, "'", "''") & "*'" End If Next i If Len(strWhereClause) = 0 Then MsgBox "تعبير التصفية غير صالح: " & strFilterField, vbExclamation Exit Sub End If On Error Resume Next strFilteredSQL = strSourceSQL & " WHERE (" & strWhereClause & ")" & strOrderByClause ' Debug.Print "FilteredSQL: " & strFilteredSQL cmb.RowSource = strFilteredSQL If Err.Number <> 0 Then MsgBox "تعبير التصفية غير صالح: " & strFilterField & vbCrLf & "Error: " & Err.Description, vbExclamation On Error GoTo ExitWithError Exit Sub End If On Error GoTo ExitWithError Else strFilteredSQL = strSourceSQL & strOrderByClause cmb.RowSource = strFilteredSQL End If ' تعيين المصدر المصفى وتحديث واجهة المستخدم cmb.Requery cmb.Dropdown strLastFilterValue = strFilterValue strLastComboName = strComboName Exit Sub ExitWithError: Select Case Err.Number Case 2118 Resume Next Case Else MsgBox "حدث خطأ أثناء التصفية: " & Err.Number & " | " & Err.Description, vbExclamation End Select End Sub الاستدعاء فى النموذج في حدث Click : لإعادة تحميل القائمة الأصلية لمربع السرد عند الضغط عليه ' في حدث Click Private Sub ComboBoxName_Click() FilterCombo Me, "ComboBoxName" End Sub وايضا في حدث KeyUp : لتصفية القيم أثناء الكتابة في مربع السرد حسب حقل واحد ' في حدث KeyUp Private Sub ComboBoxName_KeyUp(KeyCode As Integer, Shift As Integer) FilterCombo Me, "ComboBoxName", "FieldName" End Sub مع امكانية في حدث KeyUp : لتصفية القيم أثناء الكتابة في مربع السرد حسب أكثر من حقل ' في حدث KeyUp لعمل التصفية المتعددة Private Sub ComboBoxName_KeyUp(KeyCode As Integer, Shift As Integer) FilterCombo Me, "ComboBoxName", "FieldName, FieldName2" End Sub تحياتى Filter inside the Combobox.accdb
  2. هل يمكن عمل Combobox يكون البحث فيه اكتر من عمود يعني اعمل بحث برقم او الاسمم
  3. المثال المرفق يبين كيفية اختيار بيانات من مجال محدد عن طريق كومبو و اظهار النتيجة كصف فى مكان آخر و لأن هذه الطريقة تعيد القيمة فى خلية واحدة فقط فقد تم الاستعانة بالدالة vlookup لعرض باقي القيم أولا : من تخصيص اليقونات اضغط علي صندوق الادوات Toolbox و ختار القائمة المنسدلة combo box و ضعها فى ورقة العمل اختار القائمة المنسدلة بالزر الايمن ثم Format Control control وحدد مجال الادخال و النتيجة ( راجع المثال ) combo1.xlsx
  4. الفيديو التاسع مطلب جماهيري مشهور جدا كيف لما أحدد اسم فى نموذج أفتح نموذج آخر للتفاصيل على نفس الاسم باختصار كيف تفتح نموذجا على سجل محدد من أهم المهارات المطلوبة فى أكسيس اخترنا طريقتين لعمل ذلك بعيدا عن التعقيدات و التحابيش شاهدوا الفيديو https://www.youtube.com/watch?v=4OXU6UFzk8k
  5. السلام عليكم بالنسبة لبيانات مربع التحرير والسرد / القائمة المنسدلة ، فعادة تأخذ بياناتها من جدول خاص بها ، نُدخل فيها البيانات مسبقا ، وكذلك يكون لدينا نموذج لكل جدول ، حتى نستطيع تغيير/إضافة/حذف احد هذه البيانات. هناك طريقة اخرى اسهل ، واستعملها في برامجي ، والتي تتكون من جدول واحد ونموذج واحد لكل الحقول ، و اود ان اشاركها معكم الجدول الذي به جميع الحقول اسمه tbl_Constants ، وسنأخذ أحد الحقول كمثال واسمه Department ، نستخدم هذا الحقل لإدخال بيانات عن طريق النموذج frm_Employees في الجدول tbl_Employees في الحقل Department ، ونستخدم هذا الحقل لإدخال بيانات عن طريق النموذج frm_Department في الجدول tbl_Department في الحقل Section_Name ، . في الجدول tbl_Constanats ، في حقل Department ، بالإضافة الى بيانات الحقل (الشؤون الادارية ، الشؤون المالي *تعمدت عمل هذا الخطا ، والذي نتيجته ظهرت في الجدولين الآخرين*) ، فإننا نكتب اسماء الجداول التي تُحفظ فيها البيانات واسم الحقل في ذلك الجدول (الجدول tbl_Emplyees واسم الحقل فيه هو Department ، وجدول tbl_Department واسم الحقل فيه هو Section_Name ، اما الاشارة _|_ التي قبل اسم الجدول ، فنستعملها لتصفية البيانات *تابع لاحقا*). العمل كله في الكود وفي اسماء الحقول ، والنموذج frm_Constants. نفتح نموذج ادخال البيانات frm_Employees او frm_Department . نريد ان نعمل تعديل على "الشؤون المالي" في حقل الدائرة ، ولأن النموذج مقفل ولا يسمح لتعديل البيانات ، فنضغط على زر "عمل تعديل على قيم البيانات" ، فندخل كلمة السر . فنرى طرق فتح النموذج frm_Constants ، ثم نختار الحقل الذي نريد ان نغير بياناته (الدائرة) مثلا ، ثم نضغط على الزر الذي على يسار الحقل (لجميع اصدارات الاكسس) او على الزر الذي يظهر اسفل يسار القائمة (للأكسس 2007 فما فوق ، وميزة هذا الزر انه من ضمن اعدادات الحقل ، ولا يحتاج عمل زر اضافي له ولا كود ، كما اننا نُدخل اسم النموذج frm_Constants في اعدادات الحقل كذلك) . النموذج frm_Constants يُفتح على بيانات الحقل الذي نريده Department ، وعلى المعلومة/السجل الذي كان مختار في النموذج الذي اتينا منه . وكذلك النموذج مُقفل ، ونحتاج الى الضغط على زر التعديل لتعديل المعلومة ، او زر الاضافة لإضافة معلومة جديدة ، وعند الضغط على زر الخروج ، فالكود سيقوم بتحديث البيانات . هنا نرى ان التحديث حصل لجميع الجداول ونموذج frm_Employees كذلك ، وهو المطلوب . النموذج الآخر frm_Department والذي يحمل اسم الحقل Department ، ولكن مصدر بياناته الحقل Section_Name ، كذلك يمكنه عمل نفس الشيء (كما تم شرحه اعلاه) . ومع انه عندنا 4 ازرار لتغيير بيانات الحقول ، إلا اننا استخدمنا حدث واحد فقط لفتح النموذج frm_Constants . والكود هو Private Function Open_frm_Constants() Me(Mid(Screen.ActiveControl.Name, 6)).SetFocus DoCmd.OpenForm "frm_Constants", , , , , acDialog End Function . . ----------------------------------------------------------------------------------------- وهذه إضافة حسب رغبة اخي شفان في إضافة النموذج الذي كنت استخدمه سابقا مع مراعاة اني عملت عليه الكثير من التعديلات حتى يتواكب مع الطريقة الجديدة ، وللعلم ، فالحقول في الجدول tbl_Constants يجب ان يكون لها تسميات "Captions" ،وقد اعطيت الحقول تسميات عربية ، كما هو ظاهر في النموذج ، والمرفق الذي به هذا النموذج هو ComboBox_Data_2.MDB.zip ، والذي يشمل جميع النماذج اعلاه ايضا . جعفر ComboBox_Data.mdb.zip ComboBox_Data.accdb.zip ComboBox_Data_2.MDB.zip
  6. السلام عليكم ورحمة الله وبركاته اخواني الكرام قمت بعمل نموذج لبيانات الموظفين ونموذج آخر لبيانات الحضور والانصراف جدول الحضور والانصراف مرتبط مع جدول الموظفين بحيث انه لايسمح لك باختيار رقم موظف ليس موجودًا بجدول الموظفين قمت بعمل كمبو بوكس في نموذج الحضور والانصراف يقوم بجلب رقم الموظف من جدول الموظفين ونجحت في ذلك طلبي هو عند جلب رقم الموظف اريده ان يجلب لي ايضًا اسم الموظف بدون كتابته يدويًا حتى لاتقع اي اخطاْ ياريت لو يتم شرح الطريقة حتى افهم كيف تجري الامور ^_^
  7. السلام عليكم ورحمة الله وبركاته وصف عام لتوضيح --->هي عندي اثنين كمبو بوكس مربوط مع بعض بحيث لما اختار منطقة في الكمبو الاولى تضهر لي المدن الخاصه يالمنطقةفي الكمبو الثانيه طبعا هتان الكمبوبوكس تقوم بالبحث في subform هذا ال subform يستمد البينات من استعلام وهذا الاستعلام فيه حقل يجمع الاسم الاول مع الاسم الثاني مع العائله المشكلة-->في بداية تشغيل الفورم تظهرلي جميع الاسماء مجموعه(حقل الاسم الاول + حقل الاسم الثاني +حقل العائله) بsubform بدون اي مشاكل لكن عند البحث من خلال الكمبوبوكس يظهرلي في حقل الاسم (؟ name#) *ملاحظه حقل الاسم الكامل ياتي من خلال عملية جمع 3 حقول (الاسم الاول +الاسم الثاني +العائله) موجد بالاستعلام وجزاكم الله خير
  8. السلام عليكم ورحمة الله وبركاته مرحبا جميعا عندي ملف اكسل وفيه كود VBA انا اريد تطبيق نفس هذا الدرس ,, لكن على شكل UserForm : http://trumpexcel.com/2013/10/excel-drop-down-list-with-search-suggestions/ الملف جاهز ويعمل ( لكنه غير مكتمل بعد ) لكن هناك مشكلة بسيطة عند ربط Combobox1 بالخلية A3 في الورقة Temp لكي يتم انتاج قائمة جديدة كل مرة يتم فيها ادخال نص في Combobox انتهي بدائرة غير منتهية مثلا : عند كتابة جزء من النص (مثلا bb ) تظهر جميع الاسماء التي تحتوي على هذا النص .. عندما انقر على الاختيار الاول تمشي الامور تمام كما اريد وانقر على زر perview ويظهر المعاينة لكن المشكلة عندما انقر اي خيار آخر غير الاول يختفي النص في Combobox (يجي ويختفي بسرعة ) كأنه لووب او شي خاطئ في تعريف dynamic named range ارجو المساعدة وشكرا مقدما SEARCH.rar
  9. السلام عليكم فى قاعدة البيانات المرفقة نموذج رئيسى به حقل الصف و الفصل و نموذج فرعى به كمبوبوكس مصدر الصف له هو حقل أسماء الطلاب الكمبوبوكس يظهر أسماء كل الطلاب بكل الصفوف و الفصول المطلوب عند كتابة رقم الصف و الفصل فى النموذج الرئيسى أن يظهر الكمبوبوكس أسماء هذا الصف و الفصل فقط وليس كل الطلاب test9.rar http://getfile1.post...scaled.1000.jpg
  10. إخوتي الفضلاء إخترت لكم من مكتبتي تطبيقاً لفكرة ... تصفية مصدر مربع التحرير والسرد غاية مرهقة في بعض التطبيقات يكون في بعض الأحيان مصدر المعلومات كجدول أو إستعلام محتوياً لحجم كبير جداً ، وفي فكرة هذا التطبيق يتم فرز وتصفية مصدر المربع بدلالة حرف (أول حرف) ، فتكون الصفوف في المربع تعود فقط للحرف المختار . وفي التطبيق بيان كافي .... وهي مجرد فكرة ... وعليكم إحسان التطبيق بما يناسبكم والله من وراء القصد ... وهو حسبي .......... NA_Alpha Select Combo.rar
×
×
  • اضف...

Important Information