Capture Custom View in a Variable

R

Randy

I am writing a procedure to modify custom views. The workbook has a
long list of defined custom views, of which a user could be working in
any one of them. In all likelihood, the changes that I would be
making in my procedure would be to a view that is different than the
one the user is currently working in.

What I want to do is to capture the current custom view selection in a
variable before I switch over to make my changes. That way, when my
procedure terminates, I can switch the view back to the one that the
user was working in without them even noticing that anything happened.

Here is some untested code to explain more specifically:

Sub ChangeCustomView()

dim UsersView as Variant 'or another type if better

set UsersView = 'this is where I am hung up -
'it should be the currently selected view

ActiveWorkbook.CustomViews("Example").Show
Call MakeChanges 'this subroutine would contain the specific
modifications
ActiveWorkbook.CustomViews(UsersView).Show
ActiveWorkbook.Save

End Sub


Thanks for your help.
Randy Eastland
 
R

Rob van Gelder

I don't believe there is a way to determine which Custom View is currently
shown.

If I'm correct and you really can't determine the current Custom View,
here's a trick which might work - untested.

Use some spare rows somewhere (this should work for columns too).
Each row in that range will represent a custom view.
For each view, hide all of those rows except the one representing that view.

You could then check which row is not hidden to find the current custom
view.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top