The calculated distance (air line) between Sønderborg and Viborg is approximately 108 miles respectively 173 kilometers.
By car or train, the actual journey to Viborg is certainly longer, as only the direct route (as the crow flies) between Sønderborg and Viborg has been calculated here.
Air line (approximately)
173 kilometers
94 nautical miles