Basically you can't, without some fairly advanced use of Reflection to recursively parse your type and get the sizes of each of it's constituent parts - which may well have their own contained classes, which may... you get the idea.
And it'll be sloooow.
There is apparently another way. Have a look at this:
http://blog.softwx.net/2013/01/benchmarking-c-struct-and-object-sizes.html[
^] it's C#, not VB, but it does do the job - apparently, I haven't tried it. I have serious doubts about it's accuracy, given that the code tries up to twelve times to get a consistent result on the same object...if the GC won't tell you the same thing twice in a row, what hope have you got?
Part of the idea of .NET is that for most applications, you aren't supposed to think about the size of your objects - just get on an use them.