Tableau

Bonjour à tous

Je suis étudiant et j'ai un petit problème :

Je souhaite éclater une formule et crée un tableau avec les termes que j'ai éclater :

En gros j'ai une formule ( A ET B ) OU ( A ET C )

j'aimerai crée un tableau avec abc en colonnes et placer une croix dans le tableau à chaque ligne qui correspond a mon expression

Exemple :

NA NA A B C

ligne 1 X X NA

ligne 2 X NA X

Sub TestV2()
'variable qui stock la cellule diversité organico fonctionnel
Dim str_temp As String
'tableau qui stock chaque ligne de ma cellule diversité organico fonctionnel
Dim ligne_DCi As Integer
Dim tab_str_temp() As String
Dim Nb_ligne_Dci As Integer
Dim ligne As Integer
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim nb_groupe_EC As Integer 'représente un groupe d'EC entre parenthèse séparé par des ET
Dim groupe_EC As Integer
Dim nb_EC_par_groupe As Integer
Dim nb_EC_par_groupe_max As Integer
Dim EC_trouve As Boolean
Dim iColonneDiversiteOrganicoFonctionnelle As Integer
Dim iColonneDiversiteOrganicoFonctionnelleGenere As Integer 'colonne généré par une macro

For i = 1 To Application.WorksheetFunction.CountA(Rows(2))
    If Cells(2, i) = "Diversité Organico Fonctionnelle" Then
        iColonneDiversiteOrganicoFonctionnelle = i
    End If
    If Cells(2, i) = "Diversité Organico Fonctionnelle Générée" Then
        iColonneDiversiteOrganicoFonctionnelleGenere = i
    End If
Next i

Nb_ligne_Dci = Application.WorksheetFunction.CountA(Columns(2)) - 1

For ligne_DCi = 1 To Range("Q" & Rows.Count).End(xlUp).Row

      Worksheets("DCi").Activate
    'On vérifie que la cellule constituant et Réseau son bien en accord avec notre filtre

    If iColonneDiversiteOrganicoFonctionnelleGenere = 0 Then
        str_temp = Cells(ligne_DCi + 3, iColonneDiversiteOrganicoFonctionnelle)
    Else
        str_temp = Cells(ligne_DCi + 3, iColonneDiversiteOrganicoFonctionnelleGenere)
    End If

    'Initialisation des variables
    nb_groupe_EC = 0
    groupe_EC = 0
    nb_EC_par_groupe = 0
    nb_EC_par_groupe_max = 0
    dernier_groupe_EC_max = 1
    numero_EC = 0
    EC = ""

    'fonction qui découpe la cellule en plusieur ligne
     tab_str_temp = Split(str_temp, Chr(10))

'---------------------------------------------------------------------------------------------------------
    'On compte le nombre d'EC max par groupe dans une case diversité organico fonctionnel pour créer le tableau EC
    For i = 0 To UBound(tab_str_temp)
        If (tab_str_temp(i) = "(") Then 'on regarde si une parenthèse ouverte est présente ( on compte 1 groupe
            nb_groupe_EC = nb_groupe_EC + 1
            groupe_EC_en_cours = True
        ElseIf (tab_str_temp(i) = ")") Then 'on regarde si une parenthèse fermé est présente ( on peu passer au second groupe
            If (nb_EC_par_groupe > nb_EC_par_groupe_max) Then
                nb_EC_par_groupe_max = nb_EC_par_groupe
            End If
            nb_EC_par_groupe = 0
            groupe_EC_en_cours = False
        Else 'on est dans le cas ou on compte le nombre d'EC_max
            If tab_str_temp(i) <> "" Then
                'il y a un seul groupe_EC dans la cellule et on a donc pas vu de (
                If nb_groupe_EC = 0 Then
                    nb_groupe_EC = 1
                    groupe_EC_en_cours = True
                    nb_EC_par_groupe = nb_EC_par_groupe + 1
                Else
                    If ((tab_str_temp(i - 1) = "OU") Or (tab_str_temp(i - 1) = "ET") Or (tab_str_temp(i - 1) = "(")) Then
                        If (groupe_EC_en_cours = True) Then
                            EC = tab_str_temp(i)
                                Worksheets("tableau3").Activate
                                    Cells(i + 1, 1) = EC

                                Worksheets("DCi").Activate
                            nb_EC_par_groupe = nb_EC_par_groupe + 1
                        End If
                    End If
                End If
            End If
        End If
    Next

Next ligne_DCi

End Sub

Voilà un début de code que j'ai fait, les EC sont les lettre de mon expression détectéé

Rechercher des sujets similaires à "tableau"