Comment faire pour appeler des fonctions à l'aide du Script

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

La version anglaise de cet article est la suivante: 184740
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
Résumé
Cet article fournit des exemples de code pour le contrôle de Script que les méthodes de demonstratesvarious du script appelant fonctionne à partir de Visual Basic.
Plus d'informations
IMPORTANT : Microsoft fournit des exemples de programmation à titre d'illustration uniquement, sans garantie expresse ou implicite, y compris, mais pas seulement, à, toute garantie implicite de qualité marchande et/ou d'adéquation à un but aparticular. Cet article suppose que vous êtes familiarisé avec le langage theprogramming présenté et les outils utilisés pour créer des procédures anddebug.

Le contrôle de Script peut héberger VBScript, JavaScript et tout autre langage de compliantscripting, afin que vos utilisateurs peuvent script à votre application dans un similarmanner à l'utilisation de VBScript ou JavaScript pour fournir des functionalityfor d'autres pages Web.

L'article suivant dans la Base de connaissances Microsoft décrit comment contrôler le Script toobtain :
184739 : INFO : où obtenir le contrôle de Script

Le contrôle de Script fournit quatre méthodes permettant d'appeler des routines Sub et Functionscript :
  • Eval : Évalue une expression de texte.
  • Exécution : Exécute un Sub ou Function nommée.
  • Exécution : Exécute une instruction de script.
  • En tant que méthode d'un objet Module.

Eval

La convention d'appel est :
  Result = ScriptControl.Eval("some text expression")				
Vous pouvez utiliser cette méthode pour appeler les fonctions de script intrinsèque, en tant que bien des fonctions asuser. Arguments de la fonction sont passés comme des valeurs littérales dans theexpression texte et peuvent être codés en dur ou concaténés à partir de germination.

Remarque : Cette méthode ne peut pas être utilisée pour appeler les sous-routines.

Exécuter

La convention d'appel est :
  Result = ScriptControl.Run("Name", arg1, arg2, ... argn)				
Vous pouvez utiliser cette méthode pour appeler les sous-routines, dans lequel cas le Resultreturned est vide et vous pouvez utiliser l'autre toignore de convention appelant le résultat :
  ScriptControl.Run "Name", arg1, arg2, ... argn				
Remarque : Le nom est le nom de Sub ou de fonction et d'arg1... argn areoptional selon la sous-fonction ou la fonction en question.

Exécuter

La convention d'appel est :
  ScriptControl.Execute "statement text"				
Cette méthode vous permet d'appeler n'importe quelle instruction intrinsèque ou sous-routine. Vouspouvez également l'utiliser pour appeler des fonctions, mais le résultat renvoyé est supprimé.

Méthode de module

La convention d'appel est :
   Result = ScriptControl.Modules(modulename).functionname(arg1, arg2, ...)   ScriptControl.Modules(modulename).subname arg1, arg2, ...				

Le module par défaut est donné dans la constante GlobalModule, telles que :
   Result = ScriptControl.Modules(GlobalModule).MyFunction(5)   ScriptControl.Modules(GlobalModule).MySub 5, "A"				

Pour plus d'informations sur les modules ScriptControl, veuillez consulter la followingarticle dans la Base de connaissances Microsoft :
184745 : Comment utiliser des Collections de procédures et de Modules de commande de Script

Exemple

  1. Dans Visual Basic, créez un nouveau projet. Form1 est créé par défaut.
  2. Cliquez sur composants dans le menu projet, puis sélectionnez le "contrôle Microsoft Script 1.0 » case à cocher.
  3. Ajouter un bouton de commande (Command1), une zone de texte (Text1) et le contrôle de Script (ScriptControl1) à un formulaire. La propriété MultiLine de la zone de texte la valeur True.
  4. Ajoutez le code suivant à Form1 :
          Private Sub Command1_Click()        With ScriptControl1          ' Set script language (VBScript is the default).          .Language = "VBScript"          ' Set UI interaction (TRUE is the default).          .AllowUI = True          ' Copy the script to the control.          .AddCode Text1.Text          ' Demonstrate the Eval method.          Debug.Print .Eval("AddTwo(5,7)")          ' Demonstrate the Run method both with and without return values.          .Run "Hello", "Jane Doe"          Debug.Print .Run("Hello", "James Smith")          .Run "AddTwo", 4, 6          Debug.Print .Run("AddTwo", 7, 8)          ' Demonstrate the ExecuteStatement method.          .ExecuteStatement "Hello ""Sue Smith"""          .ExecuteStatement "AddTwo 9,18"          .ExecuteStatement "MsgBox CStr(AddTwo(3,8))"          .Modules(GlobalModule).Hello "Jane Doe"          Dim oMod As Object          Set oMod = .Modules(GlobalModule)          Debug.Print oMod.AddTwo 12, 24          Set oMod = Nothing        End With      End Sub						
  5. Exécutez Form1, puis ouvrez la fenêtre de débogage.
  6. Dans la zone de texte, tapez le script suivant :
          Sub Hello(YourName)        MsgBox "Hello " & YourName      End Sub      Function AddTwo(X1, X2)        AddTwo = X1 + X2      End Function						
  7. Cliquez sur le contrôle CommandButton.

    Remarque : Les deux instructions suivantes ne produisent pas un résultat parce que le retour de la fonction est perdu et que le code ne produit pas le résultat par d'autres moyens, par exemple une variable globale ou une boîte de message :
          .Run "AddTwo", 4, 6      .ExecuteStatement "AddTwo 9,18"						
Références
Pour plus d'informations sur la façon d'obtenir le contrôle de Script, consultez l'article réticules du centre dans la Base de connaissances Microsoft :
184739 : INFO : où obtenir le contrôle de Script

(c) Microsoft Corporation 1998, tous droits réservés.
Contributions par Malcolm Stewart, Microsoft Corporation
kbVBA500 kbVBp500 kbNoKeyWord kbVBp600 kbScript kbCtrl

Avertissement : Cet article a été traduit automatiquement.

Propriétés

ID d'article : 184740 - Dernière mise à jour : 12/05/2015 08:36:35 - Révision : 5.0

Microsoft Visual Basic 5.0 Édition initiation, Microsoft Visual Basic 5.0 Édition professionnelle, Microsoft Visual Basic 6.0 Édition professionnelle, Microsoft Visual Basic 5.0 Édition Entreprise, Microsoft Visual Basic 4.0 Édition Standard

  • kbnosurvey kbarchive kbhowto kbmt KB184740 KbMtfr
Commentaires