Transposer des données
c = Application.Transpose(Range("A1:C4"))
Pour transposer C vers la plage E10 ...
Range("E10").Resize(UBound(c, 1), UBound(c, 2)) = c
Auteur : Denis Michon
Mots clefs associés à cette page : macro, décocher, transposer, transposition, vba, vbe
- Vous devez vous identifier ou créer un compte pour écrire des commentaires

Fonction renvoyant un vecteur
quelques commentaires pour retourner un vecteur à partir d'une fonction VBA
Exemple de fonction:
Public Function Valeurs_Uniques(Sel1 As Range) As Variant
Dim Tableau() As Variant
Dim I As Integer
Dim J As Integer
Dim Deja As Boolean
For I = 1 To Sel1.Rows.Count
If Sel1(I) <> "" Then
Deja = False
For J = 1 To UBound(Tableau)
If Tableau(J) = Sel1(I) Then
Deja = True
Exit For
End If
Next J
If Not Deja Then
ReDim Preserve Tableau(UBound(Tableau) + 1)
Tableau(UBound(Tableau)) = Sel1(I)
End If
End If
Next I
Valeurs_Uniques = Tableau
end function
Cette fonction renvoie un vecteur contenant que les valeurs uniques dans les cellules sélectionnées.
Par défaut ce vecteur est horizontal.
Pour renvoyer un vecteur vertical, il faut utiliser l'expression suivante:
Valeurs_Uniques = Application.Transpose(Tableau)
T Bertrand