آموزش ایجاد لیست کشویی (Combo Box) در Access 2024_Lookup Wizard

آموزش ایجاد لیست کشویی (Combo Box) در Access 2024

🔹 لیست کشویی (Combo Box) در Access امکان انتخاب مقدار از یک لیست از پیش‌تعریف‌شده را فراهم می‌کند.
🔹 این قابلیت در فیلدهای جداول، فرم‌ها و گزارش‌ها استفاده می‌شود.

انواع روش‌های ایجاد لیست کشویی در Access

۱) ایجاد لیست کشویی دستی (Value List)

✅ توضیح:

  • در این روش مقادیر را مستقیماً در فیلد وارد می‌کنید.

✅ مثال کاربردی:
فرض کنید می‌خواهید برای فیلد City (شهر) یک لیست کشویی بسازید که شامل شهرهای تهران، اصفهان و مشهد باشد.

🔹 مراحل:

  1. وارد Table Design View شوید.
  2. در فیلد City، نوع داده را Short Text انتخاب کنید.
  3. به قسمت Lookup در پایین صفحه بروید.
  4. در Display Control مقدار Combo Box را انتخاب کنید.
  5. در قسمت Row Source این مقدار را وارد کنید: "تهران";"اصفهان";"مشهد"
  6. Table را ذخیره کنید و هنگام ورود داده، لیست کشویی را مشاهده خواهید کرد.

۲) ایجاد لیست کشویی با جدول جداگانه (Lookup Table)

✅ توضیح:

  • مقدارها از یک جدول جداگانه دریافت می‌شوند.

✅ مثال کاربردی:
فرض کنید یک جدول Students دارید که فیلد Department (رشته تحصیلی) باید به یک لیست از رشته‌های تعریف‌شده متصل باشد.

🔹 مراحل:

  1. یک جدول جدید ایجاد کنید به نام Departments.
  2. دو فیلد برای این جدول ایجاد کنید:
    • ID (کلید اصلی) – نوع AutoNumber
    • DepartmentName (نام رشته) – نوع Short Text
  3. اطلاعات رشته‌ها را وارد کنید: 1 | مهندسی نرم‌افزار 2 | مدیریت 3 | پزشکی
  4. جدول Students را باز کنید و فیلد Department را انتخاب کنید.
  5. در قسمت Lookup گزینه Combo Box را انتخاب کنید.
  6. در Row Source این دستور را وارد کنید: SELECT ID, DepartmentName FROM Departments;
  7. Bound Column را روی 1 و Column Count را روی 2 قرار دهید.
  8. حالا هنگام ورود اطلاعات در جدول Students، می‌توانید رشته موردنظر را از لیست انتخاب کنید.

۳) ایجاد لیست کشویی بر اساس کوئری (Query-Based)

✅ توضیح:

  • مقدارها بر اساس یک کوئری فیلتر شده نمایش داده می‌شوند.

✅ مثال کاربردی:
فرض کنید در جدول Products، محصولاتی که در انبار موجود هستند نمایش داده شوند.

🔹 مراحل:

  1. به Query Design بروید.
  2. جدول Products را اضافه کنید.
  3. دو فیلد ProductID و ProductName را انتخاب کنید.
  4. در قسمت Criteria برای Stock مقدار >0 را وارد کنید تا فقط محصولات موجود نمایش داده شوند.
  5. کوئری را ذخیره کنید (مثلاً با نام AvailableProducts).
  6. در یک فرم جدید، یک Combo Box اضافه کنید و منبع داده آن را AvailableProducts قرار دهید.
  7. حالا هنگام انتخاب محصول، فقط موارد موجود نمایش داده می‌شوند.

۴) ایجاد لیست کشویی با استفاده از SQL Query

✅ توضیح:

  • می‌توانید مقدارها را با فیلترهای پیشرفته SQL انتخاب کنید.

✅ مثال کاربردی:
فرض کنید می‌خواهید فقط دانشجویانی که معدل بالای 17 دارند را در لیست کشویی نمایش دهید.

🔹 مراحل:

  1. به Table Design View بروید و روی فیلد موردنظر (مثلاً StudentName) کلیک کنید.
  2. در قسمت Lookup گزینه Combo Box را انتخاب کنید.
  3. در Row Source این کد SQL را وارد کنید: SELECT StudentID, StudentName FROM Students WHERE GPA > 17;
  4. حالا فقط دانشجویانی که معدل بالای ۱۷ دارند در لیست کشویی نمایش داده می‌شوند.

مثال: آموزش ایجاد لیست کشویی در Access بدون کدنویسی (مرحله‌به‌مرحله با مثال)

🔹 لیست کشویی (Combo Box) یکی از پرکاربردترین ابزارهای Access است که باعث ورود داده‌ها به‌صورت سریع‌تر و دقیق‌تر می‌شود.
🔹 در این آموزش، دو روش بدون نیاز به کدنویسی را یاد می‌گیریم:

  1. روش دستی (Value List) – وارد کردن مقادیر به‌صورت مستقیم
  2. روش جدولی (Lookup Table) – دریافت مقادیر از یک جدول جداگانه

