![]() |
hidden column concern
Hello
I have a wide table (250 columns). The first 4 columns are a frozen pane. When I run any of a series of macros (see a sample below), some columns are hidden while others are shown. I have 2 concerns: a) When I run the macro, the screen flickers for a second during execution. No big deal, but I'd prefer it to not do this. Is my code inefficient, or is there some way to prevent this? b) All of the macros work in any combination, but sometimes I can't see the non-hidden columns immediately because they are too far off to the left. I can fix this by moving the slider on the bottom right of the screen all the way left. How can I get the code to do this? Thank you in advance Sub ShowTest_A_Results() Dim TableEndCol As Integer TableEndCol = 250 For N = 5 To TableEndCol Select Case N Case 5 To 27, 32 To 68, 75 To 123, 128, 130 To TableEndCol Columns(N).Hidden = True Case Else Columns(N).Hidden = False End Select Next End Sub |
hidden column concern
You can add:
application.screenupdating = false 'your code that does the work for N = ... ... next N application.screenupdating = true b. application.goto range("A1"),scroll:=true or range("a1").select Bri wrote: Hello I have a wide table (250 columns). The first 4 columns are a frozen pane. When I run any of a series of macros (see a sample below), some columns are hidden while others are shown. I have 2 concerns: a) When I run the macro, the screen flickers for a second during execution. No big deal, but I'd prefer it to not do this. Is my code inefficient, or is there some way to prevent this? b) All of the macros work in any combination, but sometimes I can't see the non-hidden columns immediately because they are too far off to the left. I can fix this by moving the slider on the bottom right of the screen all the way left. How can I get the code to do this? Thank you in advance Sub ShowTest_A_Results() Dim TableEndCol As Integer TableEndCol = 250 For N = 5 To TableEndCol Select Case N Case 5 To 27, 32 To 68, 75 To 123, 128, 130 To TableEndCol Columns(N).Hidden = True Case Else Columns(N).Hidden = False End Select Next End Sub -- Dave Peterson |
hidden column concern
To stop the flicker use Application.ScreenUpdating in your code.
To display the hidden columns use Sendkeys to go to the home position. I modified your code to show the needed changes. Sub ShowTest_A_Results() Dim TableEndCol As Integer Application.ScreenUpdating = False TableEndCol = 250 For N = 5 To TableEndCol Select Case N Case 5 To 27, 32 To 68, 75 To 123, 128, 130 To TableEndCol Columns(N).Hidden = True Case Else Columns(N).Hidden = False End Select Next Application.SendKeys ("{Home}") Application.ScreenUpdating = True End Sub |
hidden column concern
Why couldn't I have thought of that! Thanks to both.
Bri |
All times are GMT +1. The time now is 05:04 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com