Classer un texte en plusieurs colonnes pour en faire une base de données Access

quinox31

XLDnaute Nouveau
Bonjour

Je souhaiterai faire appel a vos connaissances car malgres quelques heures passés a chercher une formule, ou outils vba pour arriver a classer des adresses afin d'en faire une base de données access exploitable!!!!
Alors voila :

COLONNE 1

40 HENRI Martin ALLO TAXI
Transports de voyageurs par taxis (4932Z)
2 Route du Puis 31470 SAINT-LYS

41 PIERRE Dupond
Transports de voyageurs par taxis (4932Z)
36 avenue du Chat 31000 TOULOUSE

En :
Colonnes 1 Colonnes 2 Colonnes 3 Colonnes 4
HENRI Martin ALLO TAXI 2 route du Puis 31470 SAINT LYS
PIERRE Dupond 36 avenue du Chat 31000 TOULOUSE


En esperant que quelqu'un trouve un moyen de classer tout ca !!!
 

Pièces jointes

  • Classeur test.xls
    16 KB · Affichages: 52
  • Classeur test.xls
    16 KB · Affichages: 60
  • Classeur test.xls
    16 KB · Affichages: 58

Dranreb

XLDnaute Barbatruc
Re : Classer un texte en plusieurs colonnes pour en faire une base de données Access

Bonjour.
en colonne G
Code:
=DECALER($A$1;4*LIGNE()-4;0)
Code:
=DECALER($A$1;4*LIGNE()-2;0)
Permet d'avoir l'adresse en colonne H, mais non découpée sur le code postal. je crois qu'une petite fonction personnalisée effectuerait ce découpage, et je vous l'écrirait si personne ne trouve de formule.
À+
 
Dernière édition:

quinox31

XLDnaute Nouveau
Re : Classer un texte en plusieurs colonnes pour en faire une base de données Access

merci DRANREB cela m'avance beaucoup dans mon travail et ta réponse et très rapide

je vais voir si j'arrive a faire la formule personnalisé que tu parles.
 

Efgé

XLDnaute Barbatruc
Re : Classer un texte en plusieurs colonnes pour en faire une base de données Access

Bonjour quinox31, Dranreb,
Une proposition par macro. Reste à vérifier que tous les cas de figures seront bien pris en compte.
VB:
Sub adresses()
Dim i&, J&, X&, Tablo(), Var(1 To 1), Ville$, Rue$
With Sheets("Feuil1")
    For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row - 2 Step 4
        J = J + 1
        ReDim Preserve Tablo(1 To 4, 1 To J)
        Temp = Split(.Cells(i + 2, 1), " ")
        For K = 1 To UBound(Temp)
            If IsNumeric(Temp(K)) Then
                Var(1) = K
                Exit For
            End If
        Next K
        Tablo(1, J) = Mid(.Cells(i, 1), 4, Len(.Cells(i, 1)) - 4)
        For X = 0 To Var(1) - 1
            Rue = Rue & " " & Temp(X)
        Next X
        Tablo(2, J) = Rue
        Tablo(3, J) = Temp(Var(1))
        For X = Var(1) + 1 To UBound(Temp)
            Ville = Ville & " " & Temp(X)
        Next X
        Tablo(4, J) = Ville
        Erase Var
        Ville = ""
        Rue = ""
    Next i
    .Cells(5, 7).Resize(UBound(Tablo, 2), UBound(Tablo, 1)) = Application.Transpose(Tablo)
End With
End Sub
Cordialement
 

Pièces jointes

  • quinox31(2).xls
    32 KB · Affichages: 113

quinox31

XLDnaute Nouveau
Re : Classer un texte en plusieurs colonnes pour en faire une base de données Access

Merci beaucoup j'y ai travailler dessus longuement et vous en 2h vous u arriver par formules et macro !!! Trop fort les mecs !!!

Encore merci pour votre précieuse aide

Comme je l'ai déjà dis dans un autre topic, je suis pas bon sur excel mais excellent en automobile, alors si vous avez une question ou un conseil suite a un choc, un achat..... n'hésitez pas a m'en parler.
 

supercrapaud

XLDnaute Occasionnel
Re : Classer un texte en plusieurs colonnes pour en faire une base de données Access

Bonjour,

Bravo pour les formules. Existe-t-il un tuto dans ce site sur les formules notamment comment les combiner pour obtenir ce genre de résultat sur fichier ? Moi je n'ai pas trouvé... Merci à vous.
 

hoerwind

XLDnaute Barbatruc
Re : Classer un texte en plusieurs colonnes pour en faire une base de données Access

Bonjour,

Je vais tourner la question autrement :
Existe-t-il un tuto dans un site sur des pièces détachées d'un moteur notamment comment les combiner pour construite un moteur (qui marche !) ?
Moi non plus j'ai pas trouvé !

Écrire une formule peut être comparé à écrire une phrase.
Il faut d'abord savoir avec précision ce qu'on veut dire, ensuite trouver les mots qui l'exprime tout en respectant l'orthographe et la grammaire.
 

Statistiques des forums

Discussions
312 182
Messages
2 086 003
Membres
103 084
dernier inscrit
Hervé30120