When updating a cashbook or journal batch, you get a Runtime error 9: Subscript out of range message. The error is usually caused by a corruption in your batch. Identifying exactly what is corrupt is not often possible, as the batch often appears to be fine.
Make a backup of your data before proceeding with the fix
- Export the batch by going to Batch>Export
- The Export/Import screen will pop up. Type in a file name to describe the batch you are working on, then click the Process button
- The batch will be exported and you will see a pop-up message alerting you that it has been exported, click OK
- Now that the batch has been exported, go to Batch>Delete Batch – click Yes when asked: Delete this Batch? and Yes again when asked: Are you sure?
- Now the batch is deleted, click Batch>Import to import the batch, find the file you exported and click Process
- The batch will then import and return you to your cashbook, if the import was successful
- Update the batch as per usual
You can read more here