Solution. The batch becomes one Excel table with a row per form, and every row shows which file it came from. Fillable PDF forms are read exactly as typed, and ordinary text PDFs are read by their field labels. Checks run while collecting: empty required fields, an e-mail without @, a short phone number and a missing signature all go to a separate To check sheet. Dates in different formats are converted to one format, and every change is logged.