Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion mamour60
  • Date de début Date de début

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 !

mamour60

XLDnaute Junior
Bonjour a tous,

Je doit créer une function sous Excel dont voici un exemple :

Function Calcul_Acry(Nom) 'Nom = Nom D'une Pomme
Dim essai As String
Application.Volatile
Select Case Nom
Case "Lady"
essai = 1532 * 1569 + (S2 * 15) + 1596.5 * R2 + T2
Case "Pink"
essai = 1452 * 1695.5 + (S2 * 25) + 1587 * R2 + T2
End Select
End Function

Les chiffres ne sont que pour l'exemple car la formule pour le calcul est beaucoup plus longue.

Si le nom est en A2 se sera S2 T2 et R2
Si le nom est en A3 se sera S3 T3 et R3
ainsi de suite

Si quelqu’un a une idée merci de votre aide.

Bonne soirée a tous
 
Re : Function

Bonjour mamour,

peut-être

Code:
Function Calcul_Acry(Nom as Range) As Double 'Nom = Nom D'une Pomme
Dim essai As double, R as double, S as double, T as double
Application.Volatile
R = Nom.Parent.range("R" & Nom.row).value
S = Nom.Parent.range("S" & Nom.row).value
T = Nom.Parent.range("T" & Nom.row).value
Select Case Nom.Value
Case "Lady"
essai = 1532 * 1569 + S * 15) + 1596.5 * R + T
Case "Pink"
essai = 1452 * 1695.5 + (S * 25) + 1587 * R + T
End Select
Calcul_Acry = essai
End Function

Edit : Bonjour CC 🙂
 
Re : Function

Bonjour à tous,

à tester

Code:
Function Calcul_Acry(Nom As Range) 'Nom = Nom D'une Pomme
Dim essai As Double, R As Double, S As Double, T As Double
    Application.Volatile
    R = Nom.Parent.Range("R" & Nom.Row).Value
    S = Nom.Parent.Range("S" & Nom.Row).Value
    T = Nom.Parent.Range("T" & Nom.Row).Value
    Select Case Nom.Value
    Case "Lady"
        essai = CDbl(1532) * 1569 + S * 15 + 1596.5 * R + T
    Case "Pink"
        essai = CDbl(1452) * 1695.5 + (S * 25) + 1587 * R + T
    End Select
    If essai = 0 Then
        Calcul_Acry = CVErr(xlErrNA)
    Else
        Calcul_Acry = essai
    End If
End Function
 
Re : Function

Bonjour tototiti,

Merci mais je ne veux pas le message d'erreur #N/A mais avoir du texte ex: NA (Non Affecté)

Jai essaié de mettre un message du style

Function Calcul_Acry(Nom as Range) As Double
On Error GoTo Erreur
Dim essai As double, R as double, S as double, T as double
Application.Volatile
R = Nom.Parent.range("R" & Nom.row).value
S = Nom.Parent.range("S" & Nom.row).value
T = Nom.Parent.range("T" & Nom.row).value
Select Case Nom.Value
Case "Lady"
essai = 1532 * 1569 + S * 15) + 1596.5 * R + T
Case "Pink"
essai = 1452 * 1695.5 + (S * 25) + 1587 * R + T
End Select
Calcul_Acry = essai
Exit Function
Erreur:
essai = "NA"
End Function

Mais cela ne marche pas alors si vous avez une idée.

Encore merci et Bonne soirée
 
- 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

A
  • Question Question
Réponses
1
Affichages
1 K
D
Réponses
9
Affichages
1 K
damien.chauveau64
D
N
  • Question Question
Réponses
8
Affichages
3 K
nanie13
N
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…