Insertion de plusieurs lignes par macro

Bonjour tout le monde, j'aimerais aporte des modifications a une petite macro afin qu'elle puisse inserer plus qu'une ligne.

Les instructions sont dans le fichier.

188capucin-v45.zip (177.14 Ko)

Bonjour Capucin

Il suffit d'utiliser la propriété "Count" pour savoir le nombre de ligne sélectionnée et donc à ajouter

Sub ADD_LINE()
  ' permet d'ajouter Y ligne dans le tableau
  Dim x As Long, Y As Long
  x = ActiveCell.Row
  Y = Selection.Count
  Range("H" & x & ":J" & x + Y).Insert Shift:=xlDown
  Range("I" & x).Select
  Number 'met a jour la colonne # de ligne
End Sub

A+

Salut Bruno, ca fonctionne tres bien, j'ai seulement soustrais "1" a ta macro pour qu'elle reflete ce que je selectionne.

Crois-tu qu'on pourrais facilement utiliser le meme principe pour faire un genre de copier coller? je te renvoi un fichier avec mon objectif.

113capucin-v45.zip (177.95 Ko)

Re,

Voilà la modification effectuée

Tu sélectionne ta/tes lignes en "I"

Tu cliques sur ton bouton "LINE", les lignes sont copiées

Tu sélectionnes un autre endroit, la question t'es posée si tu veux coller les lignes à cet endroit

Il est évident que tu ne dois pas faire de saisie entre temps

A+

221capucin-v45.zip (171.89 Ko)

Tres fonctionnel , merci.

Pour terminer, peux t-on faire une version de cette macro qui fait un "couper/coller au lieu d'un copier/coller?

J'utiliserai les 2 macros.

Re,

Il suffit de remplacer "Copy" par "Cut"

Très intéressante ta petite appli

A+

Merci! tu n'as vu que la version Forum! Cette application permet d'editer du code en assembleur ,de generer le code hexa ainsi que de generer le hex file pour ecriture dans un EEPROM. J'ai eu beaucoup d'aide en Vba sur le FORUM. De plus,ca m'a permis de m'initier a ce language. J'aprecie beaucoup ton aide!

Sais-tu pourquoi lorsque je fais la macro avec "copy" sa laisse la selection en pointille, alors que la macro avec "cut" n'en laisse pas?

Re,

C'est Excel ...

Avec un copier on peut faire une succession de coller ce qui me semble logique

en revanche un couper est fait pour déplacer des données, donc une seule fois

PS : pour supprimer le pointillé tu peux utiliser

Application.CutCopyMode = xlNone

A+

c'est en effet logique.

merci pour tout, Bruno

Rechercher des sujets similaires à "insertion lignes macro"