دستور چاپ برای شیت پنهان شده

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • behnamsa8309

    • 2019/12/03
    • 5
    • 24.00

    [حل شده] دستور چاپ برای شیت پنهان شده

    ا سلام آیا از یک شیت که hideشده می شه با استفاده از دستورهای کد نویسی vba از شیت دیگری دستور چاپ محدوده ای از اطلاعات رو با استفاده از دکمه ای که از شیپ ها انتخاب کردم رو صادر کرد . من از فرمول زیر استفاده کردم اما اجرا نمی شه و خطا می گیره . اما بطور آزمایشی در برگه دیگری اینکار رو با شیتی که hide نشده انجام دادم و عملیات بدرستی انجام شد. لطفا اگه فرمولی برای شیتهای hide شده هست برام ارسال کنید با تشکر


    CURPRTAREA = Sheet1.PageSetup.PrintArea
    MYPRTAREA = "A1:R3"
    Sheet1.PageSetup.PrintArea = MYPRTAREA
    Sheet1.PrintOut
    Sheet1.PageSetup.PrintArea = CURPRTAREA
    End Sub
  • حسام بحرانی

    • 2013/09/29
    • 2065
    • 72.00

    #2
    Hide --->Unhide --->Hide

    سلام
    خُب شاید ساده ترین راه حل این باشه که دستوری بنویسید که ابتدا شیت
    Hide شده رو Unhide کنه و پس از اِعمال چاپ مجدداً شیت رو پنهان کنید.
    موفق باشید.
    [CENTER][B][SIZE=5][COLOR=#006600][FONT=georgia][COLOR=#800000]!With [/COLOR][/FONT][/COLOR][COLOR=#006600][FONT=georgia]God [/FONT][/COLOR][COLOR=#006600][FONT=georgia][COLOR=#800000]all [/COLOR][/FONT][/COLOR][COLOR=#800000][FONT=georgia]things are [/FONT][/COLOR][COLOR=#006600][FONT=georgia]possible[/FONT][/COLOR][/SIZE][/B][B][FONT=Tahoma]
    [/FONT][/B][/CENTER]
    [CENTER][B][FONT=Tahoma] [IMG]http://forum.exceliran.com/attachment.php?attachmentid=5334&d=1419428336[/IMG]
    [/FONT][/B][SIZE=1][FONT=Tahoma][B][FONT=Tahoma]
    [/FONT][/B][/FONT][/SIZE]
    [/CENTER]

    کامنت

    • حسام بحرانی

      • 2013/09/29
      • 2065
      • 72.00

      #3
      Print_Hidden

      به این دستور نگاه کنید شاید کمکتون کنه:
      کد PHP:
      Sub Print_Hidden()
         
      Dim Sht As Worksheet
         Application
      .ScreenUpdating False
         
      For Each Sht In Sheets(Array("sheet2"))
            
      Sht.Visible True
            Sht
      .PrintOut Copies:=1Collate:=True
            Sht
      .Visible False
         Next Sht
         Application
      .ScreenUpdating True
      End Sub 
      موفق باشید.
      فایل های پیوست شده
      [CENTER][B][SIZE=5][COLOR=#006600][FONT=georgia][COLOR=#800000]!With [/COLOR][/FONT][/COLOR][COLOR=#006600][FONT=georgia]God [/FONT][/COLOR][COLOR=#006600][FONT=georgia][COLOR=#800000]all [/COLOR][/FONT][/COLOR][COLOR=#800000][FONT=georgia]things are [/FONT][/COLOR][COLOR=#006600][FONT=georgia]possible[/FONT][/COLOR][/SIZE][/B][B][FONT=Tahoma]
      [/FONT][/B][/CENTER]
      [CENTER][B][FONT=Tahoma] [IMG]http://forum.exceliran.com/attachment.php?attachmentid=5334&d=1419428336[/IMG]
      [/FONT][/B][SIZE=1][FONT=Tahoma][B][FONT=Tahoma]
      [/FONT][/B][/FONT][/SIZE]
      [/CENTER]

      کامنت

      • behnamsa8309

        • 2019/12/03
        • 5
        • 24.00

        #4
        ارسال سوال

        باسلام و تشکر از حسن توجه مهندس بحرانی عزیز به سوالات و ارائه پاسخهای کاربردی ایشان
        مهندس عزیز فرمولی که واسم ارسال کردین فکر می کنم به کارم بیاد حالا یه زحمت دیگه واستون دارم
        اولا می خوام هنگام چاپ Print Preview رو نشون بده
        دوما می خوام از شیت پنهان شده فقط محدوده خاصی پرینت بشه مثلا b1:q20 که نمی دونم باید در کجای فرمول زبر که خودتون زحمتش رو کشیدن تایپ کنم . اگه زحمتی نیست فرمول جدیدی که این دو نکته رو هم داشته باشه واسم بفرستین که دنیا ممنون و سپاسگزارم . موفق و شادمان باشید
        کد PHP:
        Sub Print_Hidden()
           
        Dim Sht As Worksheet
           Application
        .ScreenUpdating False
           
        For Each Sht In Sheets(Array("sheet2"))
              
        Sht.Visible True
              Sht
        .PrintOut Copies:=1Collate:=True
              Sht
        .Visible False
           Next Sht
           Application
        .ScreenUpdating True
        End Sub 
        Last edited by حسام بحرانی; 2019/12/06, 20:50. دلیل: قرار دادن کد در تگ

        کامنت

        • behnamsa8309

          • 2019/12/03
          • 5
          • 24.00

          #5
          باسلام ،دوستان مشکل پرینت گرفتن بنده از محدوده خاص از شیتی که شیت پنهان شده هنوز حل نشده ضمن تشکر از توجه آقای بحرانی عزیز که سوال اول بنده رو پاسخ دادند جهت حل مشکل این حقیر سوال خودم رو اینطور ادامه می دم . من یه به برنامه برای انتخاب واحد دبیرستان درست کردم که دارای یازده شیت است و با ماکرو نویسی بجای شیتها از دکمه ها استفاده کردم بدین صورت که بقیه شیتها پنهان بشن ، حالا می خوام از یکی از شیتها با دکمه ای که بنام print نام گذاری کردم ، فرم انتخاب واحد رو از شیتی که اسم اون شیت هم printگذاشتم و hideهم هست محدوده خاصی از اون رو مثلا b1:q20 رو چاپ کنم . دوستان عزیز اگه فرمولش رو برام بفرستین ممنون میشم . موفق و پایدار باشید.

          کامنت

          • حسام بحرانی

            • 2013/09/29
            • 2065
            • 72.00

            #6
            PrintPreview

            سلام دوست عزیز
            از این کد استفاده کنید شاید پاسختون رو بده:
            کد PHP:
            Sub Print_Hidden()
               
            Dim Sht As Worksheet
               Application
            .ScreenUpdating False
               
            For Each Sht In Sheets(Array("print"))
                  
            Sht.Visible True
                  Sht
            .PrintPreview
                  Sht
            .PageSetup.PrintArea "B1:Q20"
                  
            Sht.Visible False
               Next Sht
               Application
            .ScreenUpdating True
            End Sub 
            درصورتی که پاسخ رو دریافت کردید تاپیک رو
            حل شده کنید درغیر اینصورت عنوان کنید. قطعاً دوستان من که مهارت بیشتری در VBA دارند شما را بهتر راهنمایی می کنند.
            موفق باشید.
            فایل های پیوست شده
            [CENTER][B][SIZE=5][COLOR=#006600][FONT=georgia][COLOR=#800000]!With [/COLOR][/FONT][/COLOR][COLOR=#006600][FONT=georgia]God [/FONT][/COLOR][COLOR=#006600][FONT=georgia][COLOR=#800000]all [/COLOR][/FONT][/COLOR][COLOR=#800000][FONT=georgia]things are [/FONT][/COLOR][COLOR=#006600][FONT=georgia]possible[/FONT][/COLOR][/SIZE][/B][B][FONT=Tahoma]
            [/FONT][/B][/CENTER]
            [CENTER][B][FONT=Tahoma] [IMG]http://forum.exceliran.com/attachment.php?attachmentid=5334&d=1419428336[/IMG]
            [/FONT][/B][SIZE=1][FONT=Tahoma][B][FONT=Tahoma]
            [/FONT][/B][/FONT][/SIZE]
            [/CENTER]

            کامنت

            • behnamsa8309

              • 2019/12/03
              • 5
              • 24.00

              #7
              حل شدن مشکل

              نوشته اصلی توسط حسام بحرانی
              سلام دوست عزیز
              از این کد استفاده کنید شاید پاسختون رو بده:
              کد PHP:
              Sub Print_Hidden()
                 
              Dim Sht As Worksheet
                 Application
              .ScreenUpdating False
                 
              For Each Sht In Sheets(Array("print"))
                    
              Sht.Visible True
                    Sht
              .PrintPreview
                    Sht
              .PageSetup.PrintArea "B1:Q20"
                    
              Sht.Visible False
                 Next Sht
                 Application
              .ScreenUpdating True
              End Sub 
              درصورتی که پاسخ رو دریافت کردید تاپیک رو
              حل شده کنید درغیر اینصورت عنوان کنید. قطعاً دوستان من که مهارت بیشتری در VBA دارند شما را بهتر راهنمایی می کنند.
              موفق باشید.
              با تشکر از مهندس بحرانی عزیز امیدوارم در کلیه امور زندگی موفق و سربلند باشید

              کامنت

              چند لحظه..