Vous moyen vous fusionnez seulement une force record à la fois ? Dans ce cas, pourquoi devez-vous employer MailMerge ET repères ? Je supposais que vous fusionniez les disques multiples de « amélioration », et pour chacune de ces derniers vous avez dû insérer les disques multiples de « insoumission ».
Pour une fusion record simple, vous pourriez employer seulement des repères. Il s'avère que votre code fait déjà ceci avec succès sans employer une fusion et publipostage du tout. Les lignes 22-26 insèrent des champs du disque de parent, et les lignes 29-37 insèrent les disques d'insoumission d'enfant.
Il y a encore une autre approche qui fonctionnerait pour vous parce que la liste d'insoumission est une liste simple, non un qui a besoin s'insérer dans une table. Le tour est d'employer une fonction pour compiler une liste délimitée de disques d'enfant comme champ dans votre question. Alors il peut être traité comme champ simple de fusion.
Jointe est une fonction appelée DelimitedList.
Dans la question que vous employez pour votre fusion et publipostage, ajouter le champ suivant :
ImprovementList : DelimitedList (« choisir * à partir de l'insoumission où [identification de notification d'amélioration] = » et
[Improvement_Notice_ID], « insoumission », Chr (13))
Ceci créera une corde de toute l'insoumission évalue assortir donné [identification de notification d'amélioration], et séparé par des caractères de vbCr. Ceci peut être employé comme champ de fusion et aucun repère n'est exigé du tout.
--
Graham