faire appel à une fonction dans une macro

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : faire appel à une fonction dans une macro

Un exemple très simple qui met une valeur dans la cellule A1 et son carré dans la cellule B1 :

Code:
Sub Macro1()
    Cells(1, 1) = 125
    Cells(1, 2) = Puissance2(Cells(1, 1))
End Sub

Function Puissance2(ByVal Valeur As Integer) As Long
    Puissance2 = Valeur * Valeur
End Function
 
Re : faire appel à une fonction dans une macro

Bonjour loiclass,

Il faudrai que tu précises ta question. Si tu veux faire appel à une fonction que tu as défini (par exemple "MaFonction" qui utilise 2 arguments a et b et dont tu veux inscrire la valeur en A1), il te suffit de taper ceci :
Code:
[A1] = MaFonction(a, b)

Si par contre tu parles des fonctions de feuille de calcul (par exemple "SOMME(A1:C20)"), alors il te faut utiliser cette syntaxe :
Code:
WorksheetFunction.Sum([A1:C20])

A+
 
Re : faire appel à une fonction dans une macro

Merci, mais je n'y arrive pas avec cette méthode.

J'ai une fonction qui détermine le numéro de semaine.

Function semaine(D As Date) As Long
semaine = DatePart("WW", D, vbMonday, vbFirstFourDays)
End Function

Dans ma feuille excel, j'ai des dates en colonne A. Je veux que le numéro de semaine se mette en colonne C grâce à cette fonction.

Merci.
 
Re : faire appel à une fonction dans une macro

Bonjour,
Rappel : une fonction personnalisée doit toujours être écrite dans un module standart (Module1)
Dans ce contexte tu peux écrire :
Code:
Sub Test()
     Feuil1.Cells(1, 3) = semaine(Feuil1.Cells(1, 1))
End Sub
A+
 
Re : faire appel à une fonction dans une macro

Re-bonjour,

En fait c'est tout simple. Si ta 1° date est en A1, tu mets en C1 :
Code:
=semaine(A1)
Ensuite, tu tires la formule vers le bas.

Remarque : Contrairement à ce que tu as demandé, ce n'est pas faire appel à une fonction dans une macro mais faire appel à une fonction personnalisée dans une feuille de calcul.

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
176
Réponses
19
Affichages
650
Réponses
18
Affichages
603
Réponses
5
Affichages
155
Retour