supprimer arborescence tableau suite export

  • Initiateur de la discussion Initiateur de la discussion nickos2406
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

nickos2406

Guest
bonjour,

je vous contacte car je fais face à un soucis de mise en page d'un tableau de données que je récupère d'une extraction d'un logiciel...

Pour tout export, le tableau exporté est toujours hiérarchisé en sorte d'arborescence, à l'image de l'exemple ci-joint.

Le problème c'est que pour de l'analyse, c'est impossible de pouvoir faire quoi que ce soit, comme la hiérarchie des données est fonction du nombre d'espace devant l'intitulé du mot...

Du coup, je cherche un moyen pour identifier les différents niveaux (niveau 1, niveau 2...) afin de pouvoir avoir un tableau carré, à l'image de ce que les TCD en vue classique sont dans excel...

Merci par avance de votre aide

Niko
 

Pièces jointes

Re : supprimer arborescence tableau suite export

Bonsoir Nichos,

Avec que des formules je n'ai pas trouvé la solution.

Avec une macro peut être un peu alambiqué, ça peut fonctionner..

Elle restera à optimiser..
Combien de niveau de hiérarchie as tu au maximum ? Ici ça fonctionne avec 3


J'arrive à identifer une hiérarchie

0
---1
-------3 ou 4
en regardant combien d'espace dans l'intitulé. (colonne A pour exemple.
Mais ce n'est pas tout à fait fixe ... 3 ou 4 pour le niveau 3

Macro :

Code:
Sub hierarchie()
I = 2
X = 2
Test = True

While Test
    ' Identifier si Hiérarchie 0, 1, 3 ou 4
    VHIE1 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
    ' Garder le texte de hiérarchie 0
    TEXTE1 = Range("B" & I).Value
    I = I + 1
    
    VHIE1 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
    
    While VHIE1 <> 0
       VHIE1 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
       VHIE2 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
       TEXTE2 = Range("B" & I).Value
       I = I + 1
       VHIE2 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
       While VHIE2 <> 1 And VHIE1 <> 0
          
          Range("F" & X).Value = Trim(TEXTE1)
          Range("G" & X).Value = Trim(TEXTE2)
          Range("H" & X).Value = Trim(Range("B" & I).Value)
          Range("I" & X).Value = Trim(Range("C" & I).Value)
          I = I + 1
          X = X + 1
          VHIE2 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
          VHIE1 = Len(Range("B" & I).Value) - Len(Trim((Range("B" & I).Value)))
        Wend
    Wend
    If Range("B" & I).Value = vide Then
        Test = False
    End If
Wend
End Sub
 

Pièces jointes

Re : supprimer arborescence tableau suite export

Bonjour à tous.


Pas bien clair, tout ça... Si
(...) la hiérarchie des données est fonction du nombre d'espace devant l'intitulé (...)
alors Choux et Romans sont-ils vraiment au même niveau hiérarchique ?
Si oui, il faut préciser la fonction...

En attendant, un essai supposant qu'une espace de plus, c'est un niveau de plus.
Le nombre de niveaux n'est pas limité (voir le dernier onglet).​


Bonne journée.


ℝOGER2327
#7652


Jeudi 26 Haha 142 (Commémoration du Cure-dent - fête Suprême Quarte)
10 Brumaire An CCXXIII, 1,8685h - charrue
2014-W44-5T04:29:03Z
 

Pièces jointes

Dernière édition:
Re : supprimer arborescence tableau suite export

bonjour,

Merci beaucoup pour vos contributions et vos réponses! ca m'aide énormément!!!! Et pour autant que cela puisse paraitre, choux et BD sont sur le même niveau... c'est un exemple 🙂)

J'ai en fait max 6 niveaux, mais selon l'export que je fait, je ne demande pas systématiquement les 6 niveaux...

De tout façon, c'est déjà très enrichissant ce que vous avez communiqué, je vais tenter d'adapter la macro reçue.

Merci bcp encore

Bonne semaine
Nickos
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
9
Affichages
937
A
Réponses
2
Affichages
629
adie35
A
N
Réponses
5
Affichages
3 K
Nicocotte125
N
C
Réponses
3
Affichages
11 K
S
Z
Réponses
19
Affichages
2 K
zakintos84
Z
S
Réponses
4
Affichages
3 K
D
S
Réponses
2
Affichages
3 K
super_newbie_pro
S
Retour