You can use the Eval function to do this, but I suggest not using Eval. It
makes for the most confusing and sloppy code you'll ever see.
How about using an array?
Dim featured_products(11) ''vbscrip arrays are zero based
If your storing your months in your database as "jan", "feb", "mar", and so
on, you'll have to deal with them with a select Case or some other thing.
Or, use a dictionary object or something. Let's try with a dictionary
object first.
Dim oDict
oDict.Add "jan", 0
oDict.Add "feb", 1
oDict.Add "mar", 2
oDict.Add "apr", 3
oDict.Add "may", 4
oDict.Add "jun", 5
oDict.Add "jul", 6
oDict.Add "aug", 7
oDict.Add "sep", 8
oDict.Add "oct", 9
oDict.Add "nov", 10
oDict.Add "dec", 11
While Not r.EOF
If r("status") = "sold" Then
featured_products(oDict(r("month"))) = "Sold out"
Else
''''etc.
My mind has been sleeping all week, so if this makes no sense or if I make
no sense, accept my apologies.
Ray at work
[quoted text, click to view] "Ken Halley" <ken@alpacanation.com> wrote in message
news:ORf0fDKpDHA.2592@TK2MSFTNGP10.phx.gbl...
> How does one refer to a variable name using a variable within a variable
> name??? For example, I want to perform a SQL query and use the results of
> the query to determine which variable to assign a value to. Let's say
I've
> dimmed 12 variables based on the months called "featured_x_product" where
x
> is the month. I'd like to refer to the variable with something
> like: featured_" & R("month") & "_product where R("month") is the from the
> current row in the db. I don't know the correct syntax or method for
doing
> so. A full example is provided below. Thanks in advance for you help!
>
> dim featured_jan_product
> dim featured_feb_product
> dim featured_mar_product
> dim featured_apr_product
> ...
>
> SELECT status, month from products where year='2004' AND
> page='featured_products'
>
> While not R.EOF
> If R("status") = "sold" Then
> featured_" & R("month") & "_product = "Sold Out!" // (choose the
> variable based on the "month" value in the current row)
> Else
> featured_" & R("month") & "_product = "Buy Now!"
> End If
> R.MoveNext
> Wend
>
>
>
>