There are
1,950 mi
from Gresham, OR to Okmulgee, OK
That's the driving distance. It would take 1 day 9 hours to go from Gresham, Oregon to Okmulgee, Oklahoma.
The flight distance (direct flight from Gresham, OR to Okmulgee, OK) is 1,538.23 mi.
1,950 mi = 3,137.86 kms