FLOW312020
XLDnaute Nouveau
Bonjour à tous,
Après de nombreuses tentatives, je n'arrive pas résoudre mon problème. Lorsque la macro arrive sur la ligne "Set oLigneDestination" j'ai l'erreur 1004 qui apparait: Nous ne pouvons effectuer cette action car cela impliquerait le déplacement de cellules d'un tableau de votre feuille de calcul.
Je me doute que le problème vient du fait qu'en dessous de mon tableau dans lequel j'applique le "Listrows.add", j'ai un autre tableau deux lignes plus bas. En effet sans avoir de tableau sous ce tableau, la macro fonctionne parfaitement. Pour palier au problème j'ai créé une variante du code dessous pour qu'une ligne soit insérée par la macro avant d'appliquer le listrows.add. La ligne s'insère bien mais le problème persiste avec le même code erreur. Idem en ajoutant AlwaysInsert:=True après le .add
J'espère que vous saurez m'aider par ce que là pour le coup je sèche complet!
ps: je débute plus ou moins en vba ou du moins j'ai encore beaucoup de choses à apprendre
Merci
Après de nombreuses tentatives, je n'arrive pas résoudre mon problème. Lorsque la macro arrive sur la ligne "Set oLigneDestination" j'ai l'erreur 1004 qui apparait: Nous ne pouvons effectuer cette action car cela impliquerait le déplacement de cellules d'un tableau de votre feuille de calcul.
Je me doute que le problème vient du fait qu'en dessous de mon tableau dans lequel j'applique le "Listrows.add", j'ai un autre tableau deux lignes plus bas. En effet sans avoir de tableau sous ce tableau, la macro fonctionne parfaitement. Pour palier au problème j'ai créé une variante du code dessous pour qu'une ligne soit insérée par la macro avant d'appliquer le listrows.add. La ligne s'insère bien mais le problème persiste avec le même code erreur. Idem en ajoutant AlwaysInsert:=True après le .add
J'espère que vous saurez m'aider par ce que là pour le coup je sèche complet!
ps: je débute plus ou moins en vba ou du moins j'ai encore beaucoup de choses à apprendre
VB:
Sub Ajoute_Ligne(Contenu As String, onomTableau As ListObject)
' Ajoute les informations de la LigneSource dans le tableau de destination
Dim PositionLigneDestination As Long
Dim oLigneDestination As ListRow
Set oLigneDestination = onomTableau.ListRows.Add
PositionLigneDestination = oLigneDestination.Index + 1
onomTableau.Range.Cells(PositionLigneDestination, onomTableau.ListColumns(1).Index) = Contenu
Set oLigneDestination = Nothing
End Sub
Merci
Dernière édition: