Alteryx Designer Desktop Discussions

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

Generate Rows: increment letters like numbers

11 - Bolide

Hello everybody!


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



























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?

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.