Une condition dans fichier excel

Fermé
blalaa Messages postés 167 Date d'inscription mercredi 18 avril 2018 Statut Membre Dernière intervention 24 mars 2020 - Modifié le 17 sept. 2018 à 15:28
blalaa Messages postés 167 Date d'inscription mercredi 18 avril 2018 Statut Membre Dernière intervention 24 mars 2020 - 17 sept. 2018 à 16:28
Bonjour,


est il possible de calculer une fonction avec des condition dans le fichier excel

exemple
c un code que j'ai crée dans vba, maintenant je veux excueter ce code mais dans le fichier excel




If re1 <= 2300 Then
TextBox_regime.Value = "laminaire"
k1 = 64 / re1



End If

If re1 >= 2300 Then
TextBox_regime.Value = "Turbulent lisse"
Dim r1 As Currency
k1 = 0
r1 = 0
'--------------------------

'--------------------------
While r1 <= 1
k1 = k1 + 0.0001
r1 = (2 * ((Log(re1 * Sqr(k1))) / Log(10)) - 0.8) * Sqr(k1)

Wend

End If

If re1 >= 100000 Then

TextBox_regime.Value = "turbulent rugueux"

k1 = 0
r1 = 0
'--------------------------
psi = TextBox_rugosite.Value

'--------------------------
While r1 <= 1
k1 = k1 + 0.0001
r1 = (-2 * (Log((psi / (3.7 * d1)) + (2.52 / (Sqr(k1) * re1)))) / (Log(10))) * Sqr(k1)

Wend

exemple:

re1 = range ("A1")

comment juste dans la feuil excel on peut calculer la valeur de K1 sans passer par vba ?
et surtout est ce que ce genre de conditions est faisable dans lexcel ( sans vba )
A voir également:

1 réponse

jordane45 Messages postés 38469 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 22 avril 2025 4 741
Modifié le 17 sept. 2018 à 15:31
bonjour,
Ta question n'est pas très claire.....

Je pense que ce que tu demande c'est comment utiliser un code VBA comme une formule ?
Dans ce cas il suffit d'écrire des FUNCTION au lieu de SUB

Par exemple
 Function test(re1 As Range)
    Dim k1
    Dim r1 As Currency
    
    If re1.Value >= 100000 Then
        TextBox_regime.Value = "turbulent rugueux"
        
        k1 = 0
        r1 = 0
        '--------------------------
        psi = TextBox_rugosite.Value
        '--------------------------
        While r1 <= 1
            k1 = k1 + 0.0001
            r1 = (-2 * (Log((psi / (3.7 * d1)) + (2.52 / (Sqr(k1) * re1)))) / (Log(10))) * Sqr(k1)
        Wend
        
    ElseIf re1.Value >= 2300 Then
        If re1 >= 2300 Then
        TextBox_regime.Value = "Turbulent lisse"
        
        k1 = 0
        r1 = 0
        '--------------------------
        
        '--------------------------
        While r1 <= 1
            k1 = k1 + 0.0001
            r1 = (2 * ((Log(re1 * Sqr(k1))) / Log(10)) - 0.8) * Sqr(k1)
        Wend
        
    Else
        'if re1 <= 2300 then
        TextBox_regime.Value = "laminaire"
        r1 = 64 / re1
    End If
    
    'retourne le resultat
    test = r1
End Function



NB: Pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage)
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code


0
blalaa Messages postés 167 Date d'inscription mercredi 18 avril 2018 Statut Membre Dernière intervention 24 mars 2020
Modifié le 17 sept. 2018 à 15:39
re

au fait ce que je cherche ce que ce code je l'ai crée dans vba avec toutes ces conditionts,
est ce que dans l'excel je peux faire cette condition pour calculer K1 ? sans passer par vba

ca veut dire j'ouvre ma feuille excel et j'applique ce code mais je ne sais pas comment
0
jordane45 Messages postés 38469 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 22 avril 2025 4 741
17 sept. 2018 à 16:01
Tu utilises le code que je t'ai donné.
Puis dans une cellule de ton classeur tu ecris
=test(A1)
0
blalaa Messages postés 167 Date d'inscription mercredi 18 avril 2018 Statut Membre Dernière intervention 24 mars 2020
17 sept. 2018 à 16:02
ah ok merci
0
blalaa Messages postés 167 Date d'inscription mercredi 18 avril 2018 Statut Membre Dernière intervention 24 mars 2020
17 sept. 2018 à 16:04
jai une question pour quoi =test (A1) ?
0
blalaa Messages postés 167 Date d'inscription mercredi 18 avril 2018 Statut Membre Dernière intervention 24 mars 2020
17 sept. 2018 à 16:28
j'ai une autre question Si cest possible
j'ai cree userform (c est une application de calcul )
le principe c de introduire des donnees dans cette applications textbox , combox , et quand je clique sur valider l'application va faire le calcul, elle va l'affiche sur l'application mai aussi sur un tableau excel que j'ai specifie

ma question est plutot comment les valeur qui seront plcacéé dans le fichier excel ( c les valeurs quon va introduire dans lapplication ) ne seront pas changée manullement

ca veut dire pour changer la valeur il faut que je passe par l'application
merci
0