[VBA] retourner une chaîne de caractère
Résolu
macmat
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
macmat Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
macmat Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaiterais programmer sous excel une fonction qui reçoit en paramètre 2 réels quelconques et qui retourne une chaîne de caractère comprenant des réels.
Voici les différentes façons dont j'ai essayé de résoudre ce problème:
Function comp_cdf(a As Double, b As Double) As String
Dim x As String * 1
Dim c As Double
Dim d As Double
c = a + b
d = a * b
comp = -x ^ 3 / 3 + x ^ 2 / 2 * c - d * x
comp_cdf = comp
comp_cdf.Print
End Function
et
Function comp_cdf(a As Double, b As Double) As String
Dim x As String * 1
Dim c As Double
Dim d As Double
c = a + b
d = a * b
comp = -x ^ 3 / 3 + x ^ 2 / 2 * c - d * x
comp_cdf = comp
End Function
et
End Function
Function comp_cdf(a As Double, b As Double) As String
Dim x As String * 1
Dim c As Double
Dim d As Double
c = a + b
d = a * b
comp = -x ^ 3 / 3 + x ^ 2 / 2 * c - d * x
MsgBox comp
End Function
J'ai aussi modifié le type de retour par le type "Objet", toujours sans succès, et j'ai aussi essayé en ne définissant aucun type de retour. J'ai vu qu'il était possible de créer un type soit même mais cela représente un perte de temps incroyable.
En résumé cette fonction a pour finalité de recevoir deux réels "a" et "b" en paramètre et de retourner -x ^ 3 / 3 + x ^ 2 / 2 * (a + b) - a * b * x. Où x est un caractère.
Merci d'avance
Bien Cordialement
Je souhaiterais programmer sous excel une fonction qui reçoit en paramètre 2 réels quelconques et qui retourne une chaîne de caractère comprenant des réels.
Voici les différentes façons dont j'ai essayé de résoudre ce problème:
Function comp_cdf(a As Double, b As Double) As String
Dim x As String * 1
Dim c As Double
Dim d As Double
c = a + b
d = a * b
comp = -x ^ 3 / 3 + x ^ 2 / 2 * c - d * x
comp_cdf = comp
comp_cdf.Print
End Function
et
Function comp_cdf(a As Double, b As Double) As String
Dim x As String * 1
Dim c As Double
Dim d As Double
c = a + b
d = a * b
comp = -x ^ 3 / 3 + x ^ 2 / 2 * c - d * x
comp_cdf = comp
End Function
et
End Function
Function comp_cdf(a As Double, b As Double) As String
Dim x As String * 1
Dim c As Double
Dim d As Double
c = a + b
d = a * b
comp = -x ^ 3 / 3 + x ^ 2 / 2 * c - d * x
MsgBox comp
End Function
J'ai aussi modifié le type de retour par le type "Objet", toujours sans succès, et j'ai aussi essayé en ne définissant aucun type de retour. J'ai vu qu'il était possible de créer un type soit même mais cela représente un perte de temps incroyable.
En résumé cette fonction a pour finalité de recevoir deux réels "a" et "b" en paramètre et de retourner -x ^ 3 / 3 + x ^ 2 / 2 * (a + b) - a * b * x. Où x est un caractère.
Merci d'avance
Bien Cordialement
A voir également:
- [VBA] retourner une chaîne de caractère
- Retourner ecran pc - Guide
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Comment retourner une video - Guide
- Caractere speciaux - Guide
1 réponse
Bonjour,
Les chaines de caractères doivent être délimitées par des " "
Voici la syntaxe correcte
Executer la macro test pour afficher le resultat.
On peut aussi ecrire
mais le point décimal peut se transformer en virgule en fonction des paramètres régionaux
A+
Les chaines de caractères doivent être délimitées par des " "
Voici la syntaxe correcte
Function comp_cdf(a As Double, b As Double) As String Dim c As Double Dim d As Double c = a + b d = a * b comp_cdf = "-x ^ 3 / 3 + x ^ 2 / 2 * " & Str(c - d) & " * x" End Function Sub test() MsgBox comp_cdf(2.5, 3.3) End Sub
Executer la macro test pour afficher le resultat.
On peut aussi ecrire
comp_cdf = "-x ^ 3 / 3 + x ^ 2 / 2 * " & c - d & " * x"
mais le point décimal peut se transformer en virgule en fonction des paramètres régionaux
A+
Bonne soirée