WR

WR(w,c,[r],[i])
w
word
c
constant arrays (in our example cs for snake lookup, cd for diagonal lookup)
[r]
always omitted, carries the final result
[i]
always omitted, carries nr. iterations, depending of LEN(w)

Set of functions and study for solving the Word Maze Excel Challenge

Xlambda

Well-known Member
Joined
Mar 8, 2021
Messages
860
Office Version
  1. 365
Platform
  1. Windows
WR: Word maze Results challenge. Please do see latest (26-Oct-21) YT video of MrExcel Solving Word Search With Excel (FMWC) - 2439
This is a compact set of functions that can solve all lookup scenarios.
Defined names: ar, sample array ( A1:T15 ) ; rw, nr. rows of sample array (15) (width is fixed to 20) ; cs, constant array values for "snake" lookup {-1,1, 20,-20} ; cd, constant array values for "diagonal" lookup {-21,-19,19,21}

WL(l)=LAMBDA(l,LET(x,IF(ar=l,1),y,IF(ar="?",1),z,IF(x+y,1),v,IF(z,SEQUENCE(rw,20)),SMALL(v,SEQUENCE(COUNT(v)))))
WA(a,c)=LAMBDA(a,c,LET(x,a-c,y,IF(x>0,x),UNIQUE(SMALL(y,SEQUENCE(COUNT(y ))))))
WB(a,b)=LAMBDA(a,b,FILTER(a,IFNA(XMATCH(a,b,,2),0)))

WR(w,c,[r],[i ])=LAMBDA(w,c,[r],[i ],LET(n,IF(i,i,LEN(w)),x,MID(w,n,1),y,MID(w,n-1,1),z,IF(AND(r=0),WA(WL(x),c),WA(r,c)),IF(n=1,r,WR(w,c,WB(z,WL(y )),n-1))))
Last one WR is !! recursive !! Define the names, then the functions and we are good to go. (Gaps in [i ] are to keep the text no to turn italics)
Will come back with the "concept" explanation asap.
Excel Formula:
=LAMBDA(w,c,[r],[i ],LET(n,IF(i,i,LEN(w)),x,MID(w,n,1),y,MID(w,n-1,1),z,
     IF(AND(r=0),WA(WL(x),c),WA(r,c)),IF(n=1,r,WR(w,c,WB(z,WL(y)),n-1))
    )
)
WORD MAZE.xlsx
ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAK
1Z1SGPE2THEDIZBANTSNSdefined names
2SP?AKIWK1FHVZG2IEKAXar: A1:T15 (sample array)
3?ITQE?LASIXQJNSX4TJKrw: 15 (width is always 20)
4LENJFXA4TIKNSBX1DJCPcs: {-1,1,20,-20} (constant array for "snake" type lookup
5GDL33DMVLTGK?CU3OQOOcd: {-21,-19,19,21} (constant array for "diagonal" type lookup
6IAIUVGYLU?IEP3WGKBTP
74APAU4CZVFFFAFIPAXTT"snake" lookup"diagonal" lookup
8HN?4GCKS4IDRHNNAJDNS
9EC3XCODBVQOYJERGSKAH=WR("snake",cs)=WR("diagonal",cd)
10EX1Z?PNI3OWCCN2UREGJ382
11EONMEVKABEPFLQNZ?EW318
12KAN?AIBKLG24?N?ZBNQE20=WR("advance",cd)
13SMO4YFBBRE?DNE1ADJM416067
14CFX43TY1ZJNIWUZ3OWHM224
15TYD2YZSUDVVF4OZEKA?S300
16
17=SEQUENCE(rw,20)=WR("difficult",cs)
181234567891011121314151617181920151
192122232425262728293031323334353637383940
204142434445464748495051525354555657585960=WR("winner",cs)
216162636465666768697071727374757677787980115
2281828384858687888990919293949596979899100273
23101102103104105106107108109110111112113114115116117118119120
24121122123124125126127128129130131132133134135136137138139140
25141142143144145146147148149150151152153154155156157158159160Note: I left the results in "sequence numbers" representation on purpose,
26161162163164165166167168169170171172173174175176177178179180to be much easier to visualize the results.
27181182183184185186187188189190191192193194195196197198199200To get them to "range" representation we can use PR(a) (print results)
28201202203204205206207208209210211212213214215216217218219220PR(a)=LAMBDA(a,LET(x,QUOTIENT(a-1,20)+1,y,MOD(a-1,20)+1,ADDRESS(x,y,4)))
29221222223224225226227228229230231232233234235236237238239240
30241242243244245246247248249250251252253254255256257258259260
31261262263264265266267268269270271272273274275276277278279280C1B5
32281282283284285286287288289290291292293294295296297298299300R1
33T1G4
34Important Note: Covered here only snake and diagonal search, for being the more complicated ones.T8
35Anyhow, to cover the rest of them the only thing we have to do is defining new constant arraysD12
36cs (constant snake) {-1,1,20,-20}T15
37cd (constant diagonal) {-21,-19,19,21}
38For example, for horizontal lookup we have to defineK8
39ch {-1,1} and for vertical cv: {-20,20}
40O6
41M14
42
43
WM snake diagonal
Cell Formulas
RangeFormula
W9,W20,W17,A17,AC12,AC9W9=FORMULATEXT(W10)
W10:W15W10=WR("snake",cs)
AC10AC10=WR("diagonal",cd)
AC13AC13=WR("advance",cd)
A18:T32A18=SEQUENCE(rw,20)
W18W18=WR("difficult",cs)
W21:W22W21=WR("winner",cs)
W31:W36W31=PR(W10#)
AC31AC31=PR(AC10)
AC33,W38AC33=PR(AC13)
W40:W41W40=PR(W21#)
Dynamic array formulas.
Named Ranges
NameRefers ToCells
ar='WM snake diagonal'!$A$1:$T$15AC13, AC10, W21, W18, W10
 
Upvote 0
One of the approaches for solving the diagonal lookup was to "level" the diagonals in rows format.
In case that extracting diagonals could be useful for other tasks also, I thought it deserves a look.

Book1.xlsx
ABCDEFGHIJKLMNOPQRSTUVWXYZAA
1Extracting diagonals horizontally.
2There are 2 "inclinations" of diagonals, let's call them left and right.
3Left one has first element top left corner of an array
4Right one has first element, top right corner of an array
5
6123321
7234432
8345543
9456654
10leftright
11for an array r x c nr. of diagonals d, left or right will be d=r+c-1, so for 4x3 d=4+3-1=6 diagonals
12Concept left diagonal
13To get diagonals by row let's lower each column
14row indexes for an array 5x4with this column pattern:pattern row indexes for diagonal array 8x4
15=QUOTIENT(SEQUENCE(5,4)-1,4)+10123=SEQUENCE(8)-(SEQUENCE(,4)-1)
1611111pattern formula:10-1-2
17222221=SEQUENCE(,4)-1210-1
18333332101233210
19444443214321
20555554325432
215436543
22d=5+4-1=8547654
2358765
24
25we have to exclude values<=0
26and vales >5 initial nr. of rowssample array 5x4Note: clms index unchanged
27=(S16#>0)*(S16#<=5)*S16#=SEQUENCE(5,4)=IF(A28#,INDEX($I$28#,A28#,SEQUENCE(,4)),"")
28100012341
292100567852
3032109101112963
31432113141516131074
325432171819201714118
330543181512
3400541916
35000520
36
37Concept right diagonal.
38the only thing we have to change is the column pattern from 0,1,2,3 to 3,2,1,0pattern row indexes
39=SORT(I15:L15,,-1,1)=SEQUENCE(8)-H40#
403210-2-101
41-1012
42=(S40#>0)*(S40#<=5)*S40#=IF(A43#,INDEX($I$28#,A43#,SEQUENCE(,4)),"")0123
430001 41234
440012382345
45012327123456
4612341611164567
47234551015205678
48345091419
4945001318
50500017
51
Sheet2
Cell Formulas
RangeFormula
A15,H42,A42,S39,H39,O27,I27,A27,N17,S15A15=FORMULATEXT(A16)
A16:D20A16=QUOTIENT(SEQUENCE(5,4)-1,4)+1
S16:V23S16=SEQUENCE(8)-(SEQUENCE(,4)-1)
N18:Q18N18=SEQUENCE(,4)-1
A28:D35A28=(S16#>0)*(S16#<=5)*S16#
I28:L32I28=SEQUENCE(5,4)
O28:R35O28=IF(A28#,INDEX($I$28#,A28#,SEQUENCE(,4)),"")
H40:K40H40=SORT(I15:L15,,-1,1)
S40:V47S40=SEQUENCE(8)-H40#
A43:D50A43=(S40#>0)*(S40#<=5)*S40#
H43:K50H43=IF(A43#,INDEX($I$28#,A43#,SEQUENCE(,4)),"")
Dynamic array formulas.
 
The function ADG Array DiaGonal ADG(a,[lr])
a: array
[lr}: left/right argument; 0 or omitted "left" extraction, 1 or <>0 , "right" extraction

Excel Formula:
=LAMBDA(a,[lr],LET(r,ROWS(a),c,COLUMNS(a),sc,SEQUENCE(,c),d,r+c-1,s,SEQUENCE(d),
    pl,sc-1,pr,SORT(pl,,-1,1),x,IF(lr,s-pr,s-pl),y,(x>=0)*(x<=r)*x,
    IF(y,INDEX(IF(a="","",a),y,sc),"")
    )
)
Book1.xlsx
ABCDEFGHIJKLMNOPQRST
1Function ADG(a,[lr]) Array Diagonal
2a: array
3[lr}: left/right argument; 0 or omitted "left" extraction, 1 or <>0 , "right" extraction
4
5lr,omittedlr,1
6a=ADG(A7#)=ADG(A7#,1)
712341 4
856785238
991011129632712
1013141516131074161116
111718192017141185101520
1218151291419
1319161318
142017
15
16lr,1lr,1
17a=ADG(A18#)=ADG(A18#,1)a=ADG(I18#)=ADG(I18#,1)
181111231 3
1922222
2033331
21
22lr,1
23a=ADG(A24:E31)=ADG(A24:E31,1)
24acfj5a 5
25bei410bcj10
26dh3915deff415
27g2814oghijci9o
281713ns12345ae314s
29612mrv678910bh8nv
3011lquy1112131415d213ry
31kptxzklmnog7muz
32pqrs112qx
33tuv6lt
34xy11p
35zk
36
37Note: The function can hanlde blankslr,1
38a=ADG(A39:E46)=ADG(A39:E46,1)
39acf5a 5
40bei410bc10
41d3915deff415
42g2814ogici9o
431713ns12345ae314s
44612mv678910b8nv
4511lquy1112131415d213y
46ktxzklmnog7muz
47qs112qx
48tuv6lt
49xy11
50zk
51
Sheet3
Cell Formulas
RangeFormula
G6,M38,G38,M23,G23,Q17,M17,C17,F17,L6G6=FORMULATEXT(G7)
A7:D11A7=SEQUENCE(5,4)
G7:J14G7=ADG(A7#)
L7:O14L7=ADG(A7#,1)
A18:A20A18=SEQUENCE(3)
C18:C20C18=ADG(A18#)
F18:F20F18=ADG(A18#,1)
I18:K18I18=SEQUENCE(,3)
M18:O20M18=ADG(I18#)
Q18:S20Q18=ADG(I18#,1)
G24:K35,G39:K50G24=ADG(A24:E31)
M24:Q35,M39:Q50M24=ADG(A24:E31,1)
Dynamic array formulas.
 
Book1.xlsx
ABCDEFGHIJKLMNOPQRST
1If we want the extraction array to be aligned to left, excluding blanks,other functions
2or we want to extract only "full" diagonals, we already have functions for that.AFUSBYROW
3By "full" arrays I mean, diagonals with maximum nr. of elements.AHCLEAN
4width of ADG=MIN(ROWS(a),COLUMNS(a))=MIN(8,5)=5=>max elem=width ADG
5
6a=ADG(A7:E14)=ADG(A7:E14,1)
7acfj5a 5
8bei410bcj10
9dh3915deff415
10g2814oghijci9o
111713ns12345ae314s
12612mrv678910bh8nv
1311lquy1112131415d213ry
14kptxzklmnog7muz
15pqrs112qx
16tuv6lt
17xy11p
18zk
19
20=AFUSBYROW(G7#)=AFUSBYROW(M7#)
21align diagonal array. to the lefta5
22bcj10
23deff415
24ghijci9o
2512345ae314s
26678910bh8nv
271112131415d213ry
28klmnog7muz
29pqrs112qx
30tuv6lt
31xy11p
32zk
33
34=AHCLEAN(G7#)=AHCLEAN(M7#)
35extracting "full" diagonals12345ae314s
36678910bh8nv
371112131415d213ry
38klmnog7muz
39
40AHCLEAN applied to the arrays before alignment, or after alignment, since is
41designed to filter rows by their nr. of blanks "n", will return same arrays
42when we filter only for "full" rows
43n,omittedn,omitted
44=AHCLEAN(G21#)=AHCLEAN(M21#)
45with "n" argument 12345ae314s
46of AHCLEAN we can 678910bh8nv
47vary what diagonals to1112131415d213ry
48extractklmnog7muz
49
50n,2
51=AHCLEAN(G21#,COLUMNS(G21#)-3)=AHCLEAN(M21#,2)
52extracting diag. withdeff415
53at least 3 elementsghijci9o
5412345ae314s
55max diag elements=678910bh8nv
56=width ADG=clms(ADG)=51112131415d213ry
57klmnog7muz
58n argument in AHCLEANpqrs112qx
59n=5-3=2tuv6lt
60
Sheet4
Cell Formulas
RangeFormula
G6,G51,M51,M44,G44,M34,G34,M20,G20,M6G6=FORMULATEXT(G7)
G7:K18G7=ADG(A7:E14)
M7:Q18M7=ADG(A7:E14,1)
G21:K32,M21:Q32G21=AFUSBYROW(G7#)
G35:K38,M35:Q38G35=AHCLEAN(G7#)
G45:K48,M45:Q48G45=AHCLEAN(G21#)
G52:K59G52=AHCLEAN(G21#,COLUMNS(G21#)-3)
M52:Q59M52=AHCLEAN(M21#,2)
Dynamic array formulas.
 
Another amazing challenge with words, today's (23-Jan-22) MrExcel YT: WORDLE Helper In Excel - Solve Wordle Faster! - Episode 2462 (has link to download the workbook to get entire Word array: WordleHelperFromMrExcel.xlsx )
Came out with a function:
WORDLE(wa,[b ],[g],[gi],[y],[yi])
wa: words array range
[b ]: "black" letters string (ex: "audo")
[g]: "green" letters string (ex: "ice")
[gi]: "green" indexes, numbers, each digit (1-5) len(gi)=len(g) (ex: 245)
[y]: "yellow" letters (ex: "ien")

[yi]: "yellow" indexes, numbers, each digit (1-5) len(yi)=len( y) (ex: 441)
Excel Formula:
=LAMBDA(wa,[b],[g],[gi],[y],[yi],
    LET(s,SEQUENCE(,5),w,MID(wa,s,1),
       k,IF(ISOMITTED(b),1,BYROW(IFERROR(SEARCH(w,b),0),LAMBDA(x,SUM(x)=0))),
       l,IF(ISOMITTED(g),1,REDUCE(1,SEQUENCE(LEN(g)),LAMBDA(v,i,v*BYROW(IFERROR(SEARCH(w,MID(g,i,1)),0)*s=--MID(gi,i,1),LAMBDA(x,SUM(--x)))))),
       m,IF(ISOMITTED(y),1,REDUCE(1,SEQUENCE(LEN(y)),LAMBDA(v,i,v*BYROW(IFERROR(SEARCH(w,MID(y,i,1))*s<>--MID(yi,i,1),0),LAMBDA(x,SUM(--x)))))),
      FILTER(wa,k*l*m)
    )
)
WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNOPQR
1Wordsingle cell
2aahedAUDIO=WORDLE(A2:A8939,"audotrs","ice",245,"ien",441)
3aaliiTIRESmince
4aarghNIECEwincedifferent cells, successive steps
5abacaWINCEyince=WORDLE(A2:A8939,"audo",,,"i",4)
6abacibeige
7abackbeigy=WORDLE(K6#,"trs","i",2,"e",4)
8abaftbeingbible
9abakabennibikie=WORDLE(M8#,,"ice",245,"n",1)
10abampbibbsbilgemince
11abasebiblebingewince
12abashbicepcivieyince
13abatebicesfiche
14abayabiersfille
15abbasbiffsgighe
16abbesbiffygimme
17abbeybiggyhinge
18abbotbightkibbe
19abeambiglyliege
20abelebikerlieve
21abetsbikesmiche
22abhorbikiemille
23abidebilbymince
24abledbilesminke
25ablerbilgeniche
26ablesbilgyniece
27abmhobilksnieve
28abodebillsnixie
29abohmbillypiece
30aboilbinerpixie
31abomabinesviewy
32aboonbingewince
33abortbinitwinze
34aboutbintsyince
35abovebirch
36abrisbirks
Sheet3
Cell Formulas
RangeFormula
I2,O9,M7,K5I2=FORMULATEXT(I3)
I3:I5I3=WORDLE(A2:A8939,"audotrs","ice",245,"ien",441)
K6:K968K6=WORDLE(A2:A8939,"audo",,,"i",4)
M8:M34M8=WORDLE(K6#,"trs","i",2,"e",4)
O10:O12O10=WORDLE(M8#,,"ice",245,"n",1)
Dynamic array formulas.
 
Went to the web site: Wordle - A daily word game
Super fun to play!!!!! Took 20s to finish!!! Is this cheating?? For me, it was important to check if WORDLE function works. And it does!! ✌️?(Screen capture attached)
WORDLE function WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNO
1Word
2aahedHINGE=WORDLE(A2:A8939,"hngealbk","ir",32,"ipc",214)
3aaliiALIBIcrimp
4aarghPRICKcrisp
5abacaCRISPsuccessive entering of arguments (same cell I3)
6abaciCRIMPfirst word hinge
7aback1. =WORDLE(A2:A8939,"hnge",,,"i",2)
8abaftchose from list alibi
9abaka2. =WORDLE(A2:A8939,"hngealb","i",3,"i",2)
10abampchose from list *****
11abase3. =WORDLE(A2:A8939,"hngealbk","ir",32,"ipc",214)
12abash2 results only
13abatechose crisp
14abayaonly one left, crimp, was the answer
15abbas
16abbes
17abbey
18abbot
19abeam
20abele
21abets
22abhor
23abide
24abled
25abler
26ables
27abmho
28abode
29abohm
30aboil
31aboma
Sheet4
Cell Formulas
RangeFormula
I2I2=FORMULATEXT(I3)
I3:I4I3=WORDLE(A2:A8939,"hngealbk","ir",32,"ipc",214)
Dynamic array formulas.
wordle 1.png
 
WORDLE function WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNOPQRS
1WordSPOILER ALERT !!!!! This will reveal today's wordle.
2aahed¡¡¡ Scroll down only if you want to see the result !!!
3aaliiUsed different "tactics" for this one: If we find a letter on its position, do not choose next word
4aarghfrom filtered list. The list will reveal only the words with that letter in that position.
5abacaIt will be a waste of that space to choose a word from the list, so I chose a word with a different letter
6abaciin that position, and the tactics paid off.
7abackCalled WORDLE after introducing the first 2 words, and got a unique result. After 2 tries only.
8abaftSo, if you ask me now, yes, I think using the function is cheating. At least was fun to find out.?✌️
9abakaWe can play the game without the function and use it only to see how we could have performed better.
10abamp
11abase
12abash
13abate
14abaya
15abbas
16abbes
17abbey
18abbot
19abeam
20abele
21abets
22abhor
23abide
24abled
25abler
26ables
27abmho
28abode
29abohm
30aboil
31aboma
32aboon
33abort
34about
35above
36abris
37abuse
38abuts
39abuzz
40abyes
41abysm
42abyss
43acari
44acerb
45acetaAMOUR
46achedBEANS=WORDLE(A2:A8939,"moben","r",5,"aaus",1345)
47achesSUGARsugar
48achoo
WORDLE 25Jan22
Cell Formulas
RangeFormula
I46I46=FORMULATEXT(I47)
I47I47=WORDLE(A2:A8939,"moben","r",5,"aaus",1345)
 
Tired of waiting another 24h for the next WORDLE game?
Let's build our own WORDLE game board in a few simple steps with Conditional Formatting.
WORDLE function WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNOPQRSTUV
1Word12345function waiting for "arguments"
2aahedspinnDV list=WORDLE(A2:A8939)
3aaliioread1no wordaahed
4aargh2no wordaalii
5abaca3no wordaargh
6abaci4no wordabaca
7aback5no wordabaci
8abaft6no wordaback
9abakaabaft
10abampSetupabaka
11abaseFormatting D3:abampPlaying the game
12abash-letters color white (invisible)abaseD3, "y", ENTER
13abateFornula D3:abashD3, "n", ENTER (to block the selection for consistent results)
14abaya =IF(D2="n",D3,INDEX(A2:A8939,RANDBETWEEN(1,8938)))abateChoose first word from DV in M3
15abbasabaya(latest excel update does search on dropdown list)
16abbesFormatting F3:J8abbasFill out 1st word (CF will show the matches)
17abbey-letters white color, bold, centered, inner grid lines white colorabbesFill out 2nd word and so on
18abbotabbey
19abeamConditional Formatting formulas F3:J8 (fill colors)abbotUse the WORDLE function or not
20abeleblack CFabeamfilling out the arguments, according with color codes
21abets =ISERR(SEARCH(F3,$D$3))abele
22abhoryellow CFabetsPlay again?
23abide =LET(x,SEARCH(F3,$D$3),AND(F3<>"",ISNUMBER(x),x<>F$1))abhorDelete F3:J8, and do another "spin"
24abledgreen CFabide
25abler =AND(F3<>"",SEARCH(F3,$D$3)=F$1)abled
26ablesabler
27abmhoFormula K3, drag and drop K3:K8ables
28abode =IF(ISNA(XMATCH(TEXTJOIN("",,F3:J3),$A$2:$A$8939)),"no word","")abmho
29abohmabode
30aboilData Validation M3abohm
31aboma =$A$2:$A$8939aboil
32aboonaboma
33abortaboon
SETUP My WORDLE
Cell Formulas
RangeFormula
O2O2=FORMULATEXT(O3)
D3D3=IF(D2="n",D3,INDEX(A2:A8939,RANDBETWEEN(1,8938)))
O3:O8940O3=WORDLE(A2:A8939)
K3:K8K3=IF(ISNA(XMATCH(TEXTJOIN("",,F3:J3),$A$2:$A$8939)),"no word","")
Dynamic array formulas.
Cells with Conditional Formatting
CellConditionCell FormatStop If True
F3:J8Expression=AND(F3<>"",SEARCH(F3,$D$3)=F$1)textNO
F3:J8Expression=LET(x,SEARCH(F3,$D$3),AND(F3<>"",ISNUMBER(x),x<>F$1))textNO
F3:J8Expression=ISERR(SEARCH(F3,$D$3))textNO
Cells with Data Validation
CellAllowCriteria
M3List=$A$2:$A$8939
 
Playing...
WORDLE function WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNOPQRS
1Word12345function waiting for "arguments"
2aahedspinnDV list=WORDLE(A2:A8939,"mxergtfl","ina",234,"an",34)
3aaliipinas1mixer mixerkinas
4aargh2giant pinas
5abaca3final vinas
6abaci4pinas 
7aback5no wordFun note: ?
8abaft6no wordI presume that pinas means:
9abakaPiNAS: Raspberry Pi Based Network Attached Storage
10abampor
11abasepineapple (piña in spanish)
12abash
13abate
14abaya
My WORDLE
Cell Formulas
RangeFormula
O2O2=FORMULATEXT(O3)
D3D3=IF(D2="n",D3,INDEX(A2:A8939,RANDBETWEEN(1,8938)))
O3:O5O3=WORDLE(A2:A8939,"mxergtfl","ina",234,"an",34)
K3:K8K3=IF(ISNA(XMATCH(TEXTJOIN("",,F3:J3),$A$2:$A$8939)),"no word","")
Dynamic array formulas.
Cells with Conditional Formatting
CellConditionCell FormatStop If True
F3:J8Expression=AND(F3<>"",SEARCH(F3,$D$3)=F$1)textNO
F3:J8Expression=LET(x,SEARCH(F3,$D$3),AND(F3<>"",ISNUMBER(x),x<>F$1))textNO
F3:J8Expression=ISERR(SEARCH(F3,$D$3))textNO
Cells with Data Validation
CellAllowCriteria
M3List=$A$2:$A$8939
 
A little bit about tactics.
WORDLE function WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNOPQRST
1Word12345function waiting for "arguments"
2aahedspinnDV list=WORDLE(A2:A8939,"bortchfusgd","ai",14,"illl",3452)
3aaliiaalii1abort abortaalii
4aargh2chile 
5abaca3fusil 
6abaci4algid 
7aback5aalii ←←!!! Something wrong with CF !!!
8abaft6no word(CF SEARCH relative to G2 cell finds 1st occurrence of "a")
9abaka
10abampTactics
11abaseChoose as 1st word a word that has no duplicate letters
12abash1abort
13abateWhen we have a "green", exclude that letter on purpose
14abaya(since we already know where "a" is will use its
15abbasspace for other letter)
16abbes1st argument:
17abbey(…"borta") and chose from results "chile"
18abbot2chile
19abeamstill keep "a" out
20abele2nd argument:
21abets(..."bortache",,,"il",34) and chose from results "fusil"
22abhor3fusil
23abidenow introduce all arguments correctly
24abled3rd argument:
25abler(..."bortchfus","ai",14,"ill",345) => only 4 words possible
26ables
27abmho=WORDLE(A2:A8939,"bortchfus","ai",14,"ill",345)
28abodeaalii
29abohmalgidchose "algid"
30aboilalgin
31abomaalkie
32aboon
33abort4algid
34about4th argument:
35above(..."bortchfusgd","ai",14,"illl",3452)
36abris
37abuse=WORDLE(A2:A8939,"bortchfusgd","ai",14,"illl",3452)
38abutsaalii
39abuzzfinal result!!!
40abyes
My WORDLE
Cell Formulas
RangeFormula
O2,D37,D27O2=FORMULATEXT(O3)
D3D3=IF(D2="n",D3,INDEX(A2:A8939,RANDBETWEEN(1,8938)))
O3O3=WORDLE(A2:A8939,"bortchfusgd","ai",14,"illl",3452)
K3:K8K3=IF(ISNA(XMATCH(TEXTJOIN("",,F3:J3),$A$2:$A$8939)),"no word","")
D28:D31D28=WORDLE(A2:A8939,"bortchfus","ai",14,"ill",345)
D38D38=WORDLE(A2:A8939,"bortchfusgd","ai",14,"illl",3452)
Dynamic array formulas.
Cells with Conditional Formatting
CellConditionCell FormatStop If True
F3:J8Expression=ISERR(SEARCH(F3,$D$3))textNO
F3:J8Expression=AND(F3<>"",SEARCH(F3,$D$3)=F$1)textNO
F3:J8Expression=LET(x,SEARCH(F3,$D$3),AND(F3<>"",ISNUMBER(x),x<>F$1))textNO
Cells with Data Validation
CellAllowCriteria
M3List=$A$2:$A$8939
 
Modified CF formula for "green CF" =F3=MID($D$3,F$1,1) , should be top condition, "yello CF" second.
Setup page:
WORDLE function WordleHelperFromMrExcel.xlsx
ABCDEFGHIJKLMNOPQRSTUV
1Word12345function waiting for "arguments"
2aahedspinnDV list=WORDLE(A2:A8939)
3aaliioread1no wordaahed
4aargh2no wordaalii
5abaca3no wordaargh
6abaci4no wordabaca
7aback5no wordabaci
8abaft6no wordaback
9abakaabaft
10abampSetupabaka
11abaseFormatting D3:abampPlaying the game
12abash-letters color white (invisible)abaseD3, "y", ENTER
13abateFornula D3:abashD3, "n", ENTER (to block the selection for consistent results)
14abaya =IF(D2="n",D3,INDEX(A2:A8939,RANDBETWEEN(1,8938)))abateChoose first word from DV in M3
15abbasabaya(latest excel update does search on dropdown list)
16abbesFormatting F3:J8abbasFill out 1st word (CF will show the matches)
17abbey-letters white color, bold, centered, inner grid lines white colorabbesFill out 2nd word and so on
18abbotabbey
19abeamConditional Formatting formulas F3:J8 (fill colors)abbotUse the WORDLE function or not
20abeleblack CFabeamfilling out the arguments, according with color codes
21abets =ISERR(SEARCH(F3,$D$3))abele
22abhoryellow CFabetsPlay again?
23abide =LET(x,SEARCH(F3,$D$3),AND(F3<>"",ISNUMBER(x),x<>F$1))abhorDelete F3:J8, and do another "spin"
24abledgreen CFtop in the CF listabide
25abler =F3=MID($D$3,F$1,1)abled
26ablesabler
27abmhoFormula K3, drag and drop K3:K8ables
28abode =IF(ISNA(XMATCH(TEXTJOIN("",,F3:J3),$A$2:$A$8939)),"no word","")abmho
29abohmabode
30aboilData Validation M3abohm
31aboma =$A$2:$A$8939aboil
32aboonaboma
SETUP My WORDLE
Cell Formulas
RangeFormula
O2O2=FORMULATEXT(O3)
D3D3=IF(D2="n",D3,INDEX(A2:A8939,RANDBETWEEN(1,8938)))
O3:O8940O3=WORDLE(A2:A8939)
K3:K8K3=IF(ISNA(XMATCH(TEXTJOIN("",,F3:J3),$A$2:$A$8939)),"no word","")
Dynamic array formulas.
Cells with Conditional Formatting
CellConditionCell FormatStop If True
F3:J8Expression=F3=MID($D$3,F$1,1)textNO
F3:J8Expression=LET(x,SEARCH(F3,$D$3),AND(F3<>"",ISNUMBER(x),x<>F$1))textNO
F3:J8Expression=ISERR(SEARCH(F3,$D$3))textNO
Cells with Data Validation
CellAllowCriteria
M3List=$A$2:$A$8939
 

Forum statistics

Threads
1,223,526
Messages
6,172,834
Members
452,483
Latest member
Johnstone

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top