Effacer ligne par macro excel

Tof XXX Messages postés 8 Date d'inscription   Statut Membre -  
Tof XXX Messages postés 8 Date d'inscription   Statut Membre -
Bonjour à tous,

C'est mon 1er message sur ce forum que je trouve excellent !

Voilà ma petite question :

Je travaille actuellement sur un tableau excel comportant pas mal de lignes et de colonnes, de la cellule C 10 à la Z 2000

Je souhaiterai intégrer une macro permettant d'effacer une ligne à la demande

Voici le protocole souhaité : on sélectionne le nom à supprimer dans la colonne C xx, puis on clique sur la macro qui demande confirmation de la suppression du nom ("dupont" par exemple)
Si c'est OK, il faudrait que la macro descende la ligne "dupont" tout en bas du tableau (donc ligne 2000) puis l'efface (et non pas la supprimer)

Si je souhaite descendre cette ligne en bas du tableau, c'est pour ne pas faire de "trou" dans mes lignes car le tableau fait l'objet d'un tri alphabétique des noms

Merci d'avance aux pros des macros
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. Tof XXX Messages postés 8 Date d'inscription   Statut Membre
     
    Personne n'a de solution ?

    Et en faisant plus simple : simplement supprimer la ligne correspondant à la cellule sélectionnée ?

    Merci
    0
  2. Tof XXX Messages postés 8 Date d'inscription   Statut Membre
     
    Personne n'a de solution ?

    Et en faisant plus simple : simplement en supprimant la ligne correspondant à la cellule sélectionnée ?

    Merci
    0
  3. néné
     
    Bjr

    voici peut être la macro qu'il te faut

    Sub deplce()
    '
    ' Macro1 Macro
    ' Macro enregistrée le 02/01/2008 par ROBERT René http://utilsfr.new.fr
    '
    ligne = ActiveCell.Row 'ligne où tu as le nom a supprimer
    Rows("" & ligne & ":" & ligne & "").Select
    Selection.Cut
    dvaleur = Range("c65536").End(xlUp).Offset(1, 0).Row
    Rows("" & dvaleur & ":" & dvaleur & "").Select
    ActiveSheet.Paste
    End Sub
    0
  4. Tof XXX Messages postés 8 Date d'inscription   Statut Membre
     
    Merci pour ta réponse

    J'essaierai demain au boulot

    Pourrais-tu me préciser la fonction de cette ligne :

    "dvaleur = Range("c65536").End(xlUp).Offset(1, 0).Row" (tant qu'à faire, j'essaie de comprendre ce que je fais)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. néné
     
    "dvaleur = Range("c65536").End(xlUp).Offset(1, 0).Row" (tant qu'à faire, j'essaie de comprendre ce que je fais)4 message(s) posté(s) depuis le jeudi 27 décembre 2007

    Cette ligne veut

    dvaleur = dernière valeur de la colonne C + 1 ligne en partant du bas
    0
  7. Tof XXX Messages postés 8 Date d'inscription   Statut Membre
     
    Merci néné
    0