۱. روش دستی (Value List) – ایجاد لیست کشویی بدون جدول

✅ مثال کاربردی:
می‌خواهیم برای فیلد “شهر” در جدول دانش‌آموزان (Students) یک لیست کشویی ایجاد کنیم که شامل “تهران، اصفهان، مشهد” باشد.

🔹 مراحل:

  1. ایجاد یا باز کردن جدول:
    • وارد Access شوید.
    • جدول Students را باز کنید یا یک جدول جدید ایجاد کنید.
    • در نمای Design View، یک فیلد جدید با نام City و نوع داده Short Text اضافه کنید.
  2. فعال کردن لیست کشویی:
    • روی فیلد City کلیک کنید.
    • در پایین صفحه به برگه Lookup بروید.
    • مقدار Display Control را روی Combo Box قرار دهید.
  3. وارد کردن مقادیر لیست کشویی:
    • در قسمت Row Source Type مقدار Value List را انتخاب کنید.
    • در قسمت Row Source مقدارهای موردنظر را وارد کنید: "تهران";"اصفهان";"مشهد"
    • مقدار Limit To List را روی Yes قرار دهید تا کاربران فقط از لیست انتخاب کنند.
  4. ذخیره و تست:
    • جدول را ذخیره کنید.
    • روی نمای Datasheet View کلیک کنید و ببینید که فیلد City به‌صورت لیست کشویی نمایش داده می‌شود.
    • هنگام وارد کردن اطلاعات، می‌توانید از بین تهران، اصفهان، مشهد یکی را انتخاب کنید.

✅ مزایا: سریع و ساده، بدون نیاز به جدول جداگانه
❌ معایب: اگر بخواهید شهر جدیدی اضافه کنید، باید به طراحی جدول برگردید.

۲. روش جدولی (Lookup Table) – ایجاد لیست کشویی از یک جدول جداگانه

✅ مثال کاربردی:
می‌خواهیم برای فیلد “رشته تحصیلی” در جدول دانش‌آموزان (Students)، یک لیست کشویی ایجاد کنیم که مقدارها را از جدول جداگانه‌ای به نام “Departments” دریافت کند.

🔹 مراحل:

مرحله ۱: ایجاد جدول جداگانه برای لیست کشویی

  1. در Access، روی Create > Table Design کلیک کنید.
  2. دو فیلد زیر را ایجاد کنید:
    • ID (نوع: AutoNumber) → کلید اصلی
    • DepartmentName (نوع: Short Text) → نام رشته
  3. جدول را با نام Departments ذخیره کنید.
  4. اطلاعات را در نمای Datasheet View وارد کنید: 1 | مهندسی نرم‌افزار 2 | مدیریت 3 | پزشکی 4 | معماری
  5. جدول را ببندید.

مرحله ۲: اتصال فیلد “رشته تحصیلی” به لیست کشویی

  1. جدول Students را باز کنید و وارد Design View شوید.
  2. فیلد Department را اضافه کنید و نوع داده را Number انتخاب کنید.
  3. به برگه Lookup بروید و مقدار Display Control را روی Combo Box تنظیم کنید.
  4. در قسمت Row Source Type مقدار Table/Query را انتخاب کنید.
  5. در قسمت Row Source، جدول Departments را انتخاب کنید.
  6. مقدار Bound Column را روی 1 تنظیم کنید (تا ID ذخیره شود).
  7. مقدار Column Count را روی 2 تنظیم کنید.
  8. مقدار Column Widths را روی 0cm;4cm تنظیم کنید (ID نمایش داده نشود).
  9. مقدار Limit To List را روی Yes تنظیم کنید.

مرحله ۳: ذخیره و تست

  1. جدول Students را ذخیره کنید.
  2. در Datasheet View، هنگام ورود اطلاعات برای فیلد Department، لیست کشویی ظاهر می‌شود.
  3. رشته موردنظر را انتخاب کنید و مقدار ذخیره‌شده ID رشته خواهد بود.

✅ مزایا: امکان تغییر لیست رشته‌ها بدون نیاز به تغییر طراحی جدول
❌ معایب: نیاز به ایجاد جدول جداگانه

نتیجه‌گیری

✅ اگر لیست کشویی شما تغییر نمی‌کند (مثل نام شهرها)، روش دستی (Value List) مناسب است.
✅ اگر لیست کشویی نیاز به به‌روزرسانی دارد (مثل رشته‌های تحصیلی)، روش جدولی (Lookup Table) گزینه بهتری است.

✅ لیست‌های کشویی در Access به شما امکان می‌دهند داده‌ها را سریع‌تر و دقیق‌تر وارد کنید.
✅ می‌توان لیست‌ها را به‌صورت دستی، از جدول، از کوئری یا با SQL ایجاد کرد.
✅ استفاده از Lookup Table روش بهینه‌تری نسبت به مقدارهای دستی است.
✅ با تنظیمات صحیح، می‌توان نمایش و عملکرد لیست کشویی را بهینه کرد.

💡 کدام روش را انتخاب می‌کنید؟

نوشته‌های مشابه