In this paper, we address the problem of scheduling and routing physical therapists hospital-wide. At the beginning of a day, therapy jobs are known to a hospital's physical therapy scheduler who decides for each therapy job when, where and by which therapist a job is performed. If a therapist is assigned to a sequence which contains two consecutive jobs that must take place in different treatment rooms, then transfer times must be considered. We propose three approaches to solve the problem. First, an Integer Program (IP) simultaneously schedules therapies and routes therapists. Second, a cutting plane algorithm iteratively solves the therapy scheduling problem without routing constraints and adds cuts to exclude schedules which have no feasible routes. Since hospitals are interested in obtaining quick solutions, we also propose a heuristic algorithm, which schedules therapies sequentially by simultaneously checking routing and resource constraints. Using real-world data from a hospital, we compare the performance of the three approaches. Our computational analysis reveals that our IP formulation fails to solve test instances, which have more than 30 jobs, to optimality in an acceptable solution time. In contrast, the cutting plane algorithm can solve instances with more than 100 jobs optimally. The heuristic approach obtains good solutions for large real-world instances within fractions of a second.