Excel 2003 insertion ligne automatique via macro

Bonjour à tous,

je ne connais pas très bien excel alors autant vous dire que les macros c'est pire... :s

J'aimerai une macro qui me permette quand on appui sur un bouton d'insérer une nouvelle ligne là ou mon curseur se trouve.

je ne peux pas envoyer de fichier la ligne se décompose comme cela :

* Nom de la personne
* nom de la personne - programme 1 (via liste déroulante) - libellé automatique (fonction recherche)
* nom de la personne - programme 2...
* nom de la personne - programme 3...
.................
donc la nouvelle ligne inséré est une ligne programme et dois comporter les infos que je vous ai écrit avec liste et formule.

Quelqun aurai t'il un code vba simple pour faire cela ?

Je vous remercie par avance.

3 réponses

  1. Essaies :

    Option Explicit
    
    Private Sub CommandButton1_Click()
      Call InsertARow
    End Sub
    
    Sub InsertARow()
      ActiveCell.EntireRow.Insert Shift:=xlDown
      ActiveCell.Offset(-1, 0).EntireRow.Copy Cells(ActiveCell.Row, 1)
      On Error Resume Next
      ActiveCell.EntireRow.SpecialCells(xlCellTypeConstants, xlNumbers + _
                                                             xlTextValues + _
                                                             xlLogical + _
                                                             xlErrors).ClearContents
    End Sub

    --
    Cordialement
    Patrice
    3
    1. c'est metrora! merci pour ta réponse , mais sa ne marche pas! enfin c'est fort probable que je fasse quelque chose de travers, moi et le vba sa fait plus que 10...

      merci quand même.
      0
    2. 1 ) Poses un bouton activeX sur la feuille :
      - Affichage / Barres d'outils / Boite à outils Contrôles
      - Appuis sur le bouton "Mode création" puis sur le bouton "Bouton de commande"
      - Dessine le bouton sur la feuille
      2 ) met en place le code :
      - Clic droit sur l'onglet de la feuille / Visualiser le code (L'éditeur VBA s'ouvre)
      - Copie le code du message ci-dessus et colle le dans l'éditeur VBA
      - Appuis sur Alt+F11 pour revenir sur la feuille Excel
      - Ré-appuis sur le bouton "Mode création" pour activer le mode normal.
      2) Essaies :
      Le bouton posé sur la feuille devrait fonctionner.(sélectionne l'emplacement de la ligne à insérer avant d'appuyer sur le bouton).

      Patrice
      0
    3. merci ca marche très bien ^^
      0
    4. Bonjour, et merci pour la macro.
      EN revanche, serait-il possible de fixer le numéro de ligne qui s'insère, je veux dire, que ce soit toujours un nouvelle ligne qui apparait en 3eme position et non pas à l'endroit sélectionné?
      Merci d'avance
      0
    5. Bonjour ROIMYGALE,

      Pour insérer une ligne en troisième position, tu n'as pas besoin de cette macro il suffit simplement de faire :
      Private Sub CommandButton1_Click()
        Rows(3).Insert Shift:=xlDown
      End Sub


      Patrice
      0
  2. De rien, au plaisir de te relire sur le Forum
    0
    1. Bonjour, pour mon fichier la version de Patrice33740 fonctionne bien, par contre j'aimerais que les lignes s'ajoutent sur plusieurs feuilles de mon classeur, au même endroit... Quelqu'un peut m'aider ?
      0
      1. Bonjour,

        2 questions :
        Lequel des codes utiles-tu exactement ?
        Sur quelles autres feuilles ?

        Patrice
        0