اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

ماكرو اخفاء باقى اعمدة الجدول عند اختيار عمود ثم اخفاء الصفوف التى بها صفر فقط


إذهب إلى أفضل إجابة Solved by سليم حاصبيا,

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

أولاً يجب عليك ان تذكر من وضع لك الكود في المشاركة التي رفعتها

الكود

'+++++++++++++++++++++++++++++++++++
Sub show_Col()
Sheets("sheet1").Columns.Hidden = False
End Sub
'+++++++++++++++++++++++++++++++++++
Sub show_all()
Sheets("sheet1").Rows.Hidden = False
End Sub
'++++++++++++++++++++++++++++

Sub hid_rows_and_columns()
  HideRows
  Hid_col
End Sub
Sub Show_rows_and_columns()
  show_Col
  show_all
End Sub
'+++++++++++++++++++++++++++++++++++
Sub HideRows()
    Dim Ro%, i%

    With Sheets("Sheet1")
    .Rows.Hidden = False
      Ro = .Cells(Rows.Count, "C").End(3).Row
     For i = 1 To Ro
     If .Cells(i, 1) = vbNullString And _
         Application.Sum(.Cells(i, "d").Resize(, 7)) = 0 Then
        .Cells(i, 1).EntireRow.Hidden = True
     End If
     Next
    End With

End Sub
''+++++++++++++++++++++++++++++++++++

Sub Hid_col()
Dim rg As Range, y%
 Set rg = Selection
 
 If rg.Columns.Count > 1 Then
 Set rg = rg.Cells(1, 1)
 End If
 y = rg.Column
 If y > 7 Then Exit Sub
   With Sheets("Sheet1").Range("A1:G1")
      .Columns.Hidden = True
      .Columns(y).Hidden = False
      Application.Goto .Cells(1, y)
  End With

    
End Sub

الملف مرفق

zahra_M.xlsm

  • Like 2
رابط هذا التعليق
شارك

حضرتك من قام بكتابة الكود لك كل الشكر

الله يفتح عليك الجزء الاول ممتاز استاذ سليم حاصبيا

احتاج بعد اخفاء الاعمادة العمود الظاهر الصفوف التى فيها صفر والفارغة تختفى

جزاك الله كل خير وفرج همك وابعد الحزن عنك .... والهدف هو الطباعة

مثلا انا اخترت عمود we اريده يظهر بالشكل الى فى الملف مشكور

zahra_M.xlsm

رابط هذا التعليق
شارك

لم تقم الاضافة بالغرض منها

جائز انا مش عارفة اوصل المطلوب لحضرتك

 الكود القديم غير مستخدم فى هذه الحالة لا احتاجه انا كل ما احتاجه اخفاء كل الاعمدة عدا العمود الذى اختاره

بعد اختيار العمود يظهر فقط العمودa والعمود الذى اخترته

بعد ذلك اخفاء الصفوف التى بها صفر والفارغة ويبقى فقط السطر من العمود a اسفله السطر الذى به بيانات من العمود المختارليكون بالشكل المرفق فأقوم بالطباعة مباشرة

حيث اقوم بهذا يدويا وساعات كثيرة اخفى صفوف بها بيانات

مع الشكر 

zahra_M.xlsm

رابط هذا التعليق
شارك

تم النعديل كما تريدين

Option Explicit
Sub show_all()
  show_Columns
  show_rows
End Sub
'+++++++++++++++++++++++++++++++
Sub Hid_col()
   show_Columns
   show_rows
Dim rg As Range, y%
 Set rg = Selection
 
 If rg.Columns.Count > 1 Then
 Set rg = rg.Cells(1, 1)
 End If
 y = rg.Column
 If y > 7 Then Exit Sub
   With Sheets("Sheet1").Range("A1:G1")
      .Columns.Hidden = True
      .Columns(y).Hidden = False
      .Columns(1).Hidden = False
      Application.Goto .Cells(1, 1)
  End With
 Hide_row (y)
    
End Sub
'+++++++++++++++++++++++++++++++++
Sub show_Columns()
Sheets("sheet1").Columns.Hidden = False
End Sub
'+++++++++++++++++++++++++++++++++++
Sub show_rows()
Sheets("sheet1").Rows.Hidden = False
End Sub
'++++++++++++++++++++++++++++
Sub Hide_row(ByVal x)
 Dim t%, m%
 With Sheets("sheet1")
  t = .Cells(Rows.Count, x).End(3).Row
 
  For m = 3 To t Step 2
      If .Cells(m, x) = 0 Or _
         .Cells(m, x) = vbNullString Then
         .Cells(m, x).EntireRow.Hidden = True
      End If
  Next
 End With
End Sub

الملف من جديد

zahra_Final.xlsm

  • Like 2
رابط هذا التعليق
شارك

نفذت التعديل لم يحدث شىء استاذ سليم حاصبيا

Sub Hide_row(ByVal x)
 Dim t%, m%
 With Sheets("sheet1")
  t = .Cells(Rows.Count, x).End(3).Row
'   For m = 3 To t Step 2
  For m = 3 To t
      If .Cells(m, x) = 0 Or _
         .Cells(m, x) = vbNullString Then
         .Cells(m, x).EntireRow.Hidden = True
      End If
  Next
 End With
End Sub

 

zahra_Final.xlsm

رابط هذا التعليق
شارك

هذا التعديل (تم التجربة على العامود B ) وكانت النتيجة كما تريدين

Last_pc.png

1- جدول المقارنة (قبل الماكرو  وبعده ) الذي ارسلته (في النطاق L1 الى M25 ) 

كما تلاحظين بعد تنفيذ الماكرو (على العامود B) كل الكلمات "إخفاء " يتم اخفاء صفوفها

الملف مرفق

zahra_Final_1.xlsm

  • Like 1
رابط هذا التعليق
شارك

تم عمل التعديل استاذ سليم حاصبيا والنتيجة مختلفة عن النتائج المرغوب الحصول عليها

اعتذر لحضرتك واشكرك

الفرق بالمبف المرفق بين ما نحصل عليه بالمكرو والمرغوب فيه كل الصفوف الملونة بالاصفر الناصع مطلوب اخفائها حيث انها اما تساوى0 او فارغة

اشكرك

zahra_Final.xlsm

رابط هذا التعليق
شارك

5 دقائق مضت, zahraamohamed said:

تم عمل التعديل استاذ سليم حاصبيا والنتيجة مختلفة عن النتائج المرغوب الحصول عليها

اعتذر لحضرتك واشكرك

الفرق بالمبف المرفق بين ما نحصل عليه بالمكرو والمرغوب فيه كل الصفوف الملونة بالاصفر الناصع مطلوب اخفائها حيث انها اما تساوى0 او فارغة

اشكرك

zahra_Final.xlsm 22.9 kB · 0 downloads

المشكلة عندك لاني انا تقيدت يالكلمة اخفاء   ولم انظر الى لون الخلايا اصفر او غيره (الاسهم الزرقاء) (أخفيت ما تريدن اخفاءه) حسب ورود هذه الكلمة

أعتذر عن المتابعة لضيق الوقت

 

 

My+pic.png

  • Thanks 1
رابط هذا التعليق
شارك

اشكرك لا علاقة باللون استاذ سليم

المقصود من اللون هو توضيح ان اذا كانت الصفوف مثل هذه تختفى

والجدول الاخر هو المطلوب ان يكون الجدول مثله لاقوم بالطباعة مباشرة لا اقوم باختيار صفوف واقوم باخفائها

اشكرك

متفهمة موقفك 

انتظر مساعدة احد الاساتذة اكرر شكرى

رابط هذا التعليق
شارك

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