Building a keyboard matrix
There is still a ghost effect.

Let's say that the user has pressed R4C9, R4C10 and R3C10. When C9 is energized by the demultiplexer, current can flow onto line R4 via R4C9, then line C10 via R4C10, then line R3 via R3C10. The R3 line will be energized. When you energize C9 and check R3, you will see the signal present that means the key is pressed, even though the key is not pressed.

There's no problem with using multiplexers instead of separate I/O pins. It might affect how quickly you can scan all the keys.