Salut hicham28 et le forum
Jaimerai que ma question est claire
Nous aussi, mais ce n'est pas le cas.
Ce que je crois comprendre, c'est que tu veux copier des cellules, sans que celles qui en dépendent soient modifiées.
Je ne comprends pas trop ton code, mais à chacun sa méthode...
Je pense que tu dois modifier la ligne
Range("E3:ES3").Copy Range("E" & i)
Là, tu copies les formules. Et le résultat d'une formule se met à jour à chaque calcul de la feuille.
1 2
| Range("E3:ES3").Copy
Range("E" & i).Range("E" & i).PasteSpecial xlPasteValuesAndNumberFormats |
On ne copie que les valeurs (pas les formules) et les formats.
Mais ne comprenant pas ton problème, c'est dur d'aider.
Ton code est assez confus :
1 2
| Fin = Cells(Rows.Count, 1).End(xlUp).Row
If Not Application.Intersect(Target, Range("A1:A" & Fin)) Is Nothing |
Si, quand la colonne A fini en A20, tu modifies la cellule A5000, Fin t'indiquera la ligne 5000. Donc, il suffit de mettre Range(A:A) ou columns(1) à la place de Range("A1:A" & Fin)Donc, on va refaire une manip de A18 à Ax (x étant la dernière de A). Moi, ce qui me gène, c'est qu'on peut avoir x<18 (mais ça, c'est sans doute dû à une méconnaissance du problème).
1 2
| If Range("A" & i).Value <> "" Then
Range("E3:ES3").Copy Range("E" & i) |
Si je lis ton code : si A non vide (et différente de "-") alors copier E3:ES3 sur la ligne ???? Donc, tu veux copier les formules ?
Pour pouvoir aider il faut :
Le début (les données) et la fin (le résultat à obtenir)
éventuellement le code (la manière) à condition de donner son algorithme (ce qu'il est censé faire).
Et se poser la question suivante : Est-ce qu'il vaut mieux perdre du temps à rendre compréhensible mon problème dès le premier poste, ou attendre patiemment que quelqu'un se penche sur le poste et demande des précisions. Le premier temps va se chiffrer en heures (et je suis plus que large), le deuxième en jour (si et seulement si on a des réponses).
A+
Partager