Hello everyone,
For fun, I'm writing a 4D 4-in-a-row Tic Tac Toe program. It's like 3D tic tac toe, except, well, 4. I originally had it run off a user form that had a "Next Turn" and "Clear Board" button, but I'm changing it to place an X or O whenever the user right clicks on an appropriate square. I've attached my workbook for you to look at. Four.xlsm
Below is the code that is causing me trouble. I first couldn't figure out how to call a subroutine from another module. I'd still like to know how. Next, it created an infinite loop when it called the nextTurn sub, until I removed the "Write board" section of code. Finally, it is reacting very slowly when I have it call the Clear subroutine.

Please Login or Register  to view this content.
Here are my questions:
1. What's causing the inefficiency when calling the Clear sub and how do I fix this?
2. Why do I get an infinite loop if I remove the ' that is deactivating my "write board" section of code?
3. How can I call subroutines from another module?
4. (Optional) Why you're looking at this, I have about 100 lines of code that check for the winning conditions. I use dummy variables to multiple the elements of my board array across all rows, columns, and diagonals, and then use the product to determine if a win has occurred. I'm wondering if there is a more efficient way to do this. 100 lines of code seems like a bit much to say "Check if anyone has 4 in a row". If you have any ideas let me know.

Thanks everyone!

k64