We’ve extended Inspire Early Bird Pricing until March 1. Register now and enjoy 20% off conference passes and 10% off training passes. P.S. Don’t forget to bring friends! When you sign up for five or more tickets, you get an extra 20% discount on conference passes. Learn more now.

Alteryx Designer Desktop Discussions

Find answers, ask questions, and share expertise about Alteryx Designer Desktop and Intelligence Suite.
SOLVED

Generate Rows: increment letters like numbers

Federica_FF
11 - Bolide

Hello everybody!

 

I'm using the Generate Rows to increment letters like numbers (example: D+1=E).

 

Cattura.PNG

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I used the formula: CharFromInt(CharToInt([Alph increm])+1)

 

CharToInt([Alph increm])+1) --> Converts the letter into the relative number/code and it adds 1 (Letter A = 65 // 65+1=66)

CharFromInt --> Converts again the number/code+1 into the relative letter (66=B)

 

And it perfectly works, but it creates 26 rows of uppercase letters (from A to Z) plus 26 rows of lowercase letters (from a to z) and a couple of rows of brakets, underscore, etc....

 

If I change my Input tool replacing A and Z with a and z lowercase, it returns me only 26 letters.

 

I know I can just input a-z lowercase and make the whole expression in the generate rows tool uppercase, or I can also input A-Z and then filter with a regex that tests if it's uppercase or not.

 

But why does the generate row tool act this way?

 

Why from A to Z means both upper and lowercase letters plus [\]^_` and form a to z only means lowercase letter?

 

Any idea, explanation?

1 REPLY 1
jdunkerley79
ACE Emeritus
ACE Emeritus

My guess is that it is doing a case insensitive comparison.

 

Z <= Z so moves onto the next character, / <= z and so it continues until it reaches the lowercase block.

 

Change the conditional expression to be based on the Ascii code:

CharToInt([Alph increm]) <= CharToInt([End])

And you will get what you need.

Labels