استخدام Visual Basic لتحديد البيانات في Microsoft Excel

مؤلف: Christy White
تاريخ الخلق: 7 قد 2021
تاريخ التحديث: 1 تموز 2024
Anonim
برمجة الإكسل - الدرس 01 - التعرف على الواجهة الرئيسية لمحرر الفيجوال بيسك Excel VBA Course
فيديو: برمجة الإكسل - الدرس 01 - التعرف على الواجهة الرئيسية لمحرر الفيجوال بيسك Excel VBA Course

المحتوى

يعلمك هذا المقال كيفية استخدام Visual Basic لتحديد البيانات في Microsoft Excel. طالما أنك على دراية بأساسيات البرامج النصية VB واستخدام المزيد من الوظائف المتقدمة لبرنامج Excel ، فستجد البرامج النصية الخاصة بالتحديد سهلة للغاية.

لتخطو

الطريقة الأولى من 3: حدد الخلايا الفردية

  1. حدد خلية في ورقة العمل الحالية. افترض أنك تريد تحديد الخلية E6 باستخدام Visual Basic. يمكنك القيام بذلك باستخدام أحد الأوامر التالية:

    ActiveSheet.Cells (6 ، 5)

    ActiveSheet.Range ("E6"). حدد

  2. حدد خلية في ورقة عمل أخرى في نفس المصنف. لنفترض أن مثال الخلية ، E6 ، موجود على ورقة تسمى Sheet2. يمكنك استخدام إحدى الطرق التالية لتحديده:

    Application.Goto ActiveWorkbook.Sheets ("Sheet2"). الخلايا (6 ، 5)

    Application.Goto (ActiveWorkbook.Sheets ("Sheet2"). Range ("E6"))

  3. حدد خلية في ورقة عمل في مصنف آخر. لنفترض أنك تريد تحديد خلية من الورقة 1 في مصنف باسم BOOK2.XLS. يجب أن تعمل إحدى هاتين الطريقتين:

    Application.Goto Workbooks ("BOOK2.XLS"). Sheets ("Sheet1"). الخلايا (2،1)

    Application.Goto Workbooks ("BOOK2.XLS"). Sheets ("Sheet1"). Range ("A2")

  4. حدد خلية ذات صلة بخلية أخرى. يمكنك استخدام VB لتحديد خلية بناءً على موقعها بالنسبة إلى الخلية النشطة (أو خلية أخرى). فقط تأكد من وجود الخلية لتجنب الأخطاء. هكذا يتم فعل هذا:
    • حدد الخلية ثلاثة صفوف أدناه وأربعة أعمدة على يسار الخلية النشطة:

      ActiveCell.Offset (3 ، -4)

    • حدد الخلية الخمسة صفوف أدناه وأربعة أعمدة على يمين الخلية C7:

      ActiveSheet.Cells (7، 3). Offset (5، 4) .Select

الطريقة 2 من 3: حدد النطاقات

  1. حدد نطاقًا من الخلايا في ورقة العمل النشطة. لتحديد الخلايا C1: D6 في ورقة العمل الحالية ، استخدم إحدى الطرق الثلاث التالية:

    ActiveSheet.Range (خلايا (1 ، 3) ، خلايا (6 ، 4)). حدد

    ActiveSheet.Range ("C1: D6"). حدد

    ActiveSheet.Range ("C1"، "D6"). حدد

  2. حدد سلسلة من ورقة عمل أخرى في نفس المصنف. يمكنك استخدام أحد هذه الأمثلة لتحديد الخلايا C3: E11 على ورقة تسمى Sheet3:

    Application.Goto ActiveWorkbook.Sheets ("Sheet3"). النطاق ("C3: E11")

    Application.Goto ActiveWorkbook.Sheets ("Sheet3"). النطاق ("C3"، "E11")

  3. حدد نطاقًا من الخلايا من ورقة عمل في مصنف آخر. يجب أن يحدد كلا المثالين الخلايا من E12: F12 على الورقة 1 من مصنف يسمى BOOK2.XLS:

    Application.Goto Workbooks ("BOOK2.XLS"). Sheets ("Sheet1"). Range ("E12: F12")

    Application.Goto Workbooks ("BOOK2.XLS"). Sheets ("Sheet1"). Range ("E12"، "F12")

  4. حدد نطاقًا مسمى. إذا قمت بتعيين اسم لمجموعة من الخلايا ، فاستخدم نفس الصيغة كما في الخطوات 4-6 ، ولكن استبدل عنوان النطاق (على سبيل المثال ، "E12" ، "F12") باسم النطاق (على سبيل المثال. "المبيعات" ). وهنا بعض الأمثلة:
    • في ورقة العمل النشطة:

      ActiveSheet.Range ("المبيعات"). حدد

    • ورقة عمل أخرى لنفس المصنف:

      Application.Goto ActiveWorkbook.Sheets ("Sheet3"). Range ("Sales")

    • مصنف آخر:

      Application.Goto Workbooks ("BOOK2.XLS"). Sheets ("Sheet1"). Range ("Sales")

  5. حدد نطاقًا متعلقًا بنطاق مسمى. يختلف بناء الجملة حسب موقع النطاق المذكور وما إذا كنت تريد ضبط حجم النطاق الجديد.
    • إذا كان النطاق الذي تريد تحديده هو نفس حجم النرد اختبار 5 يسمى ، ولكن نقل أربعة صفوف لأسفل وثلاثة أعمدة إلى اليمين ، ثم استخدم الكود التالي:

      ActiveSheet.Range ("Test5"). Offset (4، 3) .Select

    • إذا كان النطاق موجودًا على الورقة 3 من نفس المصنف ، فالرجاء تنشيط ورقة العمل هذه أولاً ، ثم حدد النطاق كما يلي:

      Sheets ("Sheet3"). تنشيط ActiveSheet.Range ("اختبار"). الإزاحة (4 ، 3). حدد

  6. حدد نطاقًا وقم بتغيير حجم التحديد. يمكنك زيادة حجم النطاق المحدد إذا لزم الأمر. إذا كنت ترغب في تحديد نطاق قاعدة البيانات ثم تريد زيادة الحجم بمقدار خمسة صفوف ، يمكنك استخدام بناء الجملة التالي:

    النطاق ("قاعدة البيانات"). تحديد التحديد. تغيير الحجم (التحديد. الصفوف. العد + 5 ، _الاختيار. الأعمدة. العد). حدد

  7. حدد اتحاد سلسلتين مسماة. إذا كان لديك نطاقان متداخلان ، فيمكنك استخدام VB لتحديد الخلايا في تلك المنطقة المتداخلة ("الاتحاد"). القيد هو أنه يمكنك فقط القيام بذلك في ورقة العمل النشطة. لنفترض أن لديك اتحاد نطاق يسمى حسن واحد اسمه سيئ تريد أن تختار:
    • Application.Union (Range ("Good") ، Range ("Bad")). حدد

    • إذا كنت تريد تحديد مجموعة فرعية من نطاقين مذكورين بدلاً من المنطقة المتداخلة ، فما عليك سوى استبدالها التطبيق. الاتحاد عبر التطبيق.

الطريقة الثالثة من 3: حدد البيانات في أعمدة "متتالية" و "غير متتالية"

  1. استخدم هذه البيانات النموذجية للأمثلة في هذه الطريقة. سيساعدك هذا المخطط المليء بنماذج البيانات ، بإذن من Microsoft ، على تصور كيفية تصرف الأمثلة:
    A1: اسمب 1: أوكازيونC1: كمية
    ج 2: أ B2: 10 يورو ج 2: 5
    A3: ب B3: ج 3: 10
    A4: ج B4: 10 يورو ج 4: 5
    A5: B5: C5:
    ج 6: المجموع B6: 20 يورو ج ٦:٢٠
  2. حدد الخلية الأخيرة أسفل عمود مجاور. في المثال التالي ، تم تحديد الخلية A4:

    ActiveSheet.Range ("A1"). End (xlDown) .Select

  3. حدد أول خلية فارغة أسفل عمود من الخلايا المتجاورة. يحدد المثال التالي A5 بناءً على الرسم البياني أعلاه:

    ActiveSheet.Range ("A1"). End (xlDown) .Offset (1.0) .Select

  4. حدد نطاقًا من الخلايا المتتالية في عمود. في كلا المثالين التاليين ، تم تحديد النطاق A1: A4:

    ActiveSheet.Range ("A1"، ActiveSheet.Range ("a1"). End (xlDown)). حدد

    ActiveSheet.Range ("A1:" & ActiveSheet.Range ("A1"). End (xlDown) .Address). حدد

  5. حدد نطاقًا كاملاً من الخلايا غير المتتالية في عمود. باستخدام جدول البيانات في الجزء العلوي من هذه الطريقة ، سيحدد كلا المثالين التاليين A1: A6:

    ActiveSheet.Range ("A1"، ActiveSheet.Range ("A65536"). End (xlUp)). حدد

    ActiveSheet.Range ("A1"، ActiveSheet.Range ("A65536"). End (xlUp)). حدد

نصائح

  • يمكن عادةً حذف الخصائص "ActiveSheet" و "ActiveWorkbook" إذا تم تضمين الورقة النشطة و / أو المصنف (المصنفات).