u can not modify crystal report at run time , but u can make some changes trough puting formula fields and then change it on run time according to the user input or what so ever.
If you have the proper licensing you can create reports through code. In fact you can create your own "Report Writer" using the Crystal Report dlls in your VB application.
It may depend on your version, I only have 8.5 but this functionality was new in version 8.0.