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 :

Macro de Suppression d'une liste de texte dans un champs [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 14
    Par défaut Macro de Suppression d'une liste de texte dans un champs
    Bonjour a tous

    N'etant absolument pas a l'aise avec les boucles et apres de longues recherches sur differents forum, je fais appel à votre aide :

    J'ai une serie de codes qui represente des actions dont certains sont un ensemble d'autres.

    ex : le code I02 contient les I03,I04,I05,I06....

    je souhaiterai donc que pour la liste de code brute I02,B03,I06,C01,I12,I05 la macro donne une liste de code nette I02,B03,C01,I12 où le I06,I05 ont ete supprimé car faisant parti des composants du I02.

    Ainsi j'ai un fichier avec :
    > en B9 : la liste de codes brutes
    > A11:A18 : les ensembles
    > B11:AH18 : les composants des ces ensembles
    > en B23 : la liste de codes net

    et donc la macro ferait une boucle par ligne en regardant si le code present en Ai est dans la liste des codes brutes, si oui elle doit effacer tout les componsant Bi:AHi present dans la liste brute. Si non, passe à la ligne suivante

    i: est le numero de la ligne


    le resultat final apparaitrait en B23

    J'espere que j'aurai été suffisament claire et je vous remercie par avance

    Cdt
    Fichiers attachés Fichiers attachés

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 14
    Par défaut suite
    j'ai reussi faire ca , j'y suis presque mais il me retire toute les virgule au lieu d'uniquement retirer celle qui suit un composant.

    Dsl je ne sait pas comment bien mettre mon code dans la discussion

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Sub COMPIL()
     
    Dim NoCol As Integer
    Dim NoLig As Long
    Dim Var As Variant
     
    Worksheets("COMPIL_SRP_CODE").Range("B23") = Worksheets("COMPIL_SRP_CODE").Range("B9")
     
        NoCol = 1 'lecture de la colonne 1
        For NoLig = 11 To 18
        If Worksheets("COMPIL_SRP_CODE").Range("B23") Like "*" & Worksheets("COMPIL_SRP_CODE").Cells(NoLig, 1) & "*" Then
     
      'LANCEMENT DE LA SECONDE BOUCLE
     
      For NoCol = 2 To 33
     If Worksheets("COMPIL_SRP_CODE").Range("B23") Like "*" & Worksheets("COMPIL_SRP_CODE").Cells(NoLig, NoCol) & "*" Then
      Worksheets("COMPIL_SRP_CODE").Range("B23") = Replace(Worksheets("COMPIL_SRP_CODE").Range("B23"), Worksheets("COMPIL_SRP_CODE").Cells(NoLig, NoCol) & ",", "")
        End If
        Next
        End If
           ' Var = Worksheets("COMPIL_SRP_CODE").Cells(NoLig, NoCol)
        Next
       ' Set FL1 = Nothing
     
     
    End Sub

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 14
    Par défaut Victoire
    j'ai reussi si quelqu'un a besoin du code

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    Sub COMPIL()
     
    Dim NoCol As Integer
    Dim NoCol2 As Integer
    Dim NoLig As Long
    Dim Var As Variant
     
    Worksheets("COMPIL_SRP_CODE").Range("B23") = Worksheets("COMPIL_SRP_CODE").Range("B9")
     
        NoCol = 1 'lecture de la colonne 1
        For NoLig = 11 To 18
        If Worksheets("COMPIL_SRP_CODE").Range("B23") Like "*" & Worksheets("COMPIL_SRP_CODE").Cells(NoLig, 1) & "*" Then
     
      'LANCEMENT DE LA SECONDE BOUCLE
     
      For NoCol2 = 2 To 33
     If Worksheets("COMPIL_SRP_CODE").Range("B23") Like "*" & Worksheets("COMPIL_SRP_CODE").Cells(NoLig, NoCol) & "*" Then
      Worksheets("COMPIL_SRP_CODE").Range("B23") = Replace(Worksheets("COMPIL_SRP_CODE").Range("B23"), Worksheets("COMPIL_SRP_CODE").Cells(NoLig, NoCol2) & ",", "")
        End If
        Next
        End If
           ' Var = Worksheets("COMPIL_SRP_CODE").Cells(NoLig, NoCol)
        Next
       ' Set FL1 = Nothing
     
     
    End Sub

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

Discussions similaires

  1. [Base de données] Suppression d'une liste d'enregistrements dans une table Base
    Par Zhebulon dans le forum Bureautique
    Réponses: 0
    Dernier message: 25/07/2017, 11h01
  2. Réponses: 19
    Dernier message: 25/09/2015, 14h12
  3. Réponses: 2
    Dernier message: 12/05/2010, 14h57
  4. inserer une liste de personne dans un champ d'une liste
    Par must19 dans le forum SharePoint
    Réponses: 1
    Dernier message: 02/09/2008, 10h12
  5. comment remplacer une partie de texte dans un champs
    Par patlapi dans le forum Paradox
    Réponses: 4
    Dernier message: 20/11/2003, 14h38

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