VBA is syntactically the same as VB6 but not the same as VB .NET - think of VBA as a subset of the Visual Basic family along with VBScript. Visual Basic is the 'core' language, VBA enables you to work with a reduced set of functions within the context of applications (notably Microsoft Office applications) that host VBA. Basically using VBA allows you to easily automate and extend the functionality of those applications. For example, if Word doesn't currently do a task that you want it to, you can write your own VBA code so that it will do what you need.
VB .NET was released as the successor to VB6. A few years ago Microsoft introduced the whole .NET environment, which is more than just an updated version of a programming language. They kinda rewrote their whole approach. Most notably, in my opinion, VB .NET finally made Visual Basic a truly object oriented programming language. VB6 did not fully meet all the criteria to make a language object oriented. This was redressed with the release of VB .NET.
Overall, I think that VB6 is much easier to learn from scratch than VB .NET. I'm not sure I would recommend someone without any programming experience to start learning programming with VB .NET. However, VB6 is less powerful than VB .NET - although I'd have thought that 99% of applications people write don't necessarily utilise the extra functionality. If, on the other hand, you've already had some experience of writing object oriented code, then it would make more sense to go directly to VB .NET than VB6.
Personally, Visual Basic (all flavours) is a sucky language... I prefer the structure of Java as a coding language. However, this has its disadvantages too, but we'll save that for another thread. Horses for courses, really, innit