Anyway, yes, this is somewhat possible. However, it stretches the meaning of an "upgrade" somewhat and is very buggy. I'd recommend running Windows Easy Transfer beforehand, but you don't technically have to. First copy the contents of a Vista ISO to the desktop or somewhere safe. Then, overwrite Vista's install.wim with Windows 7's version. You should be able to run the setup just fine with no issues until a few reboots later, where you get this error.
At this point, open a cmd with shift+F10 and go to regedit. Navigate to HKLM\SYSTEM\Setup and set all DWORD values to 0 and set CmdLine to cmd.exe, then hard reset the PC.
Once in the bootloader, DO NOT select Rollback, and be quick about it too as you only really have about 3 second to switch it back to the Windows 7 option. Once that boots, you should end up at a vanilla Windows 7 desktop. However, your files from Windows XP are still in a temporary directory on the drive, and you can still recover them.
Your settings and modifications will be lost during this whole process, so this is why I recommended running Easy Transfer before to restore the settings back. You should also run msconfig and remove the Earlier Version of Windows and Setup Rollback options from the bootloader as a safety measure. Does this really count as an upgrade? Not really, but you are still technically upgrading Windows XP to Windows 7, keeping your files, and avoiding Vista.