Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 codes postaux - transposition

Moi69

XLDnaute Occasionnel
Bonjour

J'espère que vous allez tous bien en cette période de fête.
J'aurai besoin d'un petit coup de main sur le fichier en PJ. Je souhaite, à partir de la feuille 1 avoir le résultat de la feuille 3 (je ne sais pas comment l'expliquer plus simplement, sorry).

Je vous remercie par avance et vous souhaite de bonnes fêtes de fin d'année.
 

Pièces jointes

  • CODE POSTAL TRANSPOSE.xlsx
    783.5 KB · Affichages: 15

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Moi, Djidji,
Ou encore en macro avec suppression des doublons et tri alpha par colonne. Avec :
VB:
Sub Transposition()
Dim T, C%, L%, i
T = [DATA_VILLES]                                   ' tableau ville en array
Sheets("Feuil3").Select
Cells.Clear                                         ' Effacement feuille
Application.ScreenUpdating = False
C = 0
CodPost = ""
For i = 1 To UBound(T)                              ' Pour tous les codes
    If T(i, 1) <> CodPost Then                      ' Si le code a changé
        C = C + 1: L = 2                            ' Colonne suivante, ligne=2
        CodPost = T(i, 1)                           ' Re init CodPost
        Cells(1, C) = Format(CodPost, "00000")      ' Init code en ligne 1
    End If
    Cells(L, C) = T(i, 2)                           ' Copie ville
    L = L + 1                                       ' Ligne suivante
Next i
For C = 1 To Cells(1, Columns.Count).End(xlToLeft).Column               ' Pour toutes les colonnes
    ActiveSheet.Columns(C).RemoveDuplicates Columns:=1, Header:=xlYes   ' Suppression doublons
    Range(Cells(1, C), Cells(1000, C)).Resize(1000).Sort key1:=Cells(1, C), order1:=xlAscending, Header:=xlYes ' Tri alpha
Next C
With Rows("1:1")                                    ' Ligne 1
    .HorizontalAlignment = xlCenter                 ' Centrage H
    .VerticalAlignment = xlBottom                   ' Centrage V
    .Font.Bold = True                               ' Gras police 12
    .Font.Size = 12
End With
[A:IJA].Columns.AutoFit                             ' Largeur auto des colonnes
End Sub
NB:
1- C'est assez long à traiter.
2- PJ en xlsb pour passer sous la barre des 1Mo, idem que xlsm sous Windows ou Ios, incompatible Android.
 

Pièces jointes

  • CODE POSTAL TRANSPOSE.xlsb
    744.4 KB · Affichages: 5

fanfan38

XLDnaute Barbatruc
Bonjour
ATTENTION! tu as des doublons.... (en rouge)
Ci joint ma solution
La macro se lance en appuyant simultanement sur CTRL+Shift+W

A+ François
 

Pièces jointes

  • CODE POSTAL TRANSPOSE.xlsm
    820.3 KB · Affichages: 2

Cousinhub

XLDnaute Barbatruc
Bonjour,
Une version sans macro, ni formules, en utilisant Power Query.
Dans ce fichier, je n'ai pas chargé la requête, afin de ne pas surcharger.
Je supprime également les doublons.
Une fois ouvert, tu cliques dans le ruban "Données" sur "Requêtes et connexions"
Puis, à droite, tu fais un clic droit sur la requête, "Charger dans..."

Et là, tu sélectionnes "Tableau" et "Nouvelle feuille de calcul"


Et ton tableau apparaît.
Bonne apm
 

Pièces jointes

  • CODE POSTAL TRANSPOSE.xlsx
    862.4 KB · Affichages: 8

Moi69

XLDnaute Occasionnel
Bonjour à tous

Alors là, chapeau tout le monde. Autant de solution pour mon problème. Merci à tous, je vais les tester et voir celle qui me convient le mieux.

Passez de bonnes fêtes et encore merci
 

Moi69

XLDnaute Occasionnel
Wahou...
Je viens de les tester. Encore un grand merci cat vous m'avez fait gagner un temps fou.
Un spécial merci à Cousinhub, sa solution avec powerquery a été parfaite. C'est celle que j'ai adopté.
 

Discussions similaires

Réponses
9
Affichages
438
Réponses
0
Affichages
129
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…