![]() |
What does # mean in front of IF statements
I have a couple macros that run on PC and Macs. I learned that I have
to put a "#" in front of the file access code to make the macro utilize the appropriate OS commands: Example: #If Win32 Then LoadFileName = Application.GetOpenFilename(FileFilter) #ElseIf Mac Then LoadFileName = Application.GetOpenFilename() #End If Can someone explain why the # is necessary and what it means? Thanks |
What does # mean in front of IF statements
That means conditional statements.
In VBA, when the code is compiled, the #If statement is checked , and if true (a windows system in the example) it compiles one command, if not, it compiles the other. It is a very useful method to allow your code to be platform, or version, independent. -- HTH Bob Phillips (replace xxxx in the email address with gmail if mailing direct) wrote in message ups.com... I have a couple macros that run on PC and Macs. I learned that I have to put a "#" in front of the file access code to make the macro utilize the appropriate OS commands: Example: #If Win32 Then LoadFileName = Application.GetOpenFilename(FileFilter) #ElseIf Mac Then LoadFileName = Application.GetOpenFilename() #End If Can someone explain why the # is necessary and what it means? Thanks |
What does # mean in front of IF statements
I didn't realize that VBA compiles on-the-fly before it runs. In VB,
you have to specifically compile the code. Thanks for the explanation. That is handy for cross-platform application. So are the "win32" and "mac" just system variables that each OS sets in the VBA code? And now a new problem... my conditional statements are just being ignored. They were working fine, but now when it gets to the #IF, it just skips to the next section of code and doesn't even check the condition. It appears to only be a problem on the one computer I program on. Any ideas what happened? |
All times are GMT +1. The time now is 06:11 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com