Bonjour à tous,
je bute sur un problème qui vous sera sans doute évident : j'ai pour objectif d'automatiser la production de documents : j'ai donc une feuille excel avec une macro qui me crée un tableau dans lequel je peux trouver toutes les données nécessaires à la production de ces documents sur la base d'un modele word (fichier anony.dotx).
L'idée est que mon inputbox me permette de désigner, dans la feuille TestEnvoi une cellule contenant un nom ou une plage de cellule d'une seule colonne (celle contenant les noms) et qu'elle traite ensuite cette sélection pour produire les documents. en utilisant les données du tableau correspondant aux noms sélectionnés.
Si je sélectionne une seule cellule, aucun problème, la macro tourne et me délivre un .docx et un pdf.
En revanche, dès que j'essaye de sélectionner plusieurs cellules, j'ai beau tourné le code dans tous les sens, cela me crée régulièrement des problèmes d'objet..
Dans le fichier joint, vous trouverez deux macros pour générer ces docs, qui sont deux essais sur le meme thème, avec le meme insuccès, à chaque fois. J'esperai joindre mon fichier modele, mais ce n'est pas possible ici. je l'ai mis sur wetransfer: https://we.tl/t-ixgpDKUzpI
Merci d'avance à tous ceux qui se pencheront sur ce sujet!.
L'erreur générée est donc une erreur 9 L'indice n'appartient pas à la sélection sur la dernière ligne du bout de code fourni ci dessous. nom = noms_selectionnes(i)
je bute sur un problème qui vous sera sans doute évident : j'ai pour objectif d'automatiser la production de documents : j'ai donc une feuille excel avec une macro qui me crée un tableau dans lequel je peux trouver toutes les données nécessaires à la production de ces documents sur la base d'un modele word (fichier anony.dotx).
L'idée est que mon inputbox me permette de désigner, dans la feuille TestEnvoi une cellule contenant un nom ou une plage de cellule d'une seule colonne (celle contenant les noms) et qu'elle traite ensuite cette sélection pour produire les documents. en utilisant les données du tableau correspondant aux noms sélectionnés.
Si je sélectionne une seule cellule, aucun problème, la macro tourne et me délivre un .docx et un pdf.
En revanche, dès que j'essaye de sélectionner plusieurs cellules, j'ai beau tourné le code dans tous les sens, cela me crée régulièrement des problèmes d'objet..
Dans le fichier joint, vous trouverez deux macros pour générer ces docs, qui sont deux essais sur le meme thème, avec le meme insuccès, à chaque fois. J'esperai joindre mon fichier modele, mais ce n'est pas possible ici. je l'ai mis sur wetransfer: https://we.tl/t-ixgpDKUzpI
Merci d'avance à tous ceux qui se pencheront sur ce sujet!.
L'erreur générée est donc une erreur 9 L'indice n'appartient pas à la sélection sur la dernière ligne du bout de code fourni ci dessous. nom = noms_selectionnes(i)
VB:
Dim noms_selectionnes As Variant
noms_selectionnes = Application.InputBox(prompt:="Sélectionnez les noms pour lesquels générer le document:", Type:=64)
'Vérifier si l'utilisateur a appuyé sur Annuler ou n'a rien sélectionné
If VarType(noms_selectionnes) = vbBoolean Then
MsgBox "Aucune sélection n'a été faite. La macro s'arrête."
Exit Sub
ElseIf UBound(noms_selectionnes) - LBound(noms_selectionnes) < 0 Then
MsgBox "Aucun nom n'a été sélectionné. La macro s'arrête."
Exit Sub
End If
'Boucle à travers les noms sélectionnés et modifier le document Word pour chaque nom
'Si noms_selectionnes est un tableau, boucler à travers chaque nom
If IsArray(noms_selectionnes) Then
For i = LBound(noms_selectionnes) To UBound(noms_selectionnes)
nom = noms_selectionnes(i)
Pièces jointes
Dernière édition: