Problème ajout de ligne

Bonjour à tous,

J'ai un petit problème avec VBA.

J'ai crée un bouton pour ajouter une ligne au dessus de la cellule active ainsi que un bouton pour fusionner la cellule active avec celle du dessous.

Quand je fais rajouter une ligne au dessus en ayant pour cellule active deux cellules fusionnées, il me rajoute deux lignes.

Il y a t'il une méthode pour n'en rajouter qu'une seule ?

'formule pour ajouter une ligne au dessus de celle sélectionnée
Sub Bouton6_Clic()
Cells(ActiveCell.Row, 2).Select
    Selection.EntireRow.Insert
End Sub

Merci d'avance

13probleme-vba.xlsm (71.30 Ko)

Bonjour

A tester

Sub Bouton6_Clic()
'Cells(ActiveCell.Row, 2).Select
'    Selection.EntireRow.Insert
Rows(ActiveCell.Row).Insert
End Sub

Merci Banzai 64 ça fonctionne

j'en profite pour poser une question qui découle de cela

J'ai ajouter une formule qui me permet de fusionner la cellule selectionner avec celle du dessus

Sub Bouton7_Clic()
Range(ActiveCell.Offset(0, 3), ActiveCell.Offset(-1, 3)).Merge
Range(ActiveCell.Offset(0, 2), ActiveCell.Offset(-1, 2)).Merge
Range(ActiveCell.Offset(0, 1), ActiveCell.Offset(-1, 1)).Merge
Range(ActiveCell, ActiveCell.Offset(-1, 0)).Merge
End Sub

Quand je selectionne la cellule avec mon nom il me fusionner cette cellule avec celle du dessus. Il fait de même avec les 3 colonnes d'a coté.

Le problème c'est que je dois cliquer sur ajouter une ligne et ensuite resélectionner le nom de la personne et faire fusionner.

J'aimerai que ces deux formules(ajouter une ligne et fusionner) se face dans le même bouton.

Quand je met les deux formules sous le même Sub Bouton, cela ne fonctionne pas: il me fusionner les deux lignes d'au dessus du nom mais pas celle du nom et celle rajoutée :S

Bonjour

Cette macro fait tout

Ajoute une ligne au dessus

Merge cette ligne

A tester

Sub Bouton6_Clic()
  Application.ScreenUpdating = False
  Rows(ActiveCell.Row).Insert
  Range(ActiveCell.Offset(0, 3), ActiveCell.Offset(1, 3)).Merge
  Range(ActiveCell.Offset(0, 2), ActiveCell.Offset(1, 2)).Merge
  Range(ActiveCell.Offset(0, 1), ActiveCell.Offset(1, 1)).Merge
  Range(ActiveCell, ActiveCell.Offset(1, 0)).Merge
  ActiveCell.Select
End Sub

Merci beaucoup

Tout fonctionne comme sur des roulettes !

Banzai64 a écrit :

Bonjour

A tester

Sub Bouton6_Clic()
'Cells(ActiveCell.Row, 2).Select
'    Selection.EntireRow.Insert
Rows(ActiveCell.Row).Insert
End Sub

Banzai, quelle formule dois je appliquer pour avoir ceci mais en dessous de deux cellules fusionner et non au dessus ?

Merci d'avance

Bonjour

A tester

Rows(ActiveCell.Row).Offset(1, 0).Insert

Avec cette formule il me rajoute bien une ligne en dessous mais comme la cellule active est deux cellules fusionnées, il me fusionne en même temps la cellule que je rajoute :s

Bonjour

Comment veux tu que je devine ce que tu penses faire

Si ce n'est pas le résultat escompté, places toi sur la ligne en dessous et appliques la 1ère macro

Rows(ActiveCell.Row).Insert

Vous m'avez proposé une première formule tout à l'heure: j'ai réussi à rajouter une ligne au dessus de deux cellules fusionnées.

Je voudrais faire de même pour la ligne du dessous sans qu'elle se fusionne avec les autres. Désolé mais les gens qui utiliserons ceci n'ont pas toujours la jujote adéquate pour penser que ce sera la ligne de dessus et non celle du dessous

Bonjour

Pourquoi ne pas faire l'inverse

Fusionner avec la ligne de dessous ou insérer une ligne au dessus

A la place de

Fusionner avec la ligne au dessus ou insérer une ligne dessous

Sinon

Rows(ActiveCell.Offset(1, 0).Row).Insert

Super cela fonctionne

J'ai deux boutons différents qui ont casiment la même fonction mais permettent deux choses différentes pour la personnes qui va l'utiliser.

Merci beaucoup

Rechercher des sujets similaires à "probleme ajout ligne"