schardt679
Board Regular
- Joined
- Mar 27, 2021
- Messages
- 58
- Office Version
- 365
- 2010
- Platform
- Windows
- Mobile
- Web
ATOCODES returns an array of individual character codes from a one dimensional array of text strings with an option to remove non-printing characters.
Horizontal ranges spill down rows and vertical ranges spill across columns.
Calls ATOCHARS.
Other functions on minisheet: AFORMULATEXT.
Horizontal ranges spill down rows and vertical ranges spill across columns.
Calls ATOCHARS.
Other functions on minisheet: AFORMULATEXT.
Excel Formula:
=LAMBDA(Array,Remove_Nonprinting,
LET(Arr, Array,
RemNon?, Remove_Nonprinting,
A1D?, AONEDIM(Arr),
AScan, AND(A1D?<>{"H","V"}),
Horiz?, A1D?="H",
NonScan, AND(RemNon?<>{1,0}),
NonMSG, "Nonprinting=1,0",
ERRORS, IFS(AScan, A1D?, NonScan, NonMSG, 1, 0),
UChars, ATOCHARS(Arr, RemNon?),
UCodes, UNICODE(UChars),
Result, IF((UChars="")+(ISERROR(UChars)), UChars, UCodes),
Return, IF(ERRORS<>0, ERRORS, Result),
Return
)
)
LAMBDA Examples.xlsx | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | |||
1 | ATOCODES | |||||||||||||||||
2 | ||||||||||||||||||
3 | Text | Result | ||||||||||||||||
4 | Hello | 160 | 72 | 101 | 108 | 108 | 111 | 32 | 32 | 32 | 32 | |||||||
5 | ||||||||||||||||||
6 | There! | 84 | 104 | 101 | 114 | 101 | 127 | 33 | ||||||||||
7 | ||||||||||||||||||
8 | #N/A | #N/A | ||||||||||||||||
9 | I am 27. | 73 | 32 | 97 | 109 | 32 | 32 | 32 | 32 | 32 | 50 | 55 | 46 | |||||
10 | ||||||||||||||||||
11 | Data is a vertical array | |||||||||||||||||
12 | Result spills horizontally | |||||||||||||||||
13 | Nonprinting characters aren't removed | |||||||||||||||||
14 | Formula in cell D4☛ =ATOCODES(B4:B9,) | |||||||||||||||||
15 | ||||||||||||||||||
16 | ||||||||||||||||||
17 | ||||||||||||||||||
18 | Text | Result | ||||||||||||||||
19 | Hello | 72 | 101 | 108 | 108 | 111 | ||||||||||||
20 | There! | 84 | 104 | 101 | 114 | 101 | 33 | |||||||||||
21 | ||||||||||||||||||
22 | #N/A | #N/A | ||||||||||||||||
23 | I am 27. | 73 | 32 | 97 | 109 | 32 | 50 | 55 | 46 | |||||||||
24 | ||||||||||||||||||
25 | Data is a vertical array | |||||||||||||||||
26 | Result spills horizontally | |||||||||||||||||
27 | Nonprinting characters aren't removed | |||||||||||||||||
28 | Formula in cell D19☛ =ATOCODES(B19:B23, 1) | |||||||||||||||||
29 | ||||||||||||||||||
30 | ||||||||||||||||||
31 | ||||||||||||||||||
32 | Text | Hello | There! | #N/A | I am 27. | |||||||||||||
33 | ||||||||||||||||||
34 | Result | 160 | 84 | #N/A | 73 | |||||||||||||
35 | 72 | 104 | 32 | |||||||||||||||
36 | 101 | 101 | 97 | |||||||||||||||
37 | 108 | 114 | 109 | |||||||||||||||
38 | 108 | 101 | 32 | |||||||||||||||
39 | 111 | 127 | 32 | |||||||||||||||
40 | 32 | 33 | 32 | |||||||||||||||
41 | 32 | 32 | ||||||||||||||||
42 | 32 | 32 | ||||||||||||||||
43 | 32 | 50 | ||||||||||||||||
44 | 55 | |||||||||||||||||
45 | 46 | |||||||||||||||||
46 | ||||||||||||||||||
47 | Data is a horizontal array | |||||||||||||||||
48 | Result spills vertically | |||||||||||||||||
49 | Nonprinting characters aren't removed | |||||||||||||||||
50 | Formula in cell C34☛ =ATOCODES(C32:G32,) | |||||||||||||||||
51 | ||||||||||||||||||
ATOCODES |
Cell Formulas | ||
---|---|---|
Range | Formula | |
D4:O9 | D4 | =ATOCODES(B4:B9,) |
B14 | B14 | =AFORMULATEXT(D4) |
D19:K23 | D19 | =ATOCODES(B19:B23, 1) |
B28 | B28 | =AFORMULATEXT(D19) |
F32 | F32 | =NA() |
C34:G45 | C34 | =ATOCODES(C32:G32,) |
B50 | B50 | =AFORMULATEXT(C34) |
Dynamic array formulas. |
Upvote
0