Bonjour
Imaginons que j'ai un tableau ci-dessous.
| titre1 | titre2 | titre3 | titre4 | colonne1 | colonne2 |
| id1 | 1 | 10 | 11 | 100 | 1009 |
| id2 | 2 | 20 | 21 | 200 | 2009 |
| id3 | 3 | 30 | 31 | 300 | 3009 |
| id4 | 4 | 40 | 41 | 400 | 4009 |
| id5 | 5 | 50 | 51 | 500 | 5009 |
| id6 | 6 | 60 | 61 | 600 | 6009 |
| id7 | 7 | 70 | 71 | 700 | 7009 |
| id8 | 8 | 80 | 81 | 800 | 8009 |
Je veux lire les infos dans colonne1 et les multiplier par 5.
je stocke le résultat dans un tableau intermédiaire.
puis j'affiche les résultats de ce tableau.
j'ai le code VBA ci-dessous qui est adapté à la position de mon tableau dans excel (le tableau commence à la conne H)
Sub calculer()
Dim tableau(7, 0) 'tableau 8 lignes et 1 colonnes
For ligne = 0 To 7 'pour lire et calculer
tableau(ligne, 0) = Range("H" & ligne + 2) * 5
Next
For ligne = 0 To 7 'pour afficher les résultats
Range("P" & ligne + 2) = tableau(ligne, 0)
Next
End Sub
le problème, c'est que si je décide des colonnes entre titre4 et colonne 1, le VBA ne fonctionne plus.
comment je peux rendre Range("H" & ligne + 2) dynamique?
Dans un autre cas, j'utilise la colonne H et je cherche le max
j'ai donc un "range (H:H)" dans ma formule VBA mais j'ai définir un nom à la colonne pour l'appeler dans le code .
Lé decalage des colonnes ne me gene pas dans ce cas.
Mais dans le 1er cas, je ne sais pas quoi faire.
une piste?