The Schur-Horn theorem is a classical result in matrix analysis which characterizes the existence of positive semidefinite matrices with a given diagonal and spectrum. In recent years, this theorem has been used to characterize the existence of finite frames whose elements have given lengths and whose frame operator has a given spectrum. We provide a new generalization of the Schur-Horn theorem which characterizes the spectra of all possible finite frame completions. That is, we characterize the spectra of the frame operators of the finite frames obtained by adding new vectors of given lengths to an existing frame. We then exploit this characterization to give a new and simple algorithm for computing the optimal such completion.