Appel d'un outil Excel dans une macro [Résolu]

Signaler
Messages postés
3
Date d'inscription
dimanche 10 mai 2020
Statut
Membre
Dernière intervention
10 mai 2020
-
Messages postés
3
Date d'inscription
dimanche 10 mai 2020
Statut
Membre
Dernière intervention
10 mai 2020
-
Bonjour à tous,

Ma question est la suivante: est-il possible d'appeler simplement un outil d'Excel dans une macro ? Si oui, comment ?

Par exemple: j'ai un tableau avec des noms d'aliments dans une colonne et dans les colonnes suivantes, à droite, j'ai les informations nutritionnelles de ces aliments. Lorsque je souhaite trier ce tableau (les aliments) par ordre alphabétique, l'outil manuel d'Excel le fait très bien et très intelligemment en triant les aliments et, surtout, en gardant les propriétés nutritionnelles associées à chaque aliment. (j'espère être clair jusqu'ici)
J'ai fait une macro permettant d'ajouter à ce tableau, des nouveaux aliments avec leurs propriétés (on renseigne un ou plusieurs aliments sur une feuille, on clique sur le bouton associé à la macro, les aliments et leurs propriétés vont dans la base de donnée qui est dans une autre feuille).
Mais voilà, ces aliments ne sont pas triés alphabétiquement et le processus de tri manuel, bien que simple et efficace, devient fastidieux s'il doit être répété à chaque ajout.
J'ai donc cherché à implémenter le tri à la fin de la macro d'ajout des nouveaux aliments afin qu'il trie à chaque fois qu'un nouvel aliment est ajouté, mais tout à l'air bien compliqué et fait appel à des notions de code VBA que je n'ai pas (et j'ai du mal à utiliser un code que je ne comprends pas).
D'où ma question: est-il possible, simplement, de dire vulgairement à Excel "applique l'outil sur cette plage de donnée" et que la magie s'opère. Et comment ?

Merci d'avoir pris le temps de m'avoir lu et de vos futures réponses =)

Cordialement
Myrrhyn

3 réponses

Messages postés
14874
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
30 mai 2020
413
Bonjour
Connais tu l’enregistreur de macro?
https://fauconnier.developpez.com/tutoriels/excel-enregistreur-macro/
Messages postés
3
Date d'inscription
dimanche 10 mai 2020
Statut
Membre
Dernière intervention
10 mai 2020

Bonjour,
Non je ne connaissais pas. Merci de cet outil, je vais m'y pencher car cela semble être d'une aide certaine !
Merci à vous :)
Messages postés
8174
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
31 mai 2020
19
Bonjour,

Trier un tableau n'a rien de compliqué.
Par exemple, pour un tableau sur la feuille Feuil1 qui commence en A1,
Pour trier la colonne 3 dans l'ordre décroissant et colonne 2 dans l'ordre croissant :
Sub MonTri()
  With Worksheets("Feuil1").Range("A1").CurrentRegion
    .Sort Key1:=.Cells(1, 3), Order1:=xlDescending, _
          Key2:=.Cells(1, 2), Order2:=xlAscending, _
          Header:=xlYes, MatchCase:=False
  End With
End Sub

--
Cordialement
Patrice

Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.
Messages postés
3
Date d'inscription
dimanche 10 mai 2020
Statut
Membre
Dernière intervention
10 mai 2020

Merci !

Je ne sais pas vraiment si ça répond à la question: est-ce qu'il est possible d'appeler un outil Excel dans une macro et comment (à moins que le terme "order1:=xlNomDeLaCommandeExcel,_" soit le code d'appel ?)
Mais dans tous les cas, j'ai compris votre code et je l'ai ajouté à ma macro et ça résout mon problème. Donc merci à vous :)