Comment structurer fichier excel
Résolu/Fermé
B95190
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
-
28 juin 2010 à 18:01
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 - 29 juin 2010 à 09:57
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 - 29 juin 2010 à 09:57
A voir également:
- Comment structurer fichier excel
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Liste déroulante excel - Guide
- Fichier host - Guide
4 réponses
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 413
28 juin 2010 à 18:55
28 juin 2010 à 18:55
Bonjour
on peut y arriver par formule si le fichier est évolutif!mais avant de compliquer(c'est assez tordu), si vos données sont telles que vous le dites:
si on est sous excel 2007:
1° opération:
sélectionnez la colonne pour supprimer les "" qui nous embêtent et ne conserver que les virgules:
soit/ Onglet "Accueil" à droite: Recherche etc...
sélectionnez:
remplacer
en haut " en bas rien
et cliquez sur remplacer tout
ensuite, toujours avec la colonne sélectionnée:
onglet Données Outil de données / convertir
cochez "délimité" et "suivant" et "virgule" et "terminer"
vos données sont rangées en colonne selon les positions des virgules.
Ps vous pouvez aussi éviter la 1° opérations en choisissant: autre et en entrant " dans la case réservée.
Vous aurez alors une colonne vide entre chaque rubrique.
Crdlmnt
on peut y arriver par formule si le fichier est évolutif!mais avant de compliquer(c'est assez tordu), si vos données sont telles que vous le dites:
si on est sous excel 2007:
1° opération:
sélectionnez la colonne pour supprimer les "" qui nous embêtent et ne conserver que les virgules:
soit/ Onglet "Accueil" à droite: Recherche etc...
sélectionnez:
remplacer
en haut " en bas rien
et cliquez sur remplacer tout
ensuite, toujours avec la colonne sélectionnée:
onglet Données Outil de données / convertir
cochez "délimité" et "suivant" et "virgule" et "terminer"
vos données sont rangées en colonne selon les positions des virgules.
Ps vous pouvez aussi éviter la 1° opérations en choisissant: autre et en entrant " dans la case réservée.
Vous aurez alors une colonne vide entre chaque rubrique.
Crdlmnt
B95190
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
25
28 juin 2010 à 18:27
28 juin 2010 à 18:27
up?
B95190
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
25
28 juin 2010 à 21:21
28 juin 2010 à 21:21
Mercii beaucoup, j'ai essayé et ça fonctionne.J'ai une autre question, est il possible de faire en sorte que ces manipulations soit automatisées car je dois faire ce travail pour plusieurs fichiers.?
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 413
Modifié par Vaucluse le 28/06/2010 à 21:33
Modifié par Vaucluse le 28/06/2010 à 21:33
" est il possible de faire en sorte que ces manipulations soit automatisées "
... sans doute, mais moi je ne sais pas!
avec mes regrets
Bonne chance.
crdlmnt
Ps à tout hasard le libellé de la macro qui fait le travail:
Sub SEPARE()
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=True, Space:=True, Other:=False, FieldInfo:= _
Array(Array(1, 1), Array(2, 1), Array(3, 1),Array(4, 1), TrailingMinusNumbers:=True
End Sub
... sans doute, mais moi je ne sais pas!
avec mes regrets
Bonne chance.
crdlmnt
Ps à tout hasard le libellé de la macro qui fait le travail:
Sub SEPARE()
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=True, Space:=True, Other:=False, FieldInfo:= _
Array(Array(1, 1), Array(2, 1), Array(3, 1),Array(4, 1), TrailingMinusNumbers:=True
End Sub
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
29 juin 2010 à 09:57
29 juin 2010 à 09:57
voici une proposition pour automatiser mais à mon avis
la source de ton fichier aurait pu être redistribuer comme te l'as indiqué vaucluse.
note aussi 2 points :
1 ) je considère qu'il y a une ligne de titre donc je commence en A2
2) le 0 du numéro de telephone va disparaître il suffit d'appliquer le format spécial
pour l'affichage du tel.
bonne journée.
la source de ton fichier aurait pu être redistribuer comme te l'as indiqué vaucluse.
note aussi 2 points :
1 ) je considère qu'il y a une ligne de titre donc je commence en A2
2) le 0 du numéro de telephone va disparaître il suffit d'appliquer le format spécial
pour l'affichage du tel.
bonne journée.
Sub decoupage() Dim DerLig As Long Dim Ligne As String Dim K As Integer Dim I As Integer Range("A1").Select Selection.CurrentRegion.Select ' suppression des guillemets Selection.Replace What:="""", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False DerLig = Range("A65535").End(xlUp).Row ' je suppose que le tableau commence en A2 ' s'il commence en A1 : changer le 2 en 1 ' sur la ligne suivante K = 2 For I = 2 To DerLig Ligne = Cells(I, 1).Value While Len(Ligne) > 0 If Left(Ligne, 1) = "," Then K = K + 1 Ligne = Right(Ligne, Len(Ligne) - 1) Else Cells(I, K).Value = Cells(I, K) & Left(Ligne, 1) Ligne = Right(Ligne, Len(Ligne) - 1) End If Wend K = 2 Next End Sub