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

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

قام بنشر

استاذي الفاضل محمد

المطلوب طباعة الاعمده الصفراء فقط

المظلله في الجدول فقط

حيث عند الضغط على زر المعاينه تظهر للطباعة الاعمده الصفراء فقط

وعند الخروج من المعاينه

تظهر جميع الاعمده كما كانت قبل الطباعه

 

والمشكله اني لا اريد اخفاء الاعمده

اريدها كلها ظاهره

وعند الطباعه فقط تظهر الاعمده الصفراء

وعند الخروج من المعاينه والطباعه

تظهر جميع الاعمده كما كانت . بدون اخفاء للأعمدة

قام بنشر

استاذي الفاضل سوف ارفق لك ملفين

للفكره التي اطلبها

وارجو ان يطبق ما فيها على الشيت الخاص بي

وانا اطلب طباعة الاعمده المحدده

وليس الصفوف

اتمنى استاذي الكريم تبسيط الكود لا يتناسب مع ملفي . وكذلك لمقدرتي لنقله الى ملفي

 

الملفات المرفقهطباعة اعمدة محددة مع صفوف اعتمادا على قيمة نصية+111.xlsb (1).rarطباعة اعمدة محددة مع صفوف اعتمادا على قيمة نصية+111.xlsb.rar

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

Draw a button inside cell B9 or any other cell that will be visible all the time and assign the following macro to that button. The code is flexible and you can assign the desired columns to be shown and also to assign the rows you would like to hide

Sub Test()
    Dim desiredColumns(), aRows(), e, ws As Worksheet, columnsHidden As Boolean, lastColumn As Long, i As Long
    Application.ScreenUpdating = False
        Set ws = ThisWorkbook.Sheets(1)
        With ws
            desiredColumns = Array(2, 3, 7, 9, 10, 13, 15, 20, 23)
            aRows = Array("1:8", "25:27")
            lastColumn = .Cells.Find(What:="*", After:=.Cells(1, 1), LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
            If Not columnsHidden Then
                .Columns(lastColumn + 1).Resize(, .Columns.Count - lastColumn).EntireColumn.Hidden = True
                For i = 1 To lastColumn
                    If Not IsInArray(i, desiredColumns) Then
                        .Columns(i).EntireColumn.Hidden = True
                    End If
                Next i
                For Each e In aRows
                    .Rows(e).EntireRow.Hidden = True
                Next e
                columnsHidden = True
                .PrintPreview
                .Activate
                GoTo iLine
            Else
iLine:
                .Columns.EntireColumn.Hidden = False
                For Each e In aRows
                    .Rows(e).EntireRow.Hidden = False
                Next e
                columnsHidden = False
            End If
        End With
    Application.ScreenUpdating = True
End Sub

Function IsInArray(ByVal valToBeFound, ByVal arr) As Boolean
    Dim ele
    For Each ele In arr
        If ele = valToBeFound Then IsInArray = True: Exit Function
    Next ele
    IsInArray = False
End Function

 

تم تعديل بواسطه lionheart
  • Like 2
قام بنشر

استاذي الفاضل محمد

الكود يعمل بطالطريقة المطلوبه

ولكن بعد المعاينه والطباعه

تختفي بقية الاعمده الغير مطلوبه

 

المطلوب استاذي الفاضل

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

قام بنشر

استاذي الفاضل lionheary

الكود الذي ارسلته يعمل ولاكن بالجدول المحوريه يخفي الاعمده

والمطلوب عدم اختفاء الاعمده نهائيا

وكذلك انت جعلته بالشيت رقم ١

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

اسمه الشيت داتا . 

ارجو تطبيق الكود على الملف المرفق

وعلى الجدول المرفق بنفس ترتيب الاعمده

ابتداء من الصف ٩ ومن العمود ٢

مع اخذ بالاعتبار عدم اخفاء الاعمده بعد المعاينه والطباعه ولك جزيل الشكر..

وكذلك السماح بتغيير لاسم لأي شيت

نريد ان نحدد له هذا الكود للطباعه

لأن الشيت عندي ليس رقم ١

طباعة اعمده محدده.xlsx

قام بنشر (معدل)
Sub طباعه_عامة()
                    
                    
          Range("B9:Z260").Select '''هنا حددالمراد اضافتة الطباعة
         ActiveSheet.PageSetup.PrintArea = "$B$9:$Z$260" '''هنا حددالمراد اضافتة الطباعة


                    Range("G:G,I:I,d:d,e:e,k:k,L:L,n:n,f:f,h:h,p:p,q:q,r:r,s:s,u:u,v:v,x:x,Y:Y,z:z").Select ''هنا حدد العمود المراد اخفائة قبل المعاينة
                        Selection.EntireColumn.Hidden = True
                   
                   ActiveWindow.SelectedSheets.PrintPreview '  '                   هنا معاين قبل الطباعة
                    Application.ScreenUpdating = False
                      With Sheets("ورقة1") 'هنا حدد اسم الورقة  او الشيت

             Range("G:G,I:I,d:d,e:e,k:k,L:L,n:n,f:f,h:h,p:p,q:q,r:r,s:s,u:u,v:v,x:x,Y:Y,z:z").Select ''هنا حددالعمود المراد اظهارة
             Selection.EntireColumn.Hidden = False
            Range("b9:z260").Select ''هنا حدد المدي المراد طباعته

'           ActiveSheet.PageSetup.PrintArea = "$B$9:$Z$100"
    Reply = MsgBox("هل العميل " & Chr(10) & " يريد نسخة من الفاتورة ", vbYesNo) '
     If Reply <> 6 Then Exit Sub '

               .PrintOut

        End With


End Sub

اخي علي بن علي

افهم من كلامك  انك تحتاج اخفاء قبل المعاينة فقط ... وليس اخفاء في الطباعه ؟

 

تفضلطباعة اعمده محدده.xlsm

 

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

يا استاذ محمد اتعبتك معاي

الله يرضى عليك

المطلوب اخفاء للأعمده فقط

اثناء المعاينه والطباعه

وعند الخروج من المعاينه او الطباعه

تظهر جميع الاعمده كامله . 

 

 

المقصود استاذ محمد

المطلوب طباعة اعمده محدده

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

انما تختفي الاعمده الغير مطلوبه للطباعه

فقط عند المعاينه او الطباعه  فقط لا غير

 

وتظهر فقط الاعمده المطلوب طباعتها

وعند الخروج من وضع المعاينه والطباعه

تعود جميع الاعمده ظاهره . بحيث لا يكون هناك اي عمود مختفي تماما...

 

بشكل اوضح عسى اوضح المطلوب

لنفترض اني فتحت شيت العمل

وافتراضيا جميع الاعمده ظاهره

المطلوب يا استاذ محمد

بالكود 

عند الضغط على زر الطباعه او المعاينه

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

وعند الخروج من الطباعه او المعاينه 

يعود الشيت كما كان . ليس هناك اي اعمده مخفيه

 

وشكرا 

ومره ثانيه المعذرة على الاطاله

قام بنشر

اللهم صل وسلم عليك يا رسول الله محمد

 

استاذ محمد تحيه طيبه

جربت على الملف الذي ارسلته حضرتك

والكود قام بالمطلوب ولكن بعد المعاينه ولطباعه

اختفت الاعمده الغير مطبوعه

ولم يتبقى ظاهر سوا الاعمده التي تم طباعتها

 

 

الكود عمل بالشكل المطلوب

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

(( بعد الطباعه تظهر جميع الاعمده ))

ولا يكون هناك اي عمود مخفي

 

اي تكون جميع الاعمده من A الى اخر عمود ظاهره

 

ارجو ان يكون الشرح واضح

 

وشكرا

قام بنشر

اخى @علي بن علي ابو عبدالرحمن 

الكود الذي موجود في افضل اجابه يعمل جيدا وليس به مشاكل

والكود الذي المشاركه الاخيره لاخي @محمد يوسف ابو يوسف يعمل ايضا وليس به مشاكل

 

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

اخي  علي بن علي

كما ذكر..... اخي حسونة  ...

الكود الاول والثاني يعملان بكفائة

ومع ذالك تفضل نسخة من طباعة اعمده محدده (1).xlsm

تم شرح الكود لتسهيل فهمه لك ...... وتم تغير بسيط بالكود ليتناسب معك...ولم يترك اي عمود مخفي بعد المعاينة و الطباعة

اتمني ان يكون المطلوب

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

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

الاستاذ علي 

كما تفضل الاستاذ حسونة حسين

إلى عمل الاكواد بطريقة سليمة  - وانا اضم صوتي إليه

فالاعمدة الغير مظللة تختفي وتظهر بعد الطباعة 

واذا كان هناك شيء اخر فضلا قم بارسال ثورة توضح مشكللتك

تم تعديل بواسطه أبو إيمان
  • Like 3
قام بنشر

استاذي الفاضل 

محمد يوسف ابو يوسف

شكرا جزيلاً على المساعده

الكود يعمل بالشكل المطلوب

واذا وجهتني صعوبات

سوف اتواصل معك

 

ملاحظه زر الأختيار كأفضل اجابه ليس مفعل

لأ ادري لماذا

قام بنشر

السلام عليكم

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

عند تطبيق الكود على ملف العمل الخاص بي

يعطيني رساله من محرر الاكواد

run -time errore '1004':

لا يمكن تعيين الخاصية hidden

من الفئه range

 

ما هو الحل للمشكله اذا تكرمت

قام بنشر

اخي محمد الملف هو مثل

الملف الذي اضفت إليه الكود

والفارق فقط في الشيت الخاص بي

ان الشيت الخاص بي مداه من B9 الى AH

وعدد الصفوف للجدول ١٢٨٧ صف

وللمعلوماتيه اول ٨ صفوف التي اعلى من الجدول

بشكل اوضح من الخلية B1 الى الخلية AH8

خلايا فيها معادلات وهي صفوف ليس مرتبطه بالجدول المذكور المدى الخاص به اعلاه

 

هل يمكن ان تؤثر المعادلات في ال٨ صفوف الاولى على عمل الكود مثلا

 

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