Kaylee,
Here is one way you can tackle it -- I will try to give you enough detail to get something you can build on.
First, add a command button to the detail section of your form and caption it something like "Add New". (Important: your form will have to be displayed as a continuous form for this to work, it won't work in spreadsheet view.)
Next, in the event tab of the property sheet for the command button, make the "On Click" event set to [Event Procedure] by selecting the [...] button and picking "Code Builder".
Your VBA editor will come up with the "Private Sub ButtonName_Click()" and "End Sub" lines.
In between those lines, insert the DMax function code between those lines like this:
Code:
Private Sub YourButton_Click()
Me.Punch_Card__.Value = Left(DMax("[Punch Card #]", "[Table1]"), 3) + 1 & "-" & Right(Year(Now()), 2)
End Sub
(Note that access won't recognize your "Punch Card #" field unless you substitute underscores for spaces and the # symbol.)
Save the code and return to your form. Put your form back in form view and when the button is clicked it should populate the "Punch Card #" field with the next value.
(Sorry for the frustration)