IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Mini Application Toute bête VBS (Ultra-débutant)


Sujet :

VBScript

  1. #1
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut Mini Application Toute bête VBS (Ultra-débutant)
    Bonjour, premier poste ici. Je suis débutant en VBS, j'aimerais me créer une mini application pour réaliser un calcul tout bête sur une valeur saisi. Voici de façon très qualitatif l'image de ce que je souhaite faire:

    (Impossible d'insérer une image ??)
    Si jamais l'image s'affiche, le cadre vert correspond au cadre 1, le rouge au cadre 2 et le cercle orange au bouton switch


    Bon alors voila, sur une fenetre j'aimerais 2 cadre: On rentre une valeur sur l'un et admettons le carré de cette valeur s'affiche sur le deuxième cadre.

    Grace a un bouton switch on pourrais inverser le calcul donc le deuxième cadre afficherais la racine carré.

    Je voudrais vraiment que ce soit un outil rapide a utiliser, donc pas de bouton validation pour réaliser le calcul, j'aimerais que le calcul se fasse en "Live" lorsque l'on remplis le premier cadre. Je pensais coder ca en VBS mais si vous avez de meilleurs idée je suis preneur.

    Voici un bout de code de ce que j'avais commencé a faire mais je n'arrive pas a aller plus loin.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    a=1
    while a <> 0
    a = inputbox("test")
    a = a/1.15 + 0.01
    msgbox a
    wend
    Cordialement, Merci par avance.
    Images attachées Images attachées  

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut

    Regarde ce lien vers l'apprentissage de HTA, cela devrait te permettre de commencer a bricoler une page type web avec interface utilisateur.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Salut merci, cela à l'air bien différent du code VBS.. je vais me renseigner desus alors, je pensais pas que ce serait si compliqué de faire une interface utilisateur

    PS: j'aurais du mettre ultra ultra ultra débutant dans le titre. Je suis déja incapable de mettre une saisie dans une variable avec le format .hta

  4. #4
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Re

    En fait c'est du HTML avec une interaction fait avec du code VBScript.
    Un autre lien d'exemples de réalisation, tu y trouveras plein de codes source.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  5. #5
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Merci j'ai été chercher pas mal d'info et de code sources ca a l'air assez puissant en effet, J'ai été incapable de réussir quoi que ce soit !
    Je vais laisser tomber cela nécessite de bonnes connaissances en programmation que je n'ai pas
    je voulais juste avoir une mini appli très basic qui divise une valeur par 1.15 et ajoute 0.01.

    Je ne vais pas me former pendant 20h pour juste cela ^^

    Bonne fin de journée

  6. #6
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    re, bon... j'ai décidé de perséverer :3

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <HTML>
    	<HEAD> 
    		<TITLE>Steam Converter taxes ?</TITLE>
    		</script>
    	</HEAD>
    	<BODY>
    		Saisir prix d'achat: <INPUT TYPE="number" NAME="Achat" SIZE="20" MAXLENGTH="30" VALUE="">
    		<BR>
    		Saisir prix de vente: <INPUT TYPE="number" NAME="Vente" SIZE="20" MAXLENGTH="30" VALUE="">
     
    	<script language="VBScript">
                    Sub CalculAchat
                            Vente = Achat * 1.15 - 0.01
                    end sub
            </script>
    	</BODY>
    </HTML>

    Comment fait-on pour éxécuter la procédure "CalculAchat" après la saisi d'un intputbox ?

    Cordialement.

  7. #7
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut

    Tu peux faire de cette façon, mais il en existe d'autres,
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <HTML>
    	<HEAD> 
    		<TITLE>Steam Converter taxes ?</TITLE>
    	</HEAD>
    	<BODY>
    		Saisir prix d'achat: <INPUT TYPE="number" NAME="Achat" onkeyup="CalculAchat()" SIZE="20" MAXLENGTH="30" VALUE="">
    		<BR>
    		Saisir prix de vente: <INPUT TYPE="number" NAME="Vente" SIZE="20" MAXLENGTH="30" VALUE="">
     
    	<script language="VBScript">
                    Sub CalculAchat()
                            Vente.value = Achat.value * 1.15 - 0.01
                    end sub
            </script>
    	</BODY>
    </HTML>
    ATTENTION, il n'y a pas de gestion d'erreurs de l'entrée utilisateur (tous caractères différent d'un chiffre)
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  8. #8
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Salut, merci bcp tu me fais avancer grandement.

    Voici mon code désormais et j'ai 2 problèmes:

    Si j'utilise le "." au lieu de la virgule "," ce met un message d'erreur.... Si je pouvais utiliser l'un et l'autre ce serait top pour éviter les erreurs...

    Deuxiememnt, si je supprime une valeurs j'ai un message d'erreur sans doute parce qu'il essaye de calculer lorsque la cellule vaut un ensemble vide.

    Sinon, je commence à avoir des semblant de résultats c'est super top.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <HTML>
    	<HEAD> 
    		<TITLE>Steam Converter taxes ?</TITLE>
    	</HEAD>
    	<BODY>
    		Saisir prix d'achat: <INPUT TYPE="number" NAME="Achat" onkeyup="CalculAchat()" SIZE="20" MAXLENGTH="30" VALUE="0">
    		<BR>
    		Saisir prix de vente: <INPUT TYPE="number" NAME="Vente" onkeyup="CalculVente()" SIZE="20" MAXLENGTH="30" VALUE="0">
     
    	<script language="VBScript">
                    Sub CalculAchat()
                            if Vente.value > 0 then
                            Vente.value = (Achat.value - 0.01) * 1.15
                            end if
                    end sub
                    Sub CalculVente()
                            if Achat.value > 0 then
                            Achat.value = (Vente.value / 1.15) + 0.01
                            end if
                    end sub
            </script>
    	</BODY>
    </HTML>

  9. #9
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Re

    Il te manque le traitement d'erreur des entrées utilisateur, voici un code qui fait le taf.
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    <HTML>
    	<HEAD> 
    		<TITLE>Steam Converter taxes ?</TITLE>
        <style>
        /* partie estetique des différents controles sur la page */
          label{
            position: relative;
            left:10px;
            color:blue;
          }
          input{
            position:absolute;
            left:150px
          }
        </style>
    	</HEAD>
    	<BODY>
    		<label id="Lab1">Saisir prix d'achat:</label> <INPUT TYPE="text" id="Achat" Title="Enter pour calculer" SIZE="20" MAXLENGTH="30" VALUE="">
    		<BR>
    		<label id="Lab2">Saisir prix de vente:</label> <INPUT TYPE="text" id="Vente" Title="Enter pour calculer" SIZE="20" MAXLENGTH="30" VALUE="">
     
    		<script language="VBScript">
                            'message pour traitement d'erreur, la variable MsG est valide dans toutes la partie ScripT
                            dim MsG: MsG = "Entrez un nombre valide (Exemple: 123,456)"
     
                            Sub Window_Onload()
                                    Achat.focus() 'pour que le curseur souris soit sur l'input Achat
                            end sub
     
                            Sub Achat_onkeyup()
                                    If (window.event.keyCode) = 13 Then ' si la touche est Enter faire ...
                                            'gestion du separateur decimale
                                            Achat.value = replace(Achat.value,".",",")
                                            if EntrerValide(Achat.value)=false then msgbox MsG:exit sub 'quitte imediatement la sub
                                            'ici on sait que l'on traite bien un nombre
                                            Vente.value = FormatNumber((Achat.value * 1.15 - 0.01),2)'on limite à 2 decimale
                                    end if
                            end sub
     
                            Sub Vente_onkeyup()
                                    If (window.event.keyCode) = 13 Then
                                            Vente.value = replace(Vente.value,".",",")
                                            if EntrerValide(Vente.value)=false then msgbox MsG:exit sub
                                            Achat.value = FormatNumber((Vente.value+0.01) / 1.15,2)
                                    end if
                            end sub
     
                            function EntrerValide(valeur)
                                    EntrerValide = IsNumeric(valeur) 'renvoie false si valeur n'est pas un nombre, sinon true
                            end function
                    </script>
    	</BODY>
    </HTML>
    J'ai essayé de mettre en commentaire des information de se que fait chaque lignes de commande, tu me diras tes questionnements restant.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  10. #10
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Wow, c'est lourd merci.

    Alors je pense que je comprend bien l'idée des procédures et fonctions que tu as rajouté.

    J'aurais deux dernier petit détails que j'aimerais poffiner:

    • Comment redimensionner la fenêtre de départ ? qu'elle soit relativement petit en fait.

    • Et j'aimerais que le calcul se fasse automatiquement en Live sans avoir a presser "Enter" comme avant. C'est possible? Ou cela n'est pas compatible avec la gestion des erreurs.

    Merci bcp du temps passé sur mon prob !

  11. #11
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Re
    redimensionner la fenêtre de départ
    voir ligne 10, avec centrage à l'écran
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    <HTML>
    	<HEAD> 
    		<HTA:APPLICATION
     				MAXIMIZEBUTTON="no"
    				SCROLL="no"
    				BORDER = "thin"
    		>
    		<SCRIPT language="VBScript" type="text/vbscript">
            'redimensionner la fenêtre de départ
            ResizeTo 350,120: MoveTo (Screen.Width-350)/2,(Screen.Height - 120) / 2
                    </SCRIPT>
       <style>
        /* partie estetique des différents controles sur la page */
          label{
            position: relative;
            left:10px;
            color:blue;
          }
          input{
            position:absolute;
            left:150px
          }
        </style>
    	</HEAD>
    	<BODY>
    		<label id="Lab1">Saisir prix d'achat:</label> <INPUT TYPE="text" id="Achat" Title="Enter pour calculer" SIZE="20" MAXLENGTH="30" VALUE="">
    		<BR>
    		<label id="Lab2">Saisir prix de vente:</label> <INPUT TYPE="text" id="Vente" Title="Enter pour calculer" SIZE="20" MAXLENGTH="30" VALUE="">
     
    		<script language="VBScript">
                            'message pour traitement d'erreur, la variable MsG est valide dans toutes la partie ScripT
                            dim MsG: MsG = "Entrez un nombre valide (Exemple: 123,456)"
     
                            Sub Window_Onload()
                                    Achat.focus() 'pour que le curseur souris soit sur l'input Achat
                            end sub
     
                            Sub Achat_onkeyup()
                                    If (window.event.keyCode) = 13 Then ' si la touche est Enter faire ...
                                            'gestion du separateur decimale
                                            Achat.value = replace(Achat.value,".",",")
                                            if EntrerValide(Achat.value)=false then msgbox MsG:exit sub 'quitte imediatement la sub
                                            'ici on sait que l'on traite bien un nombre
                                            Vente.value = FormatNumber((Achat.value * 1.15 - 0.01),2)'on limite à 2 decimale
                                    end if
                            end sub
     
                            Sub Vente_onkeyup()
                                    If (window.event.keyCode) = 13 Then
                                            Vente.value = replace(Vente.value,".",",")
                                            if EntrerValide(Vente.value)=false then msgbox MsG:exit sub
                                            Achat.value = FormatNumber((Vente.value+0.01) / 1.15,2)
                                    end if
                            end sub
     
                            function EntrerValide(valeur)
                                    EntrerValide = IsNumeric(valeur) 'renvoie false si valeur n'est pas un nombre, sinon true
                            end function
                    </script>
    	</BODY>
    </HTML>

    j'aimerais que le calcul se fasse automatiquement en Live sans avoir a presser "Enter"
    Pas sûr que ce soit une bonne idée, si l'utilisateur tape vide au clavier et qu'il y a une erreur de frappe ou une entrée non valide, la boite d'alerte va apparaitre alors qu'il continuera ses entrées, pas très cool.

    Sinon, il suffit de supprimer la condition If (window.event.keyCode) = 13 Then dans les sub Achat_onkeyup() et Vente_onkeyup() , attention d'enlever les end if aussi.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  12. #12
    Futur Membre du Club
    Homme Profil pro
    etudiant
    Inscrit en
    Janvier 2019
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    C'est parfait !

    J'ai supprimé la condition if, et j'ai rajouté ceci en début de procédure:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if Achat.value = "" then exit sub
    Comme cela, si j'efface le contenue et que la cellule est vide pas d'erreurs. En contrepartie j'ai une erreur dès que je saisi un lettre ou quoi mais c'est pas grave, je tape au pavé numérique donc très peu de risque d'erreurs.


    merci pour toutes ces réponses et solutions.
    A+ !! Bonne journée

  13. #13
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Re, la der
    En contrepartie j'ai une erreur dès que je saisi un lettre ou quoi
    Je pense que l'essentiel est géré
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    <HTML>
    	<HEAD> 
        <title>Mon premier prog de calcul</title>
    		<HTA:APPLICATION
     				MAXIMIZEBUTTON="no"
    				SCROLL="no"
    				BORDER = "thin"
    		>
    		<SCRIPT language="VBScript" type="text/vbscript">
            'redimensionner la fenêtre de départ en centrant la page 
            ResizeTo 350,120: MoveTo (Screen.Width-350)/2,(Screen.Height - 120) / 2
                    </SCRIPT>
    		<style>
                            /* partie estetique des différents controles sur la page */
                            label{
                                    position: relative;
                                    left:10px;
                                    color:blue;
                            }
                            input{
                                    position:absolute;
                                    left:150px
                            }
                    </style>
    	</HEAD>
    	<BODY>
    		<label id="Lab1">Saisir prix d'achat:</label> <INPUT TYPE="text" id="Achat" Title="Enter pour calculer" SIZE="20" MAXLENGTH="30" VALUE="">
    		<BR>
    		<label id="Lab2">Saisir prix de vente:</label> <INPUT TYPE="text" id="Vente" Title="Enter pour calculer" SIZE="20" MAXLENGTH="30" VALUE="">
     
    		<script language="VBScript">
                'message pour traitement d'erreur, la variable MsG est valide dans toutes la partie Script
                            dim MsG: MsG = "Entrez un nombre valide (Exemple: 123,456)"
     
                            ' ----------------------------- évènement controle -------------------------------------------
                            Sub Window_Onload()
                                    Achat.focus() 'pour que le curseur souris soit sur l'input Achat
                            end sub
     
                            Sub Achat_onkeyup()
                                    if ToucheValide(window.event.keyCode) = false then exit sub
                                    'gestion du separateur decimale
                                    Achat.value = replace(Achat.value,".",",")
                                    if EntrerValide(Achat.value)=false then msgbox MsG:exit sub 'quitte imediatement la sub
                                            'ici on sait que l'on traite bien un nombre
                                            Vente.value = FormatNumber((Achat.value * 1.15 - 0.01),2)'on limite à 2 decimale
                            end sub
     
                            Sub Vente_onkeyup()
                                    if ToucheValide(window.event.keyCode) = false then exit sub
                                    Vente.value = replace(Vente.value,".",",")
                                    if EntrerValide(Vente.value)=false then msgbox MsG:exit sub
                                    Achat.value = FormatNumber((Vente.value+0.01) / 1.15,2)
                            end sub
     
                            ' ----------------------------------- gestion globale des erreurs ------------------------------
                            function ToucheValide(CodeKey)
                                    ToucheValide = true
                                    if CodeKey <> 13 then ' si la touche est inégale à Enter
                                            'vérifier que la touche égal un chiffre ou un point ou une virgule
                                            if ((CodeKey <49 Or CodeKey > 59) and (CodeKey <> 46 or CodeKey <> 44)) then
                                                    'si non, faire quitter la sub qui a appelée cette fonction
                                                    ToucheValide = false
                                            end if
                                    end if 
                            end function
                            function EntrerValide(valeur)
                                    EntrerValide = IsNumeric(valeur) 'renvoie false si valeur n'est pas un nombre, sinon true
                            end function
     
                    </script>
    	</BODY>
    </HTML>
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Etudier une mini Application toute faite en PHP - PDO
    Par Ciccillo dans le forum PHP & Base de données
    Réponses: 28
    Dernier message: 05/08/2018, 00h00
  2. Débutant WPF : Application toute simple
    Par Feneck91 dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 25/03/2013, 10h55
  3. Petit problème tout bête [débutant]
    Par Veler dans le forum C++
    Réponses: 9
    Dernier message: 25/03/2008, 07h33
  4. Débutant: Application à toutes les feuilles d'un classeur
    Par spirit1300 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 06/12/2007, 09h19
  5. Réponses: 4
    Dernier message: 20/03/2006, 11h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo