Tableau excel: mettre une ligne en colonne

Maxoverfred

XLDnaute Occasionnel
Bonjour, j'ai fait quelques recherches sur le croisement de données mais généralement on ne parle pas de mon cas 'simple'
Voici la problématique, j'ai des valeurs dans mes enregistrements que j'aimerais mettre en colonne...

en exemple cela donne ceci, j'ai besoin de

NOM NATIONALITE VILLE
--------------------------------------------
TOTO1 Belge Bruxelles
TOTO2 Espagnol Madrid
TOTO3 Italie Rome
TOTO4 Italie Palerme

Et je voudrais donc

1) Croisement des données

NOM BELGE ESPAGNOL ITALIE
---------------------------------------------------
TOTO1 Bruxelles
TOTO2 Madrid
TOTO3 Rome
TOTO4 Palerme

Donc pour distinguer de manière unique les valeurs dans la colonne Nationalité, cela peut aller avec la fonction suivante

________________________
Sub test()
ListeValUniques Range('K2:K50'), Range('O1')
End Sub

Sub ListeValUniques(PlageSrc As Range, CellDest As Range)
Dim Arr1, Elt, Arr2(), Coll As New Collection

If PlageSrc.Columns.Count > 1 Then Exit Sub
Arr1 = PlageSrc.Value

For Each Elt In Arr1
On Error Resume Next
Coll.Add Elt, CStr(Elt)
If Err.Number = 0 Then
ReDim Preserve Arr2(1 To Coll.Count)
Arr2(Coll.Count) = Elt
End If
On Error GoTo 0
Next
CellDest.Resize(Coll.Count).Value = _
Application.Transpose(Arr2)
End Sub
______________________
2) Faut juste que je lui dise de mettre les valeurs uniques dans les colonnes à droite de la dernière colonne.
3) Parcourir tous les records de ma feuille et à chaque fois remplir la nouvelle colonne avec la valeur correspondante.

Le but étant de réduire les interventions manuelles, le fait de construire un pivottable n'est pas retenu.. car j'aimerais que ce soit une manoeuvre automatique en arrière plan qui fasse tout le travail et vu que le fichier source change chaque semaine..
Si quelqu'un a une piste rapide, merci.

Message édité par: maxoverfred, à: 13/08/2005 22:17

Message édité par: maxoverfred, à: 14/08/2005 11:04
 

Maxoverfred

XLDnaute Occasionnel
Tu pourras venir me remplacer au boulot, mais en l'occurence tu pourras partir au tchéquie ou autre pays lointain.. car je ne fais que créér des petits outils pour des autres pays.. donc tu reste ici, et je vais sur place faire l'implémentation, marché conclu :)
Et si on sors de cet exercice indemne, promis, je t'envois mon userform avec centaines de champs et je te mets un bug dedans, histoire de monter en puissance dans les challenges.. :) :)

Bon, pendant que tu manges.. je résume

Reste a créer la collection hein.. car Tp je l'aime bien.. mais faudrait que je le remplisse :)
et ensuite effectivemet, avec un find, je pourrait retrouver la colonne et placer le numéro de cette colonne dans la valeur c.. de ton code.. oufti.. je vais aller me chercher a manger...
 

ChTi160

XLDnaute Barbatruc
re

la collection est créer mais je t'ai mis un extrait lol

Code:
With Worksheets('Salaire')
derlgn = .Range('B65535').End(xlUp).Row
TabTemp = .Range('B2:D' & derlgn).Value
For L = 1 To UBound(TabTemp, 1)
On Error Resume Next
Tp.Add TabTemp(L, 2), CStr(TabTemp(L, 2))
On Error GoTo 0

Next
End With
With Worksheets('Personnel')

 derlgn2 = .Range('A65536').End(xlUp).Row
           .Range('E1:IV' & derlgn).ClearContents
 For c = 1 To Tp.Count
  dercol = .Range('A1').End(xlToRight).Column + 1
           .Cells(1, dercol) = Tp(c)
 Next

le find c'est fait aussi
mais un peu plus bas dans la procèdure

moi j'aime les voyages lol je suis controleur à La SNCF si tu ne l'avais pas vu dans la présentation des membres mais bon la Tchéquie le TGV y passe pas lol
 

ChTi160

XLDnaute Barbatruc
re
une version5 pour pastienter
je nai pas effacé les données en feuille Personnel arfffff la Faim
a plus

Message édité par: Chti160, à: 20/08/2005 12:47 [file name=CroisementDonneesV5.zip size=24581]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/CroisementDonneesV5.zip[/file]

Message édité par: Chti160, à: 20/08/2005 12:48
 

Pièces jointes

  • CroisementDonneesV5.zip
    24 KB · Affichages: 50

Maxoverfred

XLDnaute Occasionnel
Et on dit quoi, on dit MERCI à Jean-Marie !!!
Je crois qu'on y est.. reste plus qu'a mettre cela dans mon vrai exercice, regarder les failles du système (je riogole) et accueillir toutes les féliciations...
Beau boulot et belle perséverance.
Passe un bon week-end... et bonjour aux contrôleurs de train.. on risque pas de se croiser des masses surtout en Belgique :) mais dès que je passe en france, je crie, jean-marie :)
 

Statistiques des forums

Discussions
312 319
Messages
2 087 213
Membres
103 494
dernier inscrit
JP9231