### Summary

`ansible-lint` stops working with the error message "A vault password must be specified to decrypt data". It is difficult to understand which of the vault files is causing the problem.

So I ask you to extend the error messages in

https://github.com/ansible/ansible/blob/61d5586c7cf3b5f821bbe748aaff9d421da13cd8/lib/ansible/parsing/vault/__init__.py#L604

and

https://github.com/ansible/ansible/blob/61d5586c7cf3b5f821bbe748aaff9d421da13cd8/lib/ansible/parsing/vault/__init__.py#L661

with the filename like in:

https://github.com/ansible/ansible/blob/61d5586c7cf3b5f821bbe748aaff9d421da13cd8/lib/ansible/parsing/vault/__init__.py#L665-L667

Example: Current behaviour
```
# ansible-lint roles/myrole/tasks/vars/config_vault.yml
A vault password must be specified to decrypt data
```

Suggested result:
```
# ansible-lint roles/myrole/tasks/vars/config_vault.yml
A vault password must be specified to decrypt data in roles/myrole/tasks/vars/config_vault.yml
```


### Issue Type

Bug Report

### Component Name

vault

### Ansible Version

```console
$ ansible --version
ansible [core 2.13.7]
  config file = None
  configured module search path = ['/home/carsten/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/carsten/virtualenv/lib64/python3.10/site-packages/ansible
  ansible collection location = /home/carsten/.ansible/collections:/usr/share/ansible/collections
  executable location = /home/carsten/virtualenv/bin/ansible
  python version = 3.10.8 (main, Oct 28 2022, 17:28:32) [GCC]
  jinja version = 3.1.2
  libyaml = True
```


### Configuration

```console
n/a
```


### OS / Environment

SUSE Linux Enterprise Server 15 SP4

### Steps to Reproduce

see summary

### Expected Results

see summary

### Actual Results

```console
see summary
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
VAULT_ID_UNKNOWN_RC = 2
    def __init__(self, filename=None, encoding=None, loader=None, vault_id=None):
        super(ClientScriptVaultSecret, self).__init__(filename=filename,
                                                      encoding=encoding,
                                                      loader=loader)
        self._vault_id = vault_id
        display.vvvv(u'Executing vault password client script: %s --vault-id %s' % (to_text(filename), to_text(vault_id)))
    def _run(self, command):
        try:
            p = subprocess.Popen(command,
                                 stdout=subprocess.PIPE,
                                 stderr=subprocess.PIPE)
        except OSError as e:
            msg_format = "Problem running vault password client script %s (%s)." \
                " If this is not a script, remove the executable bit from the file."
            msg = msg_format % (self.filename, e)
            raise AnsibleError(msg)
        stdout, stderr = p.communicate()
        return stdout, stderr, p
    def _check_results(self, stdout, stderr, popen):
        if popen.returncode == self.VAULT_ID_UNKNOWN_RC:
            raise AnsibleError('Vault password client script %s did not find a secret for vault-id=%s: %s' %
                               (self.filename, self._vault_id, stderr))
        if popen.returncode != 0:
            raise AnsibleError("Vault password client script %s returned non-zero (%s) when getting secret for vault-id=%s: %s" %
                               (self.filename, popen.returncode, self._vault_id, stderr))
    def _build_command(self):