你這個是因為Find沒有找到合適的單元格,所以單元格不存在,那么返回row就出錯了! 建議這么改: Dim rngLevel as Range, rngJob as Range set rngJob = standard.Range("E1:j2").Find(file.Cells(i, 2)) If Not rngJob Is Nothing Then nowJob = rngJob.Column Set rngLevel = standard.Range("A1:A10").Find(file.Cells(i, 3)) If Not rngLevel Is Nothing then nowLevel = rngLevel.Row