Bonjour
J'avais imaginé une solution pour mon problème qui à priori n'est pas adapté, j'aimerais savoir si quelqu'un aurait une autre proposition.
OBJECTIF :
- mon classeur a deux feuilles, "Commandes" et "Résumé"
- j'ai plusieurs données qui sont renseignées dans la feuille Commandes (de A2 à AZ2)
- ces données sont modifiées puis sont recopiées dans la feuille Résumé
- les cellules cibles dans la feuille Résumé peuvent changer selon la version du classeur.
Comme j'ai de nombreuses données et qu'elles sont réutilisées à plusieurs endroits dans la macro, j'avais imaginé la solution suivante afin de pouvoir adapter la macro rapidement : je déclare l'emplacement de chaque donnée dans chaque feuille en début de macro ( HDL_r = Worksheets("Résumé").Range("B6"), HDL_c = Worksheets("Résumé").Range("A1") ), puis je copie un tableau dans l'autre.
Ça ne marche pas (erreur "Objet requis" pour la ligne "TabResume(i).Value = TabCommandes(i)").
Qui pourrait me proposer une solution / alternative ?
Merci d'avance.
J'avais imaginé une solution pour mon problème qui à priori n'est pas adapté, j'aimerais savoir si quelqu'un aurait une autre proposition.
OBJECTIF :
- mon classeur a deux feuilles, "Commandes" et "Résumé"
- j'ai plusieurs données qui sont renseignées dans la feuille Commandes (de A2 à AZ2)
- ces données sont modifiées puis sont recopiées dans la feuille Résumé
- les cellules cibles dans la feuille Résumé peuvent changer selon la version du classeur.
Comme j'ai de nombreuses données et qu'elles sont réutilisées à plusieurs endroits dans la macro, j'avais imaginé la solution suivante afin de pouvoir adapter la macro rapidement : je déclare l'emplacement de chaque donnée dans chaque feuille en début de macro ( HDL_r = Worksheets("Résumé").Range("B6"), HDL_c = Worksheets("Résumé").Range("A1") ), puis je copie un tableau dans l'autre.
Code:
Sub Test()
Dim TabCommandes() As Variant
Dim TabResume() As Variant
HDL_r = Worksheets("Résumé").Range("B6")
LDL_r = Worksheets("Résumé").Range("D2")
HDL_c = Worksheets("Commandes").Range("A1")
LDL_c = Worksheets("Commandes").Range("A2")
TabResume = Array(HDL_r, LDL_r)
TabCommandes = Array(HDL_c, LDL_c)
For i = 1 To UBound(TabCommandes, 1)
TabResume(i).Value = TabCommandes(i)
Next i
End Sub
Ça ne marche pas (erreur "Objet requis" pour la ligne "TabResume(i).Value = TabCommandes(i)").
Qui pourrait me proposer une solution / alternative ?
Merci d'avance.