Ted
Ted

Reputation: 1760

Convert C# code to VBscript

I have next 'while' statement which I should re-write on VB:

    while (--number >= 0)
    {
        result = (char)('A' + number % lettersNumbers) + result;
        number /= lettersNumbers;
    }

I've tried something like this:

While number >= 0
    number = number - 1
    result = Chr(Chr("A") + number Mod lettersNumbers) & result
    number = number / lettersNumbers
WEnd

But unfortunately it doesn't works. I am getting next error:

Type mismatch: '[string: "A"]' So how to correct this code to make it work on VBscript?

Upvotes: 0

Views: 1502

Answers (2)

user8295094
user8295094

Reputation:

While number >= 0
    number = number - 1
    result = Chr(Asc("A") + number Mod lettersNumbers) & result
    number = number / lettersNumbers
WEnd

You need to get the character code of "A":

Upvotes: 2

Romano Zumbé
Romano Zumbé

Reputation: 8099

You need to get the character code of "A":

While number >= 0
    number = number - 1
    result = Chr(Asc("A") + number Mod lettersNumbers) & result
    number = number / lettersNumbers
WEnd

The function Asc returns the Ascii code for a given letter. in your original you use a charcater (char) in a calculation. C# implicitly converts char to int.

Upvotes: 5

Related Questions