XL 2013 VBA : lier deux cellules sur des feuilles différentes

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Jojo973

XLDnaute Occasionnel
Supporter XLD
Bonjour à tous, j'ai un userform qui fonctionne très bien, je veux y rajouter une fonctionnalité :

rajouter une ligne à un tableau et associer des valeurs calculées aux lignes insérées

Il y a 28 colonnes donc j'ai utilisé l'instruction " For/Next"
Pour lier les cellules, j'ai récupéré le code d'une macro enregistrée et je l'ai adapté en remplaçant range par cells, car les lignes et colonnes sont variables.

J'ai un code d'erreur 1004 , qui me dit que la méthode select de la classe range a échouée.

Voici le code :

Code:
 'insertion dans tableau
 col_tcd = 13
    ' insertion ligne
    
    Sheets("TCD1").Cells(ligne, 3).Value = ComboBox1.Value
    
    'relier cellules résultats
    
    For itcd = 1 To 28
    Sheets("TCD1").Cells(ligne, col_tcd).Select '====> l'erreur ce produit ici
    ActiveCell.FormulaR1C1 = "=RésultatsD1!RC[9]"
    
    col_tcd = col_tcd + 24
    Next itcd

Merci pour votre aide😎
 
Re : VBA : lier deux cellules sur des feuilles différentes

j'ai fait ceci et il ne ressort pas d'erreur

VB:
Sub test()
    ligne = 1
    col_tcd = 13
    For itcd = 1 To 28
        With Sheets("TCD1")
        .Cells(ligne, col_tcd).Select    '====> l'erreur ce produit ici
        ActiveCell.FormulaR1C1 = "=RésultatsD1!RC[9]"
        End With
        col_tcd = col_tcd + 24
    Next itcd
    MsgBox col_tcd
End Sub
 
Re : VBA : lier deux cellules sur des feuilles différentes

Merci mais cela m'affiche le même message d'erreur.
Si j'enlève le . devant cells, cela fonctionne mais tout ce passe sur la feuille active de l'userform. Ce qui est un peu normal car pour chaque itération il faut que je reste sur la feuille TCD1 et en fait elle se désélectionne.

Je dois lier des cellules de la feuille "RésultatsD1" à la feuille TCD1.

La ligne reste la même mais sur TCD1 les colonnes sont contiguees, et sur résultats D1, la référence les colonnes sont espacées.
Je vais essayer de bâtir un code et je le mettrai en ligne si il ne fonctionne pas.
😉
 
Re : VBA : lier deux cellules sur des feuilles différentes

Voilà un code qui devrai fonctionner.

Code:
    col_tcd = 5
    ligne =22
    ir = 9
    For i = 1 To 28
    Sheets("TCD1").Select
    Cells(ligne, col_tcd).Select
    ActiveCell.FormulaR1C1 = "=RésultatsD1!RC[ir] '===> l'erreur ce situe ici
    col_tcd = col_tcd + 1
    ir = ir + 23
    Next i

Je ne sais pas si on peut mettre en variable la référence entre les [] à la base c'est une valeur entière (9) au départ.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
703
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
2
Affichages
668
Retour