پنهان کردن شیتها

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • kazem1359

    • 2018/06/08
    • 331
    • 39.00

    پرسش پنهان کردن شیتها

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

    لطفا راهنمایی نمایید ممنون
  • hasa2

    • 2015/01/09
    • 73
    • 56.00

    #2
    کدهای زیر را در This Workbook قرار دهید :

    کد:
    Private Sub Workbook_Open()
       
    Sheet1.Visible = xlSheetVeryHidden
    Sheet2.Visible = xlSheetVeryHidden
    
    End Sub
    
    
    
    
    
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    
    
    
    
    Sheet1.Visible = xlSheetVeryHidden
    Sheet2.Visible = xlSheetVeryHidden
    
    
    
    End Sub

    سپس برای نمایش هرکدام از شیت ها در VBA از کد زیر (با توجه به نام شیت در VBA) استفاده کنید :

    کد:
    Sheet1.Visible = xlSheetVisible

    کامنت

    • kazem1359

      • 2018/06/08
      • 331
      • 39.00

      #3
      ممنون تشکر

      کامنت

      • s.313

        • 2019/02/05
        • 70

        #4
        نوشته اصلی توسط hasa2
        کدهای زیر را در This Workbook قرار دهید :

        کد:
        Private Sub Workbook_Open()
           
        Sheet1.Visible = xlSheetVeryHidden
        Sheet2.Visible = xlSheetVeryHidden
        
        End Sub
        
        
        
        
        
        Private Sub Workbook_BeforeClose(Cancel As Boolean)
        
        
        
        
        Sheet1.Visible = xlSheetVeryHidden
        Sheet2.Visible = xlSheetVeryHidden
        
        
        
        End Sub

        سپس برای نمایش هرکدام از شیت ها در VBA از کد زیر (با توجه به نام شیت در VBA) استفاده کنید :

        کد:
        Sheet1.Visible = xlSheetVisible
        سلام. میشه بگید چرا من هر کدی رو وارد محیط vba میکنم اعمال نمیشه؟ وقتی هم که فایلمو میبندم و دوباره باز میکنم کدها دیگه نیستن!!

        کامنت

        • حسام بحرانی

          • 2013/09/29
          • 2065
          • 72.00

          #5
          سلام
          فایل هایی که دارای کد
          vba هسند را می بایست با فرمت xlsm ذخیره کنید.
          موفق باشید.
          [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]

          کامنت

          • kazem1359

            • 2018/06/08
            • 331
            • 39.00

            #6
            سلام ببخشید بنده در This Workbook کد دیگری هم بابت بسته شدن اکسل دارم و وقتی کد پنهان سازی شیت را قرار میدم خطا میده و اجرا نمیشه چه باید کرد . ممنون

            کامنت

            • hasa2

              • 2015/01/09
              • 73
              • 56.00

              #7
              شما باید این کدها رو هم در بین اونها قرار بدید.
              اگر متوجه نشدید ؛ کدی که در حال حاضر تو بخش this workbook دارید رو اینجا قرار بدید تا راهنمایی تون کنم

              کامنت

              • kazem1359

                • 2018/06/08
                • 331
                • 39.00

                #8
                سلام دو کد زیر هستش:

                Private Sub Workbook_Open()

                Sheet1.Visible = xlSheetVeryHidden
                Sheet2.Visible = xlSheetVeryHidden

                End Sub





                Private Sub Workbook_BeforeClose(Cancel As Boolean)




                Sheet1.Visible = xlSheetVeryHidden
                Sheet2.Visible = xlSheetVeryHidden



                End Sub


                و



                Private Sub Workbook_BeforeClose(Cancel As Boolean)

                ThisWorkbook.Saved = True
                Application.Quit

                End Sub

                کامنت

                • حسام بحرانی

                  • 2013/09/29
                  • 2065
                  • 72.00

                  #9
                  این دو کد رو امتحان کنید و نتیجه رو اعلام کنید:
                  کد PHP:
                  Private Sub Workbook_Open()
                     
                  Sheet1.Visible xlSheetVeryHidden
                     Sheet2
                  .Visible xlSheetVeryHidden
                  End Sub 
                  و
                  کد PHP:
                  Private Sub Workbook_BeforeClose(Cancel As Boolean)
                  ThisWorkbook.Saved True
                  Application
                  .Quit
                  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]

                  کامنت

                  • kazem1359

                    • 2018/06/08
                    • 331
                    • 39.00

                    #10
                    سلام ممنون عمل کرد ولی یک مشکل پیش میاد اگر برای یک شیت ماکرو داشته باشیم که متصل به دیگر شیتها باشه و با اجرا کد داده شده ماکروها عمل نمی کنه ایا میشه این مشکل را هم برطرف کرد.

                    کامنت

                    • s.313

                      • 2019/02/05
                      • 70

                      #11
                      نوشته اصلی توسط حسام بحرانی
                      سلام
                      فایل هایی که دارای کد
                      vba هسند را می بایست با فرمت xlsm ذخیره کنید.
                      موفق باشید.
                      متشکرم

                      کامنت

                      • kazem1359

                        • 2018/06/08
                        • 331
                        • 39.00

                        #12
                        سلام استاد عزیر فایل زیر را بررسی کنید بنده کد پنهان سازی شیتها را قرار داده ام و طی بحث قبلی وقتی می خوام ماکرو دکمه ورود اجرا بشه خطا میده لطفا راهنمایی کنید

                        کامنت

                        • mokaram
                          مدير تالار اکسل و بانک اطلاعاتی

                          • 2011/02/06
                          • 1805
                          • 74.00

                          #13
                          دوست عزیز شما قبل از انتخاب شیت ، باید اون شیت را از حالت Hidden دربیارید بنابراین قطعه کد زیر را به ابتدای کد ورودتون اضافه کنید :

                          کد PHP:
                              Sheets("Sheet10").Visible xlSheetVisible 
                          [CENTER][IMG]http://forum.exceliran.com/signaturepics/sigpic909_10.gif[/IMG]
                          [/CENTER]

                          کامنت

                          چند لحظه..