Réduire une plage sélectiionnée

katoch300 -  
 katoch300 -
Bonjour,
Dans une macro (créée en enregistrement de touche) je souhaiterais copier le contenu d'un champs "A1" sur les champs vide dessous de "A2" à "A4"

A1 Pomme
A2
A3
A4
A5 Poire

mais je voudrais utiliser cette macro pour les lignes suivantes "A5" à copier sur... et ainsi de suites

Le problème est que l'instruction Range me donne toujours la même plage de cellules.

Comment indiquer une plage NON fixe.

Merci pour votre aide
A voir également:

2 réponses

Olivier
 
Bonjour,

Est-ce que la macro ne sert qu'à ça ?

Si oui, cela peut se faire avec une formule Excel sur une 3eme colonne C :

=si(b2="";c1;b2)

(à coller en C2 et à étendre sur toute la hauteur)

Sinon, en macro enregistrement de touche, cela pourrait marcher de la manière suivante :

sélectionner Pomme
Copier le contenu (ctrl + C)
aller à l'enregistrement suivant avec ctrl + fleche vers le bas
remonter d'une case avec fleche vers le haut
sélectionner l'ensemble des cases vide et le pomme d'origine avec ctrl + shift + fleche vers le haut
coller (ctrl + V)
descendre sur poire avec ctrl + fleche vers le bas

et on recommence

j'espère que ca répond à la question !
0
katoch300
 
Bonjour,

Merci pour votre aide concluante.
0
katoch300
 
Bonjour,
C'est ok avec quelques aménagements pour remplacer les code Range

ActiveCell.Offset(0, 0).Activate
Selection.Copy
Selection.End(xlDown).Select
ActiveCell.Offset(-1, 0).Activate
Range(Selection, Selection.End(xlUp)).Select
ActiveSheet.Paste
Selection.End(xlDown).Select

Et cela fonctionne.

Merci pour votre aide
0