Note: The other languages of the website are Google-translated. Back to English

كيفية إخفاء الأعمدة في الوقت الفعلي بناءً على مدخلات المستخدم في Excel؟

قد يكون إخفاء الأعمدة في Excel مهمة شائعة بالنسبة لمعظمنا ، ولكن هل سبق لك أن حاولت إخفاء الأعمدة تلقائيًا بناءً على بعض قيم الإدخال المحددة؟ على سبيل المثال ، عندما أدخل النص "AA" في خلية ، يكون العمود A مخفيًا ؛ عندما أدخل "BB" ، يتم إخفاء العمود B و C ؛ عند إدخال "CC" ، يتم إخفاء العمود D و E ؛ عند إدخال "DD" ، يتم إخفاء العمود F كما هو موضح أدناه العرض التوضيحي. ستنشئ هذه المقالة رمز VBA لحلها في Excel.

إخفاء أو إظهار الأعمدة في الوقت الفعلي بناءً على إدخال المستخدم برمز VBA

إخفاء أو إظهار الأعمدة لتصفية البيانات بناءً على إدخال المستخدم برمز VBA


إخفاء أو إظهار الأعمدة في الوقت الفعلي بناءً على إدخال المستخدم برمز VBA

لإخفاء الأعمدة المحددة في الوقت الفعلي بناءً على قيم الإدخال ، يرجى تطبيق رمز VBA أدناه:

1. في ورقة العمل حيث تريد إخفاء الأعمدة ، انقر بزر الماوس الأيمن فوق علامة تبويب الورقة ، ثم انقر فوق عرض الرمز من قائمة السياق ، انظر لقطة الشاشة

2. في فتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة ، انسخ والصق رمز VBA التالي في ملف ورقة (كود) نافذة.

كود فبا: إخفاء الأعمدة في الوقت الحقيقي بناءً على مدخلات المستخدم

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
ملاحظة: في الكود أعلاه ، K1 هي الخلية التي تدخل فيها النص المحدد ، ويجب عليك تغيير النصوص وأسماء الأعمدة حسب حاجتك. بالإضافة إلى ذلك ، يمكنك إضافة معايير جديدة أخرى فقط عن طريق إضافة البرامج النصية التالية:
  • الحالة "AA": الأعمدة ("A"). EntireColumn.Hidden = False
  • الأعمدة ("A"). EntireColumn.Hidden = True

3. ثم أغلق نافذة الكود. الآن ، عند إدخال "AA" في الخلية K1 ، واضغط على أدخل المفتاح ، العمود A مخفي ؛ عند دخول "BB" ، واضغط أدخل المفتاح ، يتم إخفاء العمود B و C ، وهكذا. إذا أدخلت أي قيمة أخرى أو حذفت المحتوى ، فسيتم عرض الأعمدة المخفية مرة واحدة ، انظر العرض التوضيحي أدناه:


إخفاء أو إظهار الأعمدة لتصفية البيانات بناءً على إدخال المستخدم برمز VBA

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

1. في ورقة العمل حيث تريد إخفاء الأعمدة ، انقر بزر الماوس الأيمن فوق علامة تبويب الورقة ، ثم انقر فوق عرض الرمز من قائمة السياق ، انظر لقطة الشاشة:

2. في فتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة ، انسخ والصق رمز VBA التالي في ملف ورقة (كود) نافذة.

كود فبا: إخفاء أو إظهار الأعمدة لتصفية البيانات بناءً على إدخال المستخدم

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
    Dim x As Variant, y As String
     If Target.Address = "$K$1" Then
        y = Target.Value
        With Range("B1:H1")
            Application.ScreenUpdating = False
            .EntireColumn.Hidden = (y <> "All")
            If y <> "All" Then
                For Each x In .Cells
                    If x = y Then x.EntireColumn.Hidden = False
                Next
            End If
            Application.ScreenUpdating = True
        End With
    End If
End Sub
ملاحظة: في الكود أعلاه ، K1 هي الخلية التي تدخل فيها النص المحدد ، B1: H1 هي رؤوس الصفوف التي تحتوي على اسم المنتج الذي تريد تصفيته.

3. ثم أغلق نافذة الكود. الآن ، إذا أدخلت اسم المنتج في الخلية K1 ، فسيتم عرض الأعمدة المقابلة فقط ، وسيتم إخفاء الأعمدة الأخرى ؛ وإذا أدخلت النص "الكل" ، فستظهر جميع الأعمدة كما هو موضح أدناه العرض التوضيحي:


أفضل أدوات إنتاجية المكتب

Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪

  • إعادة استخدام: أدخل بسرعة الصيغ المعقدة والرسوم البيانية وأي شيء استخدمته من قبل ؛ تشفير الخلايا مع كلمة السر إنشاء قائمة بريدية وإرسال رسائل البريد الإلكتروني ...
  • سوبر فورميولا بار (بسهولة تحرير أسطر متعددة من النص والصيغة) ؛ تخطيط القراءة (قراءة وتحرير أعداد كبيرة من الخلايا بسهولة) ؛ لصق في النطاق المصفى
  • دمج الخلايا / الصفوف / الأعمدة دون فقدان البيانات ؛ تقسيم محتوى الخلايا ؛ ادمج الصفوف / الأعمدة المكررة... منع تكرار الخلايا؛ قارن النطاقات
  • حدد مكرر أو فريد صفوف حدد صفوف فارغة (جميع الخلايا فارغة) ؛ البحث الفائق والبحث الغامض في العديد من المصنفات. تحديد عشوائي ...
  • نسخة طبق الأصل خلايا متعددة بدون تغيير مرجع الصيغة ؛ إنشاء المراجع تلقائيًا إلى أوراق متعددة أدخل الرموز النقطية، مربعات الاختيار والمزيد ...
  • استخراج النص، إضافة نص ، إزالة حسب الموضع ، إزالة الفضاء؛ إنشاء وطباعة المجاميع الفرعية لترحيل الصفحات ؛ التحويل بين محتوى الخلايا والتعليقات
  • سوبر تصفية (حفظ وتطبيق مخططات التصفية على أوراق أخرى) ؛ فرز متقدم حسب الشهر / الأسبوع / اليوم ، التكرار والمزيد ؛ مرشح خاص بواسطة bold، italic ...
  • اجمع بين المصنفات وأوراق العمل؛ دمج الجداول على أساس الأعمدة الرئيسية ؛ تقسيم البيانات إلى أوراق متعددة; تحويل دفعة xls و xlsx و PDF
  • أكثر من 300 ميزة قوية. يدعم Office / Excel 2007-2019 و 365. يدعم جميع اللغات. سهولة النشر في مؤسستك أو مؤسستك. الميزات الكاملة نسخة تجريبية مجانية لمدة 30 يومًا. ضمان استرداد الأموال لمدة 60 يومًا.
علامة تبويب kte 201905

يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (0)
لا يوجد تقييم. كن أول من يقيم!
لا توجد تعليقات منشورة هنا حتى الآن
اترك تعليقاتك
النشر كضيف
×
قيم المنشور:
0   الشخصيات
المواقع المقترحة