The third-seeded Haas cruised to a 6-4, 6-3 win over Ivan Dodig of Croatia, and fourth-seeded Kohlschreiber rallied to beat Germany's Daniel Brands 6-7 (4-7), 6-3, 7-6 (7-5).
Haas broke Dodig's serve three times in the 90-minute match to reach his first finals of the year.
Kohlschreiber needed 2 hours, 14 minutes, to eliminate Brands. He forced a tiebreaker in the third set and was down 4-1 before coming back to grab the win.
Kohlschreiber and Haas have met four times in the past, all on grass, and have two victories apiece.