Les Snippets

Connexion

Obtenir une chaîne calculable à partir du contenu de zones de texte

Niveau requis pour utiliser/comprendre cette source : 2 ( Initié )
Créé le 21/03/2006 23:40:25 et initié par PCPT [Liste]
Vue : 4952
Catégorie(s) : Chaîne de caractères
Langages dispo pour ce code :
- VB6



Langage : VB6
Date ajout : 21/03/2006
Posté par PCPT [Liste]
' cet exemple nécessite 1 bouton et 4 zones de texte
 Option Explicit 
 '
 Const sSAMPLE1 As String = "(Text1.Text * Text2.Text)" 
 Const sSAMPLE2 As String = "(Text3.Text - Text4.Text) * 2)" 
 Const sSAMPLE3 As String = "(Text1.Text / 2) - 0.125)" 
 '
 '
 Private Sub Form_Load() 
     Text1.Text = "10" 
     Text2.Text = "10" 
     Text3.Text = "40" 
     Text4.Text = "27,4" 
 End Sub 
 '
 '
 Private Sub Command1_Click() 
     MsgBox sSAMPLE1 & vbCrLf & GetResultString(sSAMPLE1) 
     MsgBox sSAMPLE2 & vbCrLf & GetResultString(sSAMPLE2) 
     MsgBox sSAMPLE3 & vbCrLf & GetResultString(sSAMPLE3) 
 End Sub 
 '
 '
 Private Function GetResultString(ByVal sChaine As StringAs String 
     sChaine = Replace(sChaine, "(Text", "( Text") 
 
 '   on remplace les libellés "NOM.text" par leur contenu réel
     Dim Ctrl As Object, i As Integer, iPos1 As Integer, iPos2 As Integer 
     Dim sObjName As String, sObjValue As String, bFound As Boolean 
     iPos1 = InStr(1, sChaine, " Text") 
     While iPos1 > 0 
         iPos1 = iPos1 + 1 
         iPos2 = InStr(iPos1, sChaine, ".Text") 
         sObjName = Mid$(sChaine, iPos1, iPos2 - iPos1) 
         bFound = False 
         For Each Ctrl In Me 
             If TypeOf Ctrl Is TextBox Then 
                 If Ctrl.Name = sObjName Then 
                     bFound = True 
                     sObjValue = Ctrl.Text 
                     Exit For 
                 End If 
             End If 
         Next 
 
         If Not bFound Then  'au cas où
             Err.Raise vbObject, , "La zone texte de la formule n'existe pas!!!!!!" 
         Else 
             sChaine = Replace(sChaine, sObjName & ".Text", sObjValue) 
             iPos1 = InStr(1, sChaine, " Text") 
         End If 
     Wend 
     sChaine = Replace(sChaine, " ", vbNullString) 
 
 '   retour
     GetResultString = Replace(sChaine, ",", ".") 
 End Function
Remarque :
le but est de créer une chaîne de calcul à partir du contenu de zones de texte dont les nomenclatures et les opérateurs sont stoqués dans un fichier externe.

Snippets en rapport avec : Calcul, Textbox, Opérateur



Codes sources en rapport avec : Calcul, Textbox, Opérateur

{Visual Basic, VB6, VB.NET, VB 2005} CALCULE HEURES DE NUIT 2
VOICI ENFIN LA DEUXIÈME VERSION DE MON APPLICATION SUR LE CALCUL D HEURES .J AI CRÉE UN APERÇU ET D ...

{Visual Basic, VB6, VB.NET, VB 2005} CALCUL DES HONORAIRES CAC
Ce programme permet de calculer les honoraires CAC d'une mission de commissariat aux comptes dans mo...

{Visual Basic, VB6, VB.NET, VB 2005} CALCULATRICE INCORPORÉ DANS UN TEXTBOX
lorsque vous utilisez un textbox destiné à recevoir une valeur numerique quelconque, Ce code donne l...

{C / C++ / C++.NET} CONVERTISSEUR
...

{C / C++ / C++.NET} CALCUL DE VARIANCE
Ce petit programme sert à calculer la variance d'une série de valeur. Exécutables disponibles sur...

{C / C++ / C++.NET} CALCUL D'INCERTITUDE
Ce petit programme sert à calculer une incertitude sur une valeur à partir des autres valeurs/incert...

{Visual Basic, VB6, VB.NET, VB 2005} CONTROLS PERSONALISÉ TEXTBOX
En ayant marre à chaque dois de devoir gérer l'événement KeyPress pour empêcher un certain type de s...

{Python} DIVISIONS AVEC PRÉCISION RÉGLABLE
Voici un petit programme qui vous permet d'avoir le résultat de divisions avec la précision que vous...

{Python} LE CALCULATOR DE RAYGOLD VERSION 2
Voici une petite calculatrice tous simple en commande. Elle permet de faire des additions, des s...

{C / C++ / C++.NET} PROGRAMME QUI CALCUL LE PPCM ET LE PGCD
Algorithme qui sert à calculer le plus grand diviseur commun ,et le plus petit multiple commun. Cel...