No todas las funciones de hoja de cálculo de Excel son compatibles con los métodos del objeto Application en Visual Basic para aplicaciones

Para obtener Microsoft Excel 97 y versiones anteriores o Microsoft Excel 98 Macintosh Edition o una versión anterior de este artículo, consulte 107564.

Resumen

En Microsoft Visual Basic para aplicaciones, no todas las funciones de hoja de cálculo de Microsoft Excel se admiten como métodos del objeto Application . Si intenta usar una de estas funciones de hoja de cálculo con el objeto Application , recibirá el siguiente mensaje de error:

Error de tiempo de ejecución ' 438 ': el objeto no admite esta propiedad o método

Más información

Puede escribir procedimientos de Visual Basic que llamen a funciones de hoja de cálculo de Microsoft Excel. Las funciones de hoja de cálculo que están disponibles para los procedimientos de Visual Basic se encuentran en el objeto Application y se enumeran en la listamétodos o propiedades del objeto Application en el explorador de objetos de Visual Basic. la mayoría de las funciones de hoja de cálculo que no están disponibles como métodos del objetoApplication tienen un operador o función integrado de Microsoft Visual Basic. Por ejemplo, la función de hoja de cálculo residuo no está disponible como método del objeto Application porque hay un operador mod equivalente integrado en Visual Basic. Un operador de Visual Basic funciona más rápido que una función de Microsoft Excel en un módulo de Visual Basic.

Funciones de hoja de cálculo de Excel disponibles como métodos en Visual Basic

Nota: en los pasos siguientes se supone que ha instalado el archivo de ayuda de Visual Basic. Para mostrar una lista de todas las funciones de hoja de cálculo de Microsoft Excel que están disponibles como métodos del objeto Application en Visual Basic, siga estos pasos:

  1. En el editor de Visual Basic, escriba funciones de hoja de cálculo en el ayudante de Microsoft Office y, a continuación, haga clic en Buscar.

  2. En la lista de temas, haga clic en lista de funciones de hoja de cálculo disponibles para Visual Basic.

Para localizar el operador o la función equivalente de Visual Basic de una función de hoja de cálculo de Microsoft Excel que no está disponible como método de objeto de aplicación , siga estos pasos:

  1. En el editor de Visual Basic, escriba el nombre de la función o del operador en el ayudante de Office y, a continuación, haga clic en Buscar. Por ejemplo, escriba mod.

  2. En la lista de temas, haga clic en el tema de la función o del operador. Por ejemplo, haga clic en el tema del operador mod .

La tabla siguiente contiene funciones de hoja de cálculo que no están disponibles como métodos del objeto Application . La columna equivalente en Visual Basic enumera las funciones que se pueden usar para producir resultados iguales a los resultados que las funciones devuelven (o similares). 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 Nota: la función hoja de cálculo de Microsoft Excel y el operador o la función equivalentes de Visual Basic no siempre se calculan de la misma manera y pueden dar distintos resultados, incluso cuando tienen el mismo nombre. Es preferible usar el operador o la función equivalente de Visual Basic para obtener una mayor velocidad y flexibilidad en los cálculos. Además, el operador o la función de Visual Basic está disponible para todas las aplicaciones que usan Microsoft Visual Basic para aplicaciones. aunque se recomienda usar los operadores o las funciones de Visual Basic que se muestran en la lista anterior, hay métodos alternativos para usar las funciones de hoja de cálculo en una macro de Visual Basic si es necesario. A modo de ejemplo, puede usar la hoja de cálculo atan en la macro de Visual Basic con las funciones ExecuteExcel4Macro o evaluar : x = Application.ExecuteExcel4Macro("Atan(12)") O bien x = Application.Evaluate("Atan(12)")

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

×