OVH Cloud OVH Cloud

transformer mise en forme d'un tableau ?

3 réponses
Avatar
DA
Bonsoir
Quelle est la fonction ( si elle existe ) à uitliser pour avoir le resultat
dans la feuil2 d'aprés les données de la feuil1
J'ai essayé RecherchV sans résultat
Merci d'avance de votre aide

feuil1
nom fonction
toto OP
tutu OP1
tata OP
titi OP2
nono OP3
nana OP1
........ .............
feuil2
OP OP1 OP2 OP3
toto tutu titi nono
tata

3 réponses

Avatar
Pita
Bonjour,
Je ne pense pas que vous arriverez à vos fins simplement à l'aide des seules
fonctions de feuilles. Je vous suggèrerais plutôt une macro du genre suivant:
celle-ci est plutôt rudimentaire mais elle fait ce que vous voulez et permet
de suivre le processus logique. Elle suppose que dans la "Feuil1" la liste
(verticale) des noms porte le nom "noms" et que dans la "Feuill2", la liste
(horizontale des fonctions porte le nom "fonctions" :
-----------------------------------------------
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 2004-10-27 par Jean-Pierre Pastinelli
'

'
Sheets("Feuil1").Select
Application.Goto Reference:="noms"

For Each znom In Selection
zn = znom.Value
zfonction = znom.Offset(0, 1)
zf = zfonction
Sheets("Feuil2").Select
Application.Goto Reference:="fonctions"

For Each zfonct In Selection
If zfonct.Value = zfonction Then
zfonct.Select
boucle:
ActiveCell.Offset(1, 0).Select
If Len(Selection) <> 0 Then GoTo boucle
ActiveCell.Value = zn
End If

Next zfonct

Next znom
End Sub
----------------------------------------------
Bonne chance,
JPP

"DA" wrote:

Bonsoir
Quelle est la fonction ( si elle existe ) à uitliser pour avoir le resultat
dans la feuil2 d'aprés les données de la feuil1
J'ai essayé RecherchV sans résultat
Merci d'avance de votre aide

feuil1
nom fonction
toto OP
tutu OP1
tata OP
titi OP2
nono OP3
nana OP1
......... .............
feuil2
OP OP1 OP2 OP3
toto tutu titi nono
tata





Avatar
PMO
Bonjour,

Un code ci-dessous qui devrait faire avancer la chose.

'**********************
Option Explicit
Sub Resultat1To2()
Dim var
Dim S As Worksheet
Dim R As Range
Dim i&
Dim j&
If [a1] = "" Then
MsgBox "Les données doivent commencées en A1"
Exit Sub
End If
var = ActiveSheet.UsedRange
If UBound(var, 2) > 2 Then
MsgBox "Seules 2 colonnes sont permises."
Exit Sub
End If
Set S = Sheets.Add
Set R = Range(Cells(1, 1), _
Cells(UBound(var, 1), UBound(var, 2)))
R = var
Set R = Range(Cells(1, 1), _
Cells(UBound(var, 1), UBound(var, 2)))
[a1].Sort Key1:=Range(Cells(2, 2), Cells(2, 2)), _
Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:úlse, _
Orientation:=xlTopToBottom
Set R = Range(Cells(2, 1), _
Cells(UBound(var, 1), UBound(var, 2)))
var = R
Cells.Delete
Set R = [a1]
For i& = 1 To UBound(var, 1)
If i& = UBound(var, 1) Then Exit For
If i& = 1 Then
R = var(1, 2)
Set R = R.Offset(1, 0)
R = var(1, 1)
Else
If var(i&, 2) <> var(i& - 1, 2) Then
Set R = R.Offset(0, 1).End(xlUp)
R = var(i&, 2)
End If
Set R = R.Offset(1, 0)
R = var(i&, 1)
End If
Next i&
End Sub
'***************************

Cordialement.

PMO
Patrick Morange




Bonsoir
Quelle est la fonction ( si elle existe ) à uitliser pour avoir le resultat
dans la feuil2 d'aprés les données de la feuil1
J'ai essayé RecherchV sans résultat
Merci d'avance de votre aide

feuil1
nom fonction
toto OP
tutu OP1
tata OP
titi OP2
nono OP3
nana OP1
......... .............
feuil2
OP OP1 OP2 OP3
toto tutu titi nono
tata





Avatar
docm
Bonjour.

As-tu essayé avec un TCD ? Ca répondrait peut-être à tes attentes.

Amicalement.

"DA" wrote in message
news:417eb4ae$0$15748$
Bonsoir
Quelle est la fonction ( si elle existe ) à uitliser pour avoir le
resultat

dans la feuil2 d'aprés les données de la feuil1
J'ai essayé RecherchV sans résultat
Merci d'avance de votre aide

feuil1
nom fonction
toto OP
tutu OP1
tata OP
titi OP2
nono OP3
nana OP1
........ .............
feuil2
OP OP1 OP2 OP3
toto tutu titi nono
tata