Transposer des données en tant que valeur

Fermé
Xenos1705 Messages postés 93 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 11 juin 2018 - 22 mars 2018 à 09:56
didibonf Messages postés 419 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 21 mai 2019 - 22 mars 2018 à 12:17
Bonjour,

J’ai le code suivant:
Sub MAJBDD() 
Dim TInfos, PCV

Application.ScreenUpdating = False

'mémoriser les données
TInfos = Sheets("Formulaire").Range("M12:M26")
'--------------------Ecriture des donnees----------------------
With Worksheets("Activités")
PCV = .Range("A" & Rows.Count).End(xlUp).Row + 1 'premier cellule vide colonne A
If PCV < 2 Then PCV = 2
.Range("A" & PCV & ":D" & PCV) = Application.Transpose(Sheets("Formulaire").Range("M12:M15"))
.Range("F" & PCV & ":P" & PCV) = Application.Transpose(Sheets("Formulaire").Range("M16:M26"))
End With
'----------------------------------------------------------------------
'Rendre vierge le formulaire
With Sheets("Formulaire")
.Select
.Range("M12:M13").ClearContents
.Range("M13").Select
ActiveCell.FormulaArray = _
"=MAX(IF(R12C13=Activités!R2C1:R1000C1,Activités!R2C2:R1000C2,""""))"
.Range("M16").Select
ActiveCell.FormulaArray = _
"=INDEX(Activités!R2C6:R1000C6,MATCH(MAX(IF(Formulaire!R12C13=Activités!R2C1:R1000C1,Activités!R2C2:R1000C2,""""))&Formulaire!R12C13,Activités!R2C2:R1000C2&Activités!R2C1:R1000C1,0))"
Range("M18").Select
ActiveCell.FormulaArray = _
"=INDEX(Activités!R2C8:R1000C8,MATCH(MAX(IF(Formulaire!R12C13=Activités!R2C1:R1000C1,Activités!R2C2:R1000C2,""""))&Formulaire!R12C13,Activités!R2C2:R1000C2&Activités!R2C1:R1000C1,0))"
Range("M19").Select
ActiveCell.FormulaArray = _
"=INDEX(Activités!R2C9:R1000C9,MATCH(MAX(IF(Formulaire!R12C13=Activités!R2C1:R1000C1,Activités!R2C2:R1000C2,""""))&Formulaire!R12C13,Activités!R2C2:R1000C2&Activités!R2C1:R1000C1,0))"
Range("M20").Select
ActiveCell.FormulaArray = _
"=INDEX(Activités!R2C10:R1000C10,MATCH(MAX(IF(Formulaire!R12C13=Activités!R2C1:R1000C1,Activités!R2C2:R1000C2,""""))&Formulaire!R12C13,Activités!R2C2:R1000C2&Activités!R2C1:R1000C1,0))"
.Range("M12").Select
End With

Application.ScreenUpdating = True

End Sub


Dans ma ligne de code suivante:
.Range("F" & PCV & ":P" & PCV) = Application.Transpose(Sheets("Formulaire").Range("M16:M26"))

Est il possible de la compléter ce cod afin qu’il transpose les données de M16:M26 en tant que valeur?

2 réponses

Xenos1705 Messages postés 93 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 11 juin 2018
22 mars 2018 à 11:19
Bonjour Jauster,

Merci pour votre réponse mais comment l’adapter à mon code?

Je peine un peu.

Merci d’avance
0
didibonf Messages postés 419 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 21 mai 2019 95
22 mars 2018 à 12:17
Bonjour,
Quand je teste cette ligne de code c'est uniquement les valeurs qui sont transposées (pas de formule ni de mise en forme). Qu'est-ce qui pose problème dans votre cas ?
0