Sorry, I misunderstood.
I tried the new code, and it is back to giving me a run time error #9 - Subscript out of range, if I am not actively in the BobMCCommentPrep workbook. Anything else I might be missing? Here is the relevant part of the code:
'looks up the student data from the monthly call/mailmerge spreadsheet
Private Sub DataLookup_Click()
Dim yellow As String
Dim purple As String
Dim LtGreen As String
Dim LtBlue As String
Dim lColumn As Long
Set ws = Workbooks("BobMCCommentPrep.xlsm").Worksheets("#assperwk")
'Set ws = BobMCCommentPrep.Worksheets("#assperwk")
'Set ws = ActiveWorkbook.Worksheets("#assperwk")
lColumn = ws.Cells(2, Columns.Count).End(xlToLeft).Column
'The following vlookups pull student data from weekly monitoring or monthly call spreadsheet
contact = Me.StudentName.Value
Me.CurrentGrade.Value = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 12, False)
Me.PercentComp.Value = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 10, False)
Me.LastAss.Value = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 27, False)
Me.WeeksBehind.Value = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 21, False)
Me.VSAComments.Value = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 26, False)
yellow = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 22, False)
purple = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 23, False)
LtGreen = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 24, False)
LtBlue = Application.WorksheetFunction.VLookup(contact, Sheets("CurrentWk").Range("A1:Bl400"), 25, False)
When I debug, it is highlighting the first VLookup.
Bookmarks