Para una versión anterior o de Microsoft Excel 97 o Macintosh Edition de Microsoft Excel 98 o una versión anterior de este artículo, vea 107564.
Resumen
En Microsoft Visual Basic para Aplicaciones, no todas las funciones de hoja de cálculo de Microsoft Excel son compatibles 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:
Run-Time Error '438':Object no admite esta propiedad o método
Más información
Puede escribir procedimientos de Visual Basic que llamen funciones de hoja de cálculo de Microsoft Excel. Las funciones de hoja de cálculo que están disponibles para procedimientos de Visual Basic se encuentran en el objeto Application y se muestran en lalista Mé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 delobjeto Application tienen un operador o función integrados equivalentes de Microsoft Visual Basic. Por ejemplo, la función de hoja de cálculo MOD 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:
-
En el Editor de Visual Basic, escriba funciones de hoja de cálculo en el Asistente de Microsoft Office y, a continuación, haga clic en Buscar.
-
En la lista de temas, haga clic en Lista de funciones de hoja de cálculo disponibles para Visual Basic.
Para buscar 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 application, siga estos pasos:
-
En el Editor de Visual Basic, escriba el nombre de la función o del operador en el Asistente de Office y, a continuación, haga clic en Buscar. Por ejemplo, escriba mod.
-
En la lista de temas, haga clic en el tema de la función u operador. Por ejemplo, haga clic en el tema 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 de Visual Basic enumera las funciones que puede usar que generan los mismos resultados (o similares a) que devuelven las funciones.Equivalente de la función de hoja de cálculo de Microsoft Excel Visual Basic ------------------------------------------------------------------- función ABS() Abs () Función ATAN() Función Atn función CHAR() Función CDR CODE() función ASC COS() Función Cos FECHA() FUNCIÓN SERIE.FECHA.ERROR. TIPO() Función ERR IGUAL() Función EXP() Exp función INDIRECTO() No hay equivalente directo: use Rango, Celdas, Desplazamiento o cualquier otra forma de hacer referencia a las celdas. INFO() No hay equivalente directo : use la siguiente función CURDIR , las siguientes propiedades de aplicación (MEMORYTOTAL, MEMORYUSED, MEMORYFREE, VERSION, OPERATINGSYSTEM, CALCULATION, COUNT) ISBLANK() ISEMPTY ( ) ESREF() Función TIPONAME Función LARGO() Función LARGO() Función DISTR.LCASE N() No hay equivalente (ninguno necesario) NA() No hay equivalente - use ActiveCell.Value = "#N/A" RAND() Función RND RANDOMIZE() Función Randomize() FUNCIÓN SIN() Función SIN SIGNO() Función Sgn SQR() Función RAIZ SQR() Función Raiz Función T() No hay equivalente (no es necesario) TAN() Función TAN HOY() Función FECHA TRUNCAR() Función CORREGIR TIPO() Función TYPENAME UPPER() Función UCASE VALOR() Función VAL NOTA: La función de hoja de cálculo de Microsoft Excel y el operador o función equivalente de Visual Basic no siempre se calculan de la misma manera y pueden dar resultados diferentes, incluso cuando tienen el mismo nombre.Se prefiere usar el operador o la función equivalente de Visual Basic para aumentar la velocidad y la 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 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. Por ejemplo, puede usar la hoja de cálculo ATAN en la macro de Visual Basic mediante las funciones ExecuteExcel4Macro o Evaluate: x = Application.ExecuteExcel4Macro("Atan(12)") -o- x = Application.Evaluate("Atan(12)")