I've accidentally deleted the .vdi file of a virtual machine in Virtualbox but I still have the latest snapshots. Is it possible to recover the virtual machine in my situation?
Unfortunately, it's not. Your best bet is going to be restoring from backups. VM snapshots, in VirtualBox or otherwise, contain only the sectors modified since the snapshot's creation. Some data may be recoverable forensically, but I don't think that is viable option as you would only find fragments of files at best and mapping them back to what file they belong to and in what order is going to be an exercise in frustration.
A second thought: If you are on Windows 7, I believe it by default takes shadow copy snapshots at intervals. You may try (in Explorer) navigating to the directory that contained the VDI, right-clicking the the directory's name and click properties, and select the Previous Versions tab. Anything listed here should be recoverable to the time listed.