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

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

قام بنشر

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

جزاكم الله خيراً1.rar

1.rar

قام بنشر

هناك مشكلة فى تحميل الملف

ممكن تجرب هذا الكود

Option Explicit

Sub HideEmptyRowsAndColumns()
    Dim X As Long, LR As Long
   
    With Application
        .ScreenUpdating = False
            Columns.Hidden = False: Columns.Hidden = True

            For X = 1 To Columns.Count
                If .WorksheetFunction.CountA(Columns(X)) > 0 Then Columns(X).Hidden = False
            Next X
           
            LR = Cells.SpecialCells(xlCellTypeLastCell).Row
            Rows(LR + 1 & ":" & Rows.Count).Hidden = True
           
            For X = 1 To LR
                If .WorksheetFunction.CountA(Rows(X)) = 0 Then Rows(X).Hidden = True
            Next X
           
            Application.Goto Range("A1"), True
        .ScreenUpdating = True
    End With
End Sub

قام بنشر (معدل)

جرب الكود على فرض طباعة الورقة ( كشف 1  155) يقوم باخفاء الاعمدة والصفوف التي مجموعها صفر  اثناء الطباعة 

وعلى فرض ان الورقة محمية البساوورد (123) 

Sub DetectPrint155()
 Application.ScreenUpdating = False
 Application.Calculation = xlCalculationManual
 ActiveSheet.Unprotect Password:="123"
 '1- إخفاءالاعمدة التي مجموعها صفر ضمن المدى المحدد
Set sh12 = Sheets("155 كشف 1")
For Each Cl In sh12.Range("G45:CC45")
If Cl = 0 Then
Cl.Select
    Selection.EntireColumn.Hidden = True
'
    
End If
Next
'2- عمل تصفية للصفوف ضمن العمود والمدى المحدد لاخفاء الصفوف التي مجموعها صفر
    Columns("CM:CM").Select
    Selection.AutoFilter
    ActiveSheet.Range("$CM$2:$CM$45").AutoFilter Field:=1, Criteria1:="A"
    '3- اظهار صندوق اختيار نوع الطابعة
    'Application.Dialogs(xlDialogPrinterSetup).Show
    
    ' 4-طباعة
   ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
        
     '5- الغاء تصفية الصفوف
    ActiveSheet.Range("$CM$2:$CM$45").AutoFilter Field:=1
    Range("b4").Select
    '6- اظهار الاعمدة التي مجموعها صفر
    Columns("G:CC").EntireColumn.AutoFit
    '7- اعادة تعيين عرض الاعمدة التي مجموعها صفر
   Columns("G:CC").Select
    Selection.ColumnWidth = 13.5
     Range("C5").Select
  ActiveSheet.Protect Password:="123"
 
End Sub

 

مرتب22.xlsm

تم تعديل بواسطه نبيل عبد الهادي
قام بنشر (معدل)

الأخ الفاضل الاستاذ / نبيل عبدالهادى

جزاك الله خيراً

قمت بإدراج  الكود في sheet  12 و تم حذف الأعمدة الصفرية جزاك الله خيراً

و لكن بعض الملاحظات أرجو تلافيها

1 - عند تطبيق الكود تم إخفاء الاعمدة الصفرية و لكن هوامش الورقة تأثرت و لم تكن مضبوطة و مرفق ملف pdf و أرجو ضبطها على الطباعة على ورق A3

2 - الصفوف لم تختفي

3 - عند تطبيق الكود ظهر الرسالة المرفقة

و أرجو الغاء الباسورد

مرتب3.pdf

1.png

تم تعديل بواسطه فتحى ابوالفضل
قام بنشر (معدل)

استاذي الفاضل فتحي ابو الفضل بعد التحية

1- فيما يخص هوامش الطباعة تم تفعيل السطر 

 Application.Dialogs(xlDialogPrinterSetup).Show

حيث سيظهر لك صندوق اختيار نوع الطابعة اذا كانت نوع A3  او A4 لك الاختيار ويجب ان تكون مثبته  على جهازك كذلك يمكن لك ضبط هوامش الطباعة من خلال تبوبيت (تخطيط الصفحة ثم العرض والطول ) والكود يعمل حسب هذا الضبط 

2- فيما يخص فلترة الصفوف ارجوا ملاحظة الشرح في الصوره المرفقه وهذا شي مهم لفلترة الصفوف عند تطبيق الكود على الاوراق الاخرى يجب ان تاخذ هذا بنظر الاعتبار 

3- فيما يخص الباسورد تم حذف سطر الغاء وتفعيل الحماية من خلال الكود

4- الكود يعمل بشكل جيد وانا شخصيا استخدمه في بعض الملفات التي تحوي اوراق عمل تتضمن بيانات اعمدة وصوف كثيرة

فلترة صفوف بشرط.jpg

مرتب22.xlsm

تم تعديل بواسطه نبيل عبد الهادي

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