Pas toutes les fonctions de feuille de calcul Excel sont prises en charge comme méthodes de l’objet Application dans Visual Basic pour Applications


Pour Microsoft Excel 97 et version antérieure ou Microsoft Excel 98 Édition Macintosh de la version antérieure de cet article, reportez-vous à la section 107564 .

Résumé


Dans Microsoft Visual Basic pour Applications, pas toutes les fonctions de feuille de calcul Microsoft Excel sont prises en charge comme méthodes de l’objet Application . Si vous essayez d’utiliser l’une de ces fonctions de feuille de calcul avec l’objet Application , le message d’erreur suivant s’affiche :
Erreur d’exécution '438' : objet ne gère pas cette propriété ou cette méthode

Informations supplémentaires


Vous pouvez écrire des procédures Visual Basic qui appellent des fonctions de feuille de calcul Microsoft Excel. Les fonctions de feuille de calcul qui sont disponibles pour les procédures Visual Basic se trouvent dans l’objet Application et sont répertoriées dans lesméthodes ou la liste de Propriétés pour l’objet Application dans le Browser.Most d’objet de Visual Basic les fonctions de feuille de calcul qui ne sont pas disponibles comme méthodes de l’objetApplication ont un opérateur intégré de Microsoft Visual Basic équivalent ou une fonction. Par exemple, la fonction de feuille de calcul MOD n’est pas disponible en tant que méthode de l’objet Application car il existe un opérateur Mod équivalent intégré à Visual Basic. Un opérateur Visual Basic travaille plus rapidement qu’une fonction Microsoft Excel dans un module Visual Basic.

Les fonctions de feuille de calcul disponibles en tant que méthodes dans Visual Basic de Excel

Remarque: les étapes suivantes supposent que vous avez installé le fichier d’aide de Visual Basic. Pour afficher une liste de toutes les fonctions de feuille de calcul Microsoft Excel qui sont disponibles comme méthodes de l’objet Application dans Visual Basic, procédez comme suit :
  1. Dans Visual Basic Editor, tapez fonctions de feuille de calcul dans le Compagnon de Microsoft Office, puis cliquez sur Rechercher.
  2. Dans la liste des rubriques, cliquez sur Liste de feuille de calcul des fonctions disponibles dans Visual Basic.
Pour trouver l’équivalent Visual Basic opérateur ou la fonction d’une fonction de feuille de calcul Microsoft Excel qui n’est pas disponible comme méthode d’objet Application , procédez comme suit :
  1. Dans Visual Basic Editor, tapez le nom de la fonction ou l’opérateur dans le Compagnon Office, puis cliquez sur Rechercher. Par exemple, tapez mod.
  2. Dans la liste des rubriques, cliquez sur la rubrique relative à la fonction ou l’opérateur. Par exemple, cliquez sur la rubrique de l’Opérateur Mod .
Le tableau suivant contient des fonctions de feuille de calcul qui ne sont pas disponibles comme méthodes de l’objet Application . La colonne équivalent Visual Basic répertorie les fonctions que vous pouvez utiliser les résultats identiques (ou similaires à) que les fonctions renvoient des résultats.
   Microsoft Excel                   Visual Basic   worksheet function                equivalent   -------------------------------------------------------------------   ABS()                             Abs function   ATAN()                            Atn function   CHAR()                            CHR function   CODE()                            ASC function   COS()                             Cos function   DATE()                            DATESERIAL function   ERROR.TYPE()                      ERR function   EXACT()                           STRCOMP function   EXP()                             Exp function   INDIRECT()                        No direct equivalent - use Range,                                     Cells, Offset, or any other way of                                     referencing cells.   INFO()                            No direct equivalent - use the                                     following:                                     CURDIR function, the following                                     Application properties (MEMORYTOTAL,                                     MEMORYUSED, MEMORYFREE, VERSION,                                     OPERATINGSYSTEM, CALCULATION, COUNT)   ISBLANK()                         ISEMPTY function   ISREF()                           TYPENAME function   LEN()                             LEN function   LOWER()                           LCASE function   N()                               No equivalent (none needed)   NA()                              No equivalent - use                                     ActiveCell.Value = "#N/A"   RAND()                            RND function   RANDOMIZE()                       Randomize function   SIN()                             Sin function   SIGN()                            Sgn function   SQR()                             Sqr function   SQRT()                            Sqr function   T()                               No equivalent (none needed)   TAN()                             Tan function   TODAY()                           DATE function   TRUNC()                           FIX function   TYPE()                            TYPENAME function   UPPER()                           UCASE function   VALUE()                           VAL function 
Remarque: fonction de feuille de calcul de la Microsoft Excel et l’opérateur équivalent de Visual Basic ou la fonction ne sont pas toujours calculés de la même façon et peuvent donner des résultats différents même lorsqu’ils ont le même nom. À l’aide de l’opérateur d’équivalent Visual Basic ou la fonction est préférable pour une vitesse accrue et la flexibilité des calculs. En outre, l’opérateur de Visual Basic ou d’une fonction est disponible pour toutes les applications qui utilisent Microsoft Visual Basic pour Applications.Although, il est recommandé d’utiliser les opérateurs de Visual Basic ou les fonctions affichées dans la liste ci-dessus, il y a autre méthodes d’utilisation des fonctions de feuille de calcul dans une macro Visual Basic si nécessaire. Par exemple, vous pouvez utiliser la feuille de calcul ATAN dans votre macro Visual Basic à l’aide de la ExecuteExcel4Macro ou Evaluate fonctions :
   x = Application.ExecuteExcel4Macro("Atan(12)") 
- ou -
   x = Application.Evaluate("Atan(12)")