A L AIDE!!! utiliser les fonctions excel sous vba?
tibogl
Messages postés42Date d'inscriptionmercredi 26 janvier 2005StatutMembreDernière intervention25 avril 2006
-
16 déc. 2005 à 09:32
chaudier37
Messages postés209Date d'inscriptionjeudi 5 août 2004StatutMembreDernière intervention15 juillet 2009
-
22 sept. 2008 à 22:36
Bonjour, mon problème est le suivant je souhaiterais utiliser les fonctions excel au sein meme d'une macro, sans passer par une cellule excel en mettant cell.value="=sum(etcetc)
je ne veux pas toucher a la feuille excel, je veux que tous les calculs soient implémentés dans la macro elle meme.
Pourriez vous m'indiquer si il existe une formule pour utiliser les fonctions excel sous vba?
Merci d'avance
nanou1605
Messages postés36Date d'inscriptionmercredi 10 mars 2004StatutMembreDernière intervention15 décembre 2006 16 déc. 2005 à 10:52
Bonjour,
voici ce que j'ai trouvé :
Sub Bouton1_QuandClic()
Dim t As Double
Dim myRange As Range
Set myRange = Worksheets("Feuil1").Range("G1:G5")
t = Application.WorksheetFunction.Sum(myRange)
MsgBox t
End Sub
'******************************************
Tout ceci se trouve dans l'aide VBA
'******************************************
Utilisation des fonctions de feuille de calcul Microsoft Excel dans Visual Basic
Vous pouvez utiliser la plupart des fonctions de feuille de calcul Microsoft Excel dans vos instructions Visual Basic. Pour afficher la liste des fonctions de feuille de calcul disponibles, consultez Liste des fonctions de feuille de calcul disponibles dans Visual Basic.
Remarque Certaines fonctions de feuille de calcul n'ont pas d'utilité dans Visual Basic. Par exemple, la fonction Concatenate n'est pas nécessaire puisque l'opérateur & de Visual Basic permet d'associer plusieurs valeurs de texte.
Appel d'une fonction de feuille de calcul à partir de Visual Basic
Dans Visual Basic, les fonctions de feuille de calcul Microsoft Excel sont disponibles par l'intermédiaire de l'objet WorksheetFunction.
La procédure Sub suivante utilise la fonction de feuille de calcul Min pour déterminer la plus petite valeur d'une plage de cellules. La variable maPlage est d'abord déclarée en tant qu'objet Range, puis se voit affecter la plage A1:C10 située dans la feuille Sheet1. Une autre variable, réponse, se voit affecter la valeur résultant de l'application de la fonction Min à maPlage. Enfin, la valeur de réponse est affichée dans une boîte de message.
Sub UseFunction()
Dim myRange As Range
Set myRange = Worksheets("Sheet1").Range("A1:C10")
answer = Application.WorksheetFunction.Min(myRange)
MsgBox answer
End SubSi vous utilisez une fonction de feuille de calcul qui requiert une référence de plage comme argument, vous devez indiquer un objet Range. Par exemple, vous pouvez utiliser la fonction de feuille de calcul Match pour rechercher une plage de cellules. Dans une cellule de feuille de calcul, vous devez taper une formule telle que =MATCH(9,A1:A10,0). En revanche, dans une procédure Visual Basic, vous spécifiez un objet Range pour obtenir le même résultat.
Sub FindFirst()
myVar = Application.WorksheetFunction _
.Match(9, Worksheets(1).Range("A1:A10"), 0)
MsgBox myVar
End SubRemarque Les fonctions Visual Basic n'utilisent pas le qualificateur WorksheetFunction. Une fonction Visual Basic peut avoir le même nom qu'une fonction Microsoft Excel tout en fonctionnant différemment. Par exemple, Application.WorksheetFunction.Log et Log renvoient des valeurs différentes.
Insertion d'une fonction de feuille de calcul dans une cellule
Pour insérer une fonction de feuille de calcul dans une cellule, spécifiez la fonction en tant que valeur de la propriété Formula de l'objet Range correspondant. Dans l'exemple suivant, la fonction de feuille de calcul RAND (qui génère un nombre aléatoire) est affectée à la propriété Formula de la plage A1:B3 située dans la feuille Sheet1 du classeur actif.
Sub InsertFormula()
Worksheets("Sheet1").Range("A1:B3").Formula = "=RAND()"
End Sub
'********************************
Exemple :
Exemple d'utilisation des fonctions de feuille de calcul dans Visual Basic
Cet exemple montre comment utiliser la fonction de feuille de calcul Pmt pour calculer le remboursement d'un prêt immobilier (loan). Notez que cet exemple utilise la méthode InputBox plutôt que la fonction InputBox pour que la méthode puisse procéder à la vérification des données saisies. Les instructions Static obligent Visual Basic à conserver les valeurs des trois variables, qui deviennent les valeurs par défaut lors de la prochaine exécution du programme.