Looks like, after looking this up(so bored that I researched this, not to mention waking up at a weird hour after recovering from a headache, lol), probably taking greyhound from Kansas City to Effingham looks like pretty much your only option, since Amtrak's closest stop along the Chicago-St. Louis-KC route to Olney(which ISN'T in any way close to Olney, mind you) is all the way in Carlinville, and there's no direct way to travel from KC to Effingham(closest Amtrak stop I found to Olney was to there). There are 4 buses that leave KC daily and go east towards St. Louis, and all of them arrive there at a time that'd allow you to transfer to one going east from STL towards Effingham(and of course, you'd have to improvise some means of transportation from Effingham towards Olney)
This is why Amtrak REALLY needs to start operating service that doesn't ALL depart and arrive in Chicago! (and goes to show one of many bad side effects of Chicagoland Dems controlling state government, + why there should be less influence from them) Haha, enough with that rant, but I hope that helped you out.
