Macro excel

Bonjour,
je suis actuellement entrain de faire une petite base de donnée sous excel et j'ai utilisé une macro pour supprimer toutes les lignes non utilisées. Je voudrais maintenant créer un bouton pour faire une insertion de ligne en bas de la page mais je n'ai pas de formation informatique et je ne sais pas ce que je dois inscrire dans la fenêtre VBA pour une telle requête.
ça serait sympa si quelqu'un pouvait me donner cette macro

Merci d'avance!

2 réponses

  1. Salut,

    Le VBA peut être très intuitif, même quand on y connait rien.
    La démarche est la suivante:
    - Enregistrer une macro
    - Faire "à la main" dans Excel ce que tu veux qu'elle fasse.
    - Arrêter la macro( Barre des tâches "Visual Basic")
    - Alt + F11 et tu vois le code généré.

    Ensuite, avec un minimum de connaissance en programmation, tu nettoie le code pour l'améliorer ....

    Ca t'y va ?

    Grève de la signature
    1. salut

      tu dois créer ta macro d'abord (outil -> macro)
      dedans tu ecris
      Rows("x:x").Select (x = nombre de la colonne ou tu veux inserer ta ligne)
      Selection.Insert Shift:=xlDown

      Ensuite tu dois creer ton bouton (affichage, barre d'outils, visual basic et tu cliques sur le petit marteau)
      Tu peux choisir bouton de commande
      Une fois créé, tu cliques droit sur ce bouton et tu mets affecter une macro...

      Ca devrait marcher

      Sinon un truc sympa qd on commence sous excel : en cliquant sur enregistrer macro dans la barre outil visual basic, tu fais ta manip et excel ecrit tout seul ton code...(pour le voir : executer macro, modifier)

      Bon courage
      1. Salut
        Merci beaucoup de ta réponse:
        ça marche très bien ce que tu m'as dit mais en fait est ce que tu crois que c'est possible qu'il insère une nouvelle ligne en dernière position de la feuille quelque soit le nombre d'enregistrements; Parce que là, ça insère une ligne mais à un rang bien précis...

        Merci d'avance
      2. @Dja64salut

        oui c possible :

        il faut que tu comptes ton nombre d'enregistrements avec une boucle do while ...loop (ex :
        Nb_enregistrement = 0
        i = Nb_Start

        Do While IsEmpty(Worksheets("Nom de ta feuille").Cells(i, Numero de ta colonne ou tu compte).Value) = False

        Nb_enregistrement = Nb_enregistrement + 1

        i = i + 1

        Loop

        Ensuite tu inseres (la c'est un ex d'une insertion sur ta ligne de dernier enregistrement des colonnes 1 à 8)

        Worksheets("nom de ta feuille").Range(Cells(Nb_Enregistrement+1, 1), Cells(Nb_Enregistrement+1, 8)).Select
        Selection.Insert Shift:=xlDown

        essayes ca

        bye