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 :

Vider le contenu de cellules dans une ligne en fonction d'une identité [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de graphikris
    Homme Profil pro
    Pas tres doué
    Inscrit en
    Décembre 2012
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Pas tres doué
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 215
    Points : 523
    Points
    523
    Par défaut Vider le contenu de cellules dans une ligne en fonction d'une identité
    Bonjour,

    Je cherche le moyen de supprimer le contenu de certaines cellules sur une ligne en fonction d'un nom prénom.

    En Colonne A, j'ai des Noms Prénoms et dans les autre colonnes des données.
    Dans ma macro, je demande à l'opérateur qui décide de supprimer ces données, de saisir le "nom prenom" concerné puis en fonction de sa réponse, la macro va chercher cette identit et va ensuite vides les données dans les cellules concernées.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        Dim Identite As String
     
        Identite = InputBox("Veuillez saisir l'identité à supprimer :" & Chr$(13) & Chr$(13) & "Exemple :" & Chr$(13) & "NOM Prénom" & Chr$(13) & "Exemple : Camus Christophe" & Chr$(13) & Chr$(13) & Chr$(13) & "ATTENTION : la saisie est obligatoire.", "identite")
     
        Sheets("Feuil1").Select
        Range("A63").Select
        Selection.ClearContents
        Range("B63").Select
        Selection.ClearContents
    Dans mon code, Excel va donc supprimer les données de la cellule A63 et B63 car l'identité a supprimer est en ligne 63.
    Que dois inscrire à la place de A63 et B63 ?
    J'ai essayé de mettre identite mais çà ne marche pas.

    Cordialement,
    Graphikris.

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonsoir,
    un début de piste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim Identite As String, dl As Long, Ch As Range, Plage As Range
    dl = Range("A" & Rows.Count).End(xlUp).Row 'on recherche la dernière ligne renseignée
    Set Plage = Range("A2:A" & dl) 'si les données commencent en A2, on définit la page de recherche
    Identite = InputBox("Veuillez saisir l'identité à supprimer :" & Chr$(13) & Chr$(13) & "Exemple :" & Chr$(13) & "NOM Prénom" & Chr$(13) & "Exemple : Camus Christophe" & Chr$(13) & Chr$(13) & Chr$(13) & "ATTENTION : la saisie est obligatoire.", "identite")
    Set Ch = Plage.Find(Identite)
    If Not Ch Is Nothing Then
      Range(Ch, Ch(1, 2)).ClearContents
    End If

  3. #3
    Membre confirmé Avatar de graphikris
    Homme Profil pro
    Pas tres doué
    Inscrit en
    Décembre 2012
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Pas tres doué
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 215
    Points : 523
    Points
    523
    Par défaut
    Bonsoir,
    Alors je viens de tester, çà marche mais çà ne fait pas ce que je voulais vraiment faire.
    Dans le code, çà ne supprime que l'identité saisie dans la boite de dialogue, càd le Nom_Prénom concerné qui se trouve dans la colonne A.
    Par contre les données situées sur la ligne correspondante ne s'effacent pas.
    Si par exemple l'identité concernées est en ligne 7, je voudrais supprimées les données étant en (A77) puis de (F7:J7) puis de P7 puis de (T7:U7) etc...
    Où dois je saisir dans le code les colonnes concernées ?

    Cordialement
    Graphikris.

    Bonjour,
    N'étant pas un expert en VBA et comptant beaucoup sur votre aides, je suppose que la modif a effectuer doit se situer à la ligne 7 du code cité ci dessus.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Ch, Ch(1, 2)).ClearContents
    Dans l'attente d'une réponse,
    Cordialement
    Graphikris.

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonsoir,
    mais çà ne fait pas ce que je voulais vraiment faire.
    Je ne penses pas que tu l'aies précisé.
    je suppose que la modif a effectuer doit se situer à la ligne 7 du code cité ci dessus.
    Parfaitement
    Dans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Ch, Ch(1, 2)).ClearContents
    'ch représente la cellule où l'identité a été trouvé donc Ch(1,2) représente la cellule sur la même ligne et une colonne plus loin soit, si les données sont en A =>colonne B.
    exemple, ch(1,3) => col C, Ch(1,4) => col D etc. tout sur la même ligne, de même, si Ch est A4, ch(2,2) => B5

    Avec ces renseignements, tu devrais pouvoir te débrouiller.

    Bon courage

  5. #5
    Membre confirmé Avatar de graphikris
    Homme Profil pro
    Pas tres doué
    Inscrit en
    Décembre 2012
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Pas tres doué
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 215
    Points : 523
    Points
    523
    Par défaut
    Bonjour et merci,

    Je pense que je vais pouvoir me débrouiller, çà n'a pas l'air trop compliqué.

    Cordialement.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/02/2015, 23h38
  2. Réponses: 1
    Dernier message: 25/03/2011, 20h22
  3. [XL-2003] Remplir automatiquement une ligne en fonction d'une cellule
    Par Tonio68 dans le forum Excel
    Réponses: 8
    Dernier message: 25/03/2011, 18h51
  4. [XL-2003] Supprimer une ligne en fonction d'une valeur de cellule
    Par FCL31 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 02/09/2009, 17h20
  5. Réponses: 1
    Dernier message: 10/02/2008, 19h56

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