The calculated distance (air line) between Haddington and Peebles is approximately 26 miles respectively 42 kilometers.
By car or train, the actual journey to Peebles is certainly longer, as only the direct route (as the crow flies) between Haddington and Peebles has been calculated here.
Air line (approximately)
42 kilometers
23 nautical miles