كيفية إخفاء ورقة العمل النشطة الخاصة بك في الاكسل بواسطة Excel Macro

 

كيفية إخفاء ورقة العمل النشطة الخاصة بك في الاكسل بواسطة Excel Macro


في هذه المقالة سنتعلم خطوة بخطوة كيفية إنشاء Excel Macro لإخفاء جميع أوراق العمل بسهولة وسرعة في ملف Excel باستثناء الورقة النشطة التي نعمل عليها.

الرمز   VBA هو اخصار لجملة Visual Basic For Applications الذي سيتكرر عبر جميع أسماء أوراق العمل في ورقة عمل Excel الخاص بك ، ويخفيها إذا لم تتطابق مع اسم ورقة العمل النشطة.

 لن يسمح لك Excel بإخفاء جميع أوراق العمل في ورقة العمل ، يجب أن يكون لديك ورقة مرئية واحدة على الأقل بشكل افتراضي.

اعتمادًا على نوع جدول البيانات الذي أقوم بتطويره ، غالبًا ما يكون لدي أوراق عمل متعددة في كتاب عمل Excel - ورقة بيانات وورقة حسابات وورقة نتائج ، لذلك أجد هذا الماكرو طريقة سريعة حقًا لإخفاء كل العمل الإضافي الأوراق دون الحاجة إلى المرور عبرها جميعًا وإخفائها بشكل فردي.

كيف يعمل؟

أولافتح Visual Basic - عن طريق الضغط على F11 أو علامة تبويب المطور - Visual Basic

 

كيفية إخفاء ورقة العمل النشطة الخاصة بك في الاكسل بواسطة Excel Macro
كيفية إخفاء ورقة العمل النشطة الخاصة بك في الاكسل بواسطة Excel Macro



الخطوة 1:

نحتاج إلى التصريح عن كائن يسمى ws. سيؤدي هذا إلى إنشاء حاوية ذاكرة في Excel لكل ورقة عمل يتم تكرار حلقات الماكرو خلالها.

الخطوة 2:

 يبدأ Excel في التدوير عبر أوراق العمل في ملف .Excel

ملاحظة

لاحظ أن هناك فرقًا بين ThisWorkbook و ActiveWorkbook. إن كائن ThisWorkbook هو دفتر العمل الذي يحتوي على الرمز وكائن ActiveWorkbook هو دفتر العمل النشط حاليًا والذي يتم استخدامه. نحن نستخدم ThisWorkbook للتأكد من أننا لا نؤثر على أي المصنفات الأخرى ، لأن كتاب العمل الذي يحتوي على الرمز ربما لا يكون دائمًا كتاب عمل Excel النشط.

 

الخطوة 3:

 يقارن الماكرو في هذه المرحلة اسم الورقة النشطة بورقة العمل التي يتم تكرارها.

 

الخطوة 4:

 إذا كانت الأسماء غير متطابقة أو غير متساوية "<>". ثم يخفي Excel الورقة.

 

الخطوة 5:

 المرحلة الأخيرة هي العودة إلى الورقة التالية ، حيث يتم تكرار الإجراء ، حتى يتم تقييم جميع أسماء أوراق Excel وينتهي الماكرو.

الكود 

إليك الكود إذا كنت تريد نسخه ولصقه في Excel للتلاعب به واستكشافه.


Sub DeleteNonActiveWorksheets()

Dim ws As Worksheet

For Each ws In ThisWorkbook.Worksheets

If ws.Name <> ThisWorkbook.ActiveSheet.Name Then

ws.Visible = xlSheetHidden

End If

Next ws

End Sub



Comments
No comments
Post a Comment



    Reading Mode :
    Font Size
    +
    16
    -
    lines height
    +
    2
    -