VB and Excel Programming

Please support our VB.NET advertiser: Intel Parallel Studio Home
Reply

Join Date: Mar 2004
Posts: 1,620
Reputation: kc0arf is a jewel in the rough kc0arf is a jewel in the rough kc0arf is a jewel in the rough 
Solved Threads: 51
Team Colleague
kc0arf kc0arf is offline Offline
Posting Virtuoso

VB and Excel Programming

 
0
  #1
Aug 16th, 2004
Hello,

This might be in the wrong place. My question pertains to MS Excel, and using Visual Basic for Applications (VBA).

We have a user that would like to hide one of her worksheets within a workbook. She would like the sheet to be securely hidden.

I found this piece of code:

  1. Sub HideSheet()
  2. Sheets("Sheet2").Visible = xlVeryHidden
  3. End Sub

and the sheet does disappear.

There are two problems:

1) I don't like the Macro warning. Hints that something might be up, and if they disable the macros, then this visibility thing does not work.

2) Anyone can go into the Visual Basic for Applications menu, and see all of the worksheets in broad daylight. They can highlight the hidden sheet, and go to the properties, and unhide it with their mouse. Data revealed.


I am going to discuss with the user the wisdom of trying to do this. If she wants to go ahead though, and do "security through obscurity", then that is her call. What I want to be sure of though is that there isn't any other way to place a password on the VBA menu, or perhaps prevent the sheets from displaying on the VBA menu.

If anyone has ideas, please let me know. I am not very proficient in VBA, so please spell out the steps taken.

Thanks,

Christian
Reply With Quote Quick reply to this message  
Join Date: Jul 2004
Posts: 200
Reputation: mnemtsas is an unknown quantity at this point 
Solved Threads: 1
mnemtsas's Avatar
mnemtsas mnemtsas is offline Offline
Junior Poster

Re: VB and Excel Programming

 
0
  #2
Aug 16th, 2004
Originally Posted by kc0arf
Hello,

This might be in the wrong place. My question pertains to MS Excel, and using Visual Basic for Applications (VBA).

We have a user that would like to hide one of her worksheets within a workbook. She would like the sheet to be securely hidden.

I found this piece of code:

  1. Sub HideSheet()
  2. Sheets("Sheet2").Visible = xlVeryHidden
  3. End Sub

and the sheet does disappear.

There are two problems:

1) I don't like the Macro warning. Hints that something might be up, and if they disable the macros, then this visibility thing does not work.

2) Anyone can go into the Visual Basic for Applications menu, and see all of the worksheets in broad daylight. They can highlight the hidden sheet, and go to the properties, and unhide it with their mouse. Data revealed.


I am going to discuss with the user the wisdom of trying to do this. If she wants to go ahead though, and do "security through obscurity", then that is her call. What I want to be sure of though is that there isn't any other way to place a password on the VBA menu, or perhaps prevent the sheets from displaying on the VBA menu.

If anyone has ideas, please let me know. I am not very proficient in VBA, so please spell out the steps taken.

Thanks,

Christian
You cannot disable the macro warning with a macro. No way around it, after all if there was then there would be no point it being there.

Second question, you can password protect your vba project so even if someone does go the the vba menu they will not see the modules or worksheets. Look under Tools->VBA Project properties from the VBA window.

Thirdly the code you've written above only needs to be used once. Why not set the worksheet to xlVeryHidden before you distribute it? You don't need to hide it every time you open the file. Once you've set it to xlVeryHidden and saved the file it's 'very hidden' until someone else makes it visible from another bit of vba code.

Hope that helps.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC