IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

code pour supprimer une ligne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    ingénieur
    Inscrit en
    Juin 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ingénieur

    Informations forums :
    Inscription : Juin 2018
    Messages : 15
    Par défaut
    Bonjour,
    j'ai un problème avec le code pour supprimer une ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Sub SupprimeClient()
    Dim i As Integer
    Dim SupprimeLigne As String
     
    SupprimeLigne = InputBox("Veuillez taper le numéro du matricule à supprimer", "suppression")
    With ThisWorkbook.Sheets("Source")
     
    For i = .Range("A" & .Count).End(xlUp).Rows To 2 Step -1
    If .Range("A" & i).Value = SupprimeLigne Then
    Rows(i).Delete
    End If
    Next i
    End With
     
    End Sub
    il bug en indiquant cette phrase en jaune "With ThisWorkbook.Sheets("Source")"

  2. #2
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour maynou24

    Je ne vois qu'une raison à ce bug : ton classeur n'as pas feuille nommée "Source"

  3. #3
    Membre averti
    Femme Profil pro
    ingénieur
    Inscrit en
    Juin 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ingénieur

    Informations forums :
    Inscription : Juin 2018
    Messages : 15
    Par défaut
    Je ne vois qu'une raison à ce bug : ton classeur n'as pas feuille nommée "Source"[/QUOTE]

    si si la feuille est nommée source je l'ai vérifié 1000 fois

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par maynou24 Voir le message
    Bonjour,

    Regardez si un point avant Rows(i).Delete règle votre problème :

  5. #5
    Membre averti
    Femme Profil pro
    ingénieur
    Inscrit en
    Juin 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ingénieur

    Informations forums :
    Inscription : Juin 2018
    Messages : 15
    Par défaut
    le programme ne bug plus mais il ne fait rien.. aucune ligne n'est supprimée !!

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par maynou24 Voir le message
    le programme ne bug plus mais il ne fait rien.. aucune ligne n'est supprimée !!
    Typez votre variable SupprimeLigne en Variant pour voir.

    Sinon, êtes-vous sure d'avoir le même nombre de caractères pour faire votre comparaison ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par maynou24 Voir le message

    C'est le s à la fin de Rows qui ne va pas : For I = .Range("A" & .Rows.Count).End(xlUp).Rows To 2 Step -1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Sub SupprimeClient()
    Dim I As Long
    Dim SupprimeLigne As String
     
        SupprimeLigne = InputBox("Veuillez taper le numéro du matricule à supprimer", "Suppression")
        With ThisWorkbook.Sheets("Source")
             For I = .Range("A" & .Rows.Count).End(xlUp).Row To 2 Step -1
                 If .Range("A" & I) = SupprimeLigne Then .Rows(I).Delete
             Next I
          End With
     
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. code pour rendre une ligne du gridview en mode edit
    Par mapmip dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/04/2008, 13h31
  2. Réponses: 1
    Dernier message: 28/03/2008, 21h37
  3. Access, requete pour supprimer une ligne ?
    Par floran30 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 19/06/2006, 11h13
  4. [VBA Excel] Userform pour supprimer une ligne précise
    Par Viper7 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/06/2006, 14h32
  5. Réponses: 1
    Dernier message: 17/05/2006, 09h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo