![]() |
Creating a static function
I'm not sure if i'm doing something that doesn't work, but why can't i seem
to get a static function to work the same as a static sub. If i run the following code a few times, and i always use the number 1 as x, i would think that the function should retain the previous value of "test", and then just increment it by 1, but this isn't happening. "Test" always returns as 1. I want this to work as a counter that other subs will pull from. Static Function test(x As Integer) As Integer test = test + x End Function thanks |
Creating a static function
There's a good example in the VBA Help.
Static applies to variables, not to Functions. -- Tim Williams Palo Alto, CA "Brite" wrote in message ... I'm not sure if i'm doing something that doesn't work, but why can't i seem to get a static function to work the same as a static sub. If i run the following code a few times, and i always use the number 1 as x, i would think that the function should retain the previous value of "test", and then just increment it by 1, but this isn't happening. "Test" always returns as 1. I want this to work as a counter that other subs will pull from. Static Function test(x As Integer) As Integer test = test + x End Function thanks |
Creating a static function
Hi Brite -
A preserved variable can't have the same name as the function. In other words, all variables are preserved in a Static function (as you noted) except for the variable bearing the function's name. Try it this way: Static Function test(x As Integer) As Integer test = stat + x stat = test End Function -- Jay "Brite" wrote: I'm not sure if i'm doing something that doesn't work, but why can't i seem to get a static function to work the same as a static sub. If i run the following code a few times, and i always use the number 1 as x, i would think that the function should retain the previous value of "test", and then just increment it by 1, but this isn't happening. "Test" always returns as 1. I want this to work as a counter that other subs will pull from. Static Function test(x As Integer) As Integer test = test + x End Function thanks |
Creating a static function
My mistake - does also apply to procedure declaration
Tim "Tim Williams" <timjwilliams at gmail dot com wrote in message ... There's a good example in the VBA Help. Static applies to variables, not to Functions. -- Tim Williams Palo Alto, CA "Brite" wrote in message ... I'm not sure if i'm doing something that doesn't work, but why can't i seem to get a static function to work the same as a static sub. If i run the following code a few times, and i always use the number 1 as x, i would think that the function should retain the previous value of "test", and then just increment it by 1, but this isn't happening. "Test" always returns as 1. I want this to work as a counter that other subs will pull from. Static Function test(x As Integer) As Integer test = test + x End Function thanks |
All times are GMT +1. The time now is 01:36 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com