Is there a question in there somewhere?
Using an external DC voltage is no problem, just remember to wire the ground side of the external voltage source to the Arduino ground. Also you will have to recalculate the series current limiting resistors for each LED string.
Depending on how many LEDs you are going to drive and how many Arduino output pins you are going to use you might consider using a logic level N channel MOSFET transistor for switching the LED's on and off instead of a NPN transistor. A mosfet requires no continous DC current for it's gate drive and the active 40ma source and sink capablitly of an Arduino output pin will work well drive most MOSFETS gate well.