This is a variant of a Random Walk problem.

This will not be a simple program. While I don't have the expertise to compute exactly how many possible Paths there are, I imagine it will be on the order of magnitude of n^n-1^^n-1 where n is the number of grid cells

I think you will need at least a Grid Class so that the code is not continually accessing the worksheet, and a Dictionary Class so that possible Steps and legitimate Paths can be validated.


The first step in creating an algorithm is determine the rules or restrictions or parameters.


  • Rule 1) No fewer than 3 steps per path
  • Restriction 2) Cannot reuse a grid cell
  • Parameter 3) each step must be on a legitimate path
  • What to do when one path contains many words (Feel, Feeling, Feelings)
  • How to handle when one starting cell leads to many paths (Feel, Fetch, Free, Field)
  • What to do when different paths return the same words.
  • Storing the legitimate results
  • How many CPU (core)s are available? Speed will be "Of The Essence" in this endeavor. Classes Are Essential.
  • ???
  • ???
  • ???



The next possible step from any Cell (i, j) is always (i|i+1|i-1, j|j+1|j-1). These can be defined as Up, Down, Left, Right, UpLeft, DownLeft, UpRight. and DownRight. This is one place where Recursion could be used.