Utilisation des fonctions VBA qui renvoient un tableau dans Excel 2016

Les formules matricielles sont l'une des fonctionnalités les plus puissantes d'Excel. Si vous êtes familier avec les formules matricielles, vous serez heureux de savoir que vous pouvez créer des fonctions VBA qui renvoient un tableau.

Renvoyer un tableau de noms de mois

Commençons par un exemple simple. La fonction MonthNames renvoie un tableau de 12 éléments de noms de mois, vous l'aurez deviné.

Fonction MonthNames()
  MonthNames = Array("Janvier", "Février", "Mars", _
   "Avril", "Mai", "Juin", "Juillet", "Août", _
   "Septembre Octobre Novembre Décembre")
Fonction de fin

Pour utiliser la fonction MonthNames dans une feuille de calcul, vous devez la saisir sous forme de formule matricielle à 12 cellules. Par exemple, sélectionnez la plage A2:L2 et entrez =MonthNames() . Appuyez ensuite sur Ctrl+Maj+Entrée pour saisir la formule matricielle dans les 12 cellules sélectionnées. Découvrez le résultat.

Utilisation des fonctions VBA qui renvoient un tableau dans Excel 2016

Utilisation de la fonction MonthNames pour renvoyer un tableau de 12 éléments.

Si vous souhaitez que les noms de mois s'affichent dans une colonne, sélectionnez 12 cellules dans une colonne et utilisez cette formule matricielle. (N'oubliez pas de le saisir en appuyant sur Ctrl+Maj+Entrée.)

=TRANSPOSER(NomsMois())

Vous pouvez également choisir un seul mois dans le tableau. Voici une formule (pas une formule matricielle) qui affiche le quatrième élément du tableau : April.

=INDEX(NomsMois(),4)

Retour d'une liste triée

Supposons que vous ayez une liste de noms que vous souhaitez afficher dans un ordre trié dans une autre plage de cellules. Ne serait-il pas agréable d'avoir une fonction de feuille de calcul pour vous ?

Cette fonction personnalisée fait exactement cela : elle prend une plage de cellules à une seule colonne comme argument, puis renvoie un tableau de ces cellules triées. La plage A2:A13 contient quelques noms. La plage C2:C13 contient cette formule matricielle multicellulaire. (N'oubliez pas que vous devez saisir la formule en appuyant sur Ctrl+Maj+Entrée.)

Utilisation des fonctions VBA qui renvoient un tableau dans Excel 2016

Utilisation d'une fonction personnalisée pour renvoyer une plage triée.

=Trié(A2:A13)

Voici le code de la fonction Sorted :

Fonction triée (Rng As Range)
  Dim SortedData() en tant que variante
  Dim Cell As Range
  Dim Temp As Variant, i As Long, j As Long
  Dim NonVide aussi longtemps
' Transférer les données vers SortedData
  Pour chaque cellule dans Rng
    Si non est vide (cellule) alors
      NonVide = NonVide + 1
      ReDim Preserve SortedData (1 à non vide)
      SortedData(NonEmpty) = Cell.Value
    Fin si
  Cellule suivante
' Trier le tableau
  Pour i = 1 à non vide
    Pour j = i + 1 à non vide
      Si SortedData(i) > SortedData(j) Alors
        Temp = SortedData(j)
        SortedData(j) = SortedData(i)
        Données triées(i) = Temp
      Fin si
    j suivant
  Ensuite je
' Transposer le tableau et le retourner
  Trié = Application.Transpose (SortedData)
Fonction de fin

La fonction Sorted commence par créer un tableau nommé SortedData. Ce tableau contient toutes les valeurs non vides de la plage d'arguments. Ensuite, le tableau SortedData est trié à l'aide d'un algorithme de tri à bulles. Le tableau étant un tableau horizontal, il doit être transposé avant d'être renvoyé par la fonction.

La fonction triée fonctionne avec une plage de n'importe quelle taille, tant qu'elle se trouve dans une seule colonne ou ligne. Si les données non triées sont dans une ligne, votre formule doit utiliser la fonction TRANSPOSE d'Excel pour afficher les données triées horizontalement. Par exemple:

=TRANSPOSER(Trié(A16:L16))

Leave a Comment

Comment définir les options de vérification linguistique de Word 2010

Comment définir les options de vérification linguistique de Word 2010

Découvrez comment configurer les options de vérification linguistique dans Word 2010 pour améliorer votre rédaction et éviter les erreurs.

Comment utiliser la fonction CONFIANCE dans Excel

Comment utiliser la fonction CONFIANCE dans Excel

Découvrez comment utiliser les fonctions CONFIDENCE.NORM et CONFIDENCE.T dans Excel pour calculer des intervalles de confiance pour les moyennes de population, améliorant ainsi la prise de décision basée sur des données.

Formater les nombres en milliers et en millions dans les rapports Excel

Formater les nombres en milliers et en millions dans les rapports Excel

Améliorez la lisibilité de vos rapports Excel en formatant vos chiffres en milliers ou millions avec des astuces simples et efficaces pour votre audience.

Comment personnaliser vos étiquettes de données de graphique croisé dynamique Excel

Comment personnaliser vos étiquettes de données de graphique croisé dynamique Excel

Apprenez comment personnaliser vos étiquettes de données dans Excel pour un meilleur rapport. Utilisez les valeurs de votre tableau croisé dynamique efficacement.

Comment créer une application Web Access

Comment créer une application Web Access

Découvrez comment créer une application Web dans Access 2016. Apprenez les étapes essentielles pour développer votre application en ligne facilement.

Comment utiliser les commentaires dans Microsoft Word 2019

Comment utiliser les commentaires dans Microsoft Word 2019

Découvrez comment ajouter, répondre, afficher et supprimer des <strong>commentaires dans Microsoft Word</strong> 2019 pour optimiser votre collaboration.

Feuille intelligente 9.1.1

Feuille intelligente 9.1.1

Smartsheet est une plateforme de travail dynamique qui vous permet de gérer des projets, de créer des flux de travail et de collaborer avec votre équipe.

SharePoint

SharePoint

SharePoint est un système de collaboration basé sur le Web qui utilise une variété d'applications de flux de travail, des bases de données de « liste » et d'autres composants Web, ainsi que des fonctionnalités de sécurité pour donner le contrôle aux groupes professionnels qui travaillent ensemble.

Calendrier perpétuel 1.0.38/1.0.36

Calendrier perpétuel 1.0.38/1.0.36

Van Nien Calendar est une application d'affichage de calendrier sur votre téléphone, vous aidant à voir rapidement la date luni-solaire sur votre téléphone, organisant ainsi votre travail important.

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook est une application commerciale et de productivité développée par Microsoft Corporation.