insertion ligne

  • Initiateur de la discussion matthieu
  • Date de début
M

matthieu

Guest
bonjour jai un tableau du type
------------------------------------
A B C
----------------------------------
1 / 2 3 =A1*B1
2/ 5 2 =A2*B2
3/ 10 25 =A3*B3

et je veu insérer une ligne sous la troisième avec la formule grace a un bouton

------------------------------------
A B C
----------------------------------
1 / 2 3 =A1*B1
2/ 5 2 =A2*B2
3/ 10 25 =A3*B3
4/ 6 2 =A4*B4

mais je veux qu'après cette insertion je puisse reutiliser mon bouton pour insérer sous la ligne 4
------------------------------------
A B C
----------------------------------
1 / 2 3 =A1*B1
2/ 5 2 =A2*B2
3/ 10 25 =A3*B3
4/ 6 2 =A4*B4
5/ 2 3 =A5*B5

et ainsi de suite


PS: je voudrai aussi pouvoir supprimer la dernière ligne (vide ou non) d'une plage selectionner ( qui evolurai avec la macro si dessus....insertion d'une ligne donc insertion aussi dans la plage)
voila merci d'avance a tou ceu qui repondront
a+
 

WILFRIED

XLDnaute Impliqué
Salut Matthieu,

pour inserer ta ligne voici le code :


activecell.rows.entirerow.insert shift:=xldown

cela insert une ligne compléte en décalent toutes tes valeurs vers le bas. Si tu à utilisé une zone nommé pour ta plage de selection, alors elle s'incrémente automatiquement.


pour la suppression :

activecell.rows.entirerow.delete shift:=xlup

cela supprime une ligne compléte en décalent toutes tes valeurs vers le haut.

Et voila

A+
 
M

matthieu

Guest
le code fonctionne!
il insert une ligne complète effectivement mais il ne 'recopie' pas les formules des lignes au dessus
et je peu insérer a nimporte quel endroit est-il possible d'inserer comme jai essayer de l'expliquer dans mon premier message???
 

WILFRIED

XLDnaute Impliqué
Re,

Si j'ai bien tous saisi :

-tu veut que dans la nouvelle ligne, en colonne C tu insert en même temps la formule Anvlign * Bnvligne:

Si oui:

activecell.rows.entirerow.insert shift:=xldown
range('C' & activecell.row).formula='=A'& activecell.row & '*B' & activecell.row

A+
 
M

matthieu

Guest
jai oublier de preciser que cette formule est taper dans F67

en fait je sais pas transcrire la formule pcq tout les script que je fait je les trouve a droite a gauche eet jessaie de les transformer comme je peu
 
W

WILFRIED

Guest
Re,

Ta methode est bonne car elle permet de progresser c'est pourquoi jessaye toujours de mettre des explication dans mes codes.

Pour répondre à ta question :

Essaye cela :

activecell.rows.entirerow.insert shift:=xldown
range('F' & activecell.row).formula='=IF(ISBLANK(E'& activecell.row & '),,E' & (activecell.row-1) & '+F'&activecell.row & ')'

C'est sans tester et de mémoire.

A+
 

Discussions similaires

Réponses
5
Affichages
184
Réponses
5
Affichages
266
Réponses
9
Affichages
191