اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

السلام عليكم الاخوة الكرام رجاء مساعدتى فى عمل كود اخفاء اعمدة بناء على قيمة خليه بحيث اذا كتبت رقم 10 يخفى اعمدة معين انا محدد اعمدة من 1 الى 50 الكود يخفى كل الاعمدة المحددة من رقم 11 الى 50 و هكذا اذا كتبت 15 يخفى الاعمدة من 16 الى 50

مرفق كود للتوضيح

كود اخفاء.xlsx

قام بنشر

السلام عليكم ورحمه الله وبركاته

جرب هذا الكود وعدل عليه 

Sub HideColumnsByValue()
    Dim c As Range
    For Each c In Range("A:Z")
        If c.Value = "value" Then
            c.EntireColumn.Hidden = True
        End If
    Next c
End Sub

 

  • أفضل إجابة
قام بنشر

وعليكم السلام ورحمة الله تعالى وبركاته تفضل اخي 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    StartColumn = 6   ' اول عمود
    LastColumn = 40   ' اخر عمود
    iRow = 20  ' رقم الصف
    Application.ScreenUpdating = False
    
    For i = StartColumn To LastColumn
    Application.ScreenUpdating = False
    If Range("b20").Value = "" Then
    Columns("F:H").EntireColumn.Hidden = False
    Exit Sub
    End If
        If Cells(iRow, i).Value > Range("b20").Value Then
            Cells(iRow, i).EntireColumn.Hidden = True
    Else
        Cells(iRow, i).EntireColumn.Hidden = False
        End If
    Next i
    
End Sub

 

كود اخفاء.xlsm

  • Like 4
قام بنشر

مرفق كود للتوضيح

الف الف الف شكرا الاستاذ الفاضل محمد  هشام 

الكود يعمنل و هو المطلويب الف الف شكر لحضرتك

ربنا يحفظك و يزيدك مكن فضله

قام بنشر

مرفق كود للتوضيح

الف الف الف شكرا الاستاذ الفاضل محمد  هشام 

الكود يعمنل و هو المطلويب الف الف شكر لحضرتك

ربنا يحفظك و يزيدك من فضله

بعد اذن حضرتك عندى ورقة عدد الاعمدة اللي بشتغل عليها 170 عمود الكود يعمل بكفاأة بس مع كل حركة للملف الكمبيوتر بطئ و يظهر دائرة كانه بيحمل حاجة ده مع كل حركة بالماوس هل يوجد طريق لتسريع الملف

قام بنشر

أخي   @ehabaf2 هذه مسألة طبيعية خاصة عند وجود بيانات كثيرة على ورقة العمل من الأفضل إستبدال طريقة تنفيذ الكود من حدث الشيت إلى Module

 

Sub Masquer_Columns()
StartColumn = 6   ' اول عمود
    LastColumn = 176   ' اخر عمود
    iRow = 20  ' رقم الصف
Application.ScreenUpdating = False
    
    For i = StartColumn To LastColumn
    If Range("B20").Value = "" Then
    'From column 6 to column 170
    Columns("F:FS").EntireColumn.Hidden = False
    Exit Sub
    End If
        If Cells(iRow, i).Value > Range("b20").Value Then
            Cells(iRow, i).EntireColumn.Hidden = True
    Else
        Cells(iRow, i).EntireColumn.Hidden = False
        End If
    Next i
 
    Application.ScreenUpdating = True
End Sub

 

 

 

كود اخفاء v2.xlsm

  • Like 3
قام بنشر

الف شكر استاذ محمد هشام الكود تمام و يعمل بسرعة 

الف الف شكر لحضرتك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information