Vilhelm (Swedish) comes from Old High German Willahelm, from Old High German helm, from Proto-West Germanic helm, from Proto-Germanic helmaz, from Proto-Germanic halmaz, from Proto-Indo-European ḱolh₂mos, from Proto-Indo-European ḱelh₂- — to pierce, strike; to stick; prick; stab.