Hi GT
You may find in this link a copy of your file template with a solution to your problem
https://we.tl/t-pgmXZQc0nA
Please,
On the Data sheet
- In the yellow cell, enter the path of the folder where you want to store the certificates. Make sure it ends with ""
- Click the Create Certificates button.
And that's it

- The macro will open the folder once the certificates are created
They will be saved as the "Person Name-Certificate.pdf"

- and 5) Please, format and make the changes in the "Cert" template/sheet, in the way you want.

Here is the code used
Sub CreateCertificates()
Dim NameRng As Range
Dim cName As Range
Dim myPath As String
Dim fName As String
Application.ScreenUpdating = False
With Sheets("Data")
.Activate
Set NameRng = .Range(Cells(3, "B"), Cells(Rows.Count, "B").End(xlUp))
myPath = .Range("E1").Value
For Each cName In NameRng
fName = cName.Value & " " & cName.Offset(0, 1).Value & "-Certificate.pdf"
With Sheets("Cert")
.Shapes("ShName").TextFrame.Characters.Text = cName.Value & " " & cName.Offset(0, 1).Value
.Shapes("ShComment").TextFrame.Characters.Text = cName.Offset(0, 3).Value
.Shapes("ShDate").TextFrame.Characters.Text = cName.Offset(0, 2).Value
''' Save the Certificate under the corresponding name
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=myPath & fName, \_
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End With
cName.Offset(0, 4).Value = "Done!"
Next cName
Application.ScreenUpdating = True
MsgBox "Job Done!"
'''Show the Certificates
Call Shell("explorer.exe " & myPath, vbNormalFocus)
End With
End Sub
Do let us know if you need more help
Regards
Jeovany