DirectX9 cannot be used in VB6. Only in the .NET languages such as VB.NET, VC++.NET, etc.
DirectX support for VB6 only went up to DirectX 8.1
I recommend Microsoft Visual Basic Game Programming With DirectX by Jonathan S. Harbour. The only thing I dislike about that book is how they did the 3D camera stuff. They did it all wrong.
Another awesome book I recommend (although it's in C++ but the concepts can be used in VB) is the best 3D game programming book I've ever read called Tricks of the 3D Game Programming Gurus by Andre LaMothe. Lot's and lot's of math, not to mention it can help ya create a killer 3D engine with or even without DirectX. It helped me produce Z-Buffered Perspective Correct Texture Mapped polygons using pure VB. Ran pretty good to like around 30 FPS.
The book used D3DXMatrixLookAtLH to move the camera around, which was not the correct way of doing it. The reason why is because by the time your camera passes 0, 0, 0 in world space, the camera for some reason will turn around on it's own like half a circle in a smooth motion, even if you were moving straight! D3DXMatrixLookAtLH is actually supposed to be initialized once.
To have complete control of the camera, you have to do matrix math to the camera matrix in order for it to move properly. I have code for you to get a camera moving like a First Person Shooter located in www.angelfire.com/fl5/memorydll/index.html
You can either download R-Type_3D.zip or MKvsSF.zip. Both of them have it to where you move the camera like a FPS using the numpad keys. The arrow keys just move the sprites.