Funciones VBA
Funciones VBA
5
CreateObject (funcin) ............................................................................. 5 GetObject (funcin) .................................................................................. 9
Aplicacin .................................................................................. 15
Comando (funcin) ................................................................................. 15 Ejecutar (funcin) .................................................................................. 16
Matrices .................................................................................... 19
Array (funcin) ...................................................................................... 19 Filter (funcin) ...................................................................................... 20 Join (funcin) ........................................................................................ 21 LBound (Funcin) .................................................................................. 22 Split (funcin) ....................................................................................... 24 UBound (funcin) ................................................................................... 25
Conversin................................................................................. 27
Asc (funcin) ......................................................................................... 27 Car (funcin) ......................................................................................... 28 Da (funcin) ......................................................................................... 29 EuroConvert (funcin) ............................................................................ 30 FormatoMoneda (funcin) ....................................................................... 34 FormatoFechaHora (funcin) .................................................................. 35 FormatoNmero (funcin) ...................................................................... 36 FormatoPorcentaje (funcin) .................................................................. 37 GUIDFromString (funcin) ..................................................................... 38 Hex (funcin) ......................................................................................... 40 Nz (funcin) .......................................................................................... 42 Oct (funcin) ......................................................................................... 45 Str (funcin) .......................................................................................... 46 StringFromGUID (funcin) ..................................................................... 47 Funciones de conversin de tipo ............................................................. 49 Val (funcin) ......................................................................................... 55
Fecha/Hora ................................................................................ 71
Fecha (funcin) ...................................................................................... 71
AgregFecha (funcin) ............................................................................. 72 DifFecha (funcin) ................................................................................. 74 ParcFecha (funcin) ............................................................................... 78 SerieFecha (funcin) .............................................................................. 81 ValorFecha (funcin) .............................................................................. 83 Hora (funcin) ....................................................................................... 84 Minuto (funcin) .................................................................................... 85 Mes (funcin) ......................................................................................... 86 NombreMes (funcin) ............................................................................. 87 Ahora (funcin) ...................................................................................... 87 Segundo (funcin) .................................................................................. 88 HoraActual (funcin) ............................................................................. 89 Cronmetro ( funcin) ............................................................................. 90 SerieHora (funcin) ............................................................................... 91 ValorHora (funcin) ............................................................................... 92 DaSemana (funcin) .............................................................................. 93 NombreDaDeLaSemana (funcin) .......................................................... 95 Ao (funcin) ......................................................................................... 97
ActiveX
CreateObject (funcin)
Crea y devuelve una referencia a un objeto ActiveX.
Sintaxis
CreateObject(clase [, nombreservidor] )
clase nombreservidor
nombreaplic tipodeobjeto
Comentarios
Toda aplicacin que es compatible con la automatizacin proporciona como mnimo un tipo de objeto. Por ejemplo, una aplicacin de procesamiento de texto puede proporcionar un objeto Application, un objeto Document y un objeto Toolbar.
Para crear un objeto ActiveX, asigne el objeto devuelto por CreateObject a una variable de objeto:
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
' Declare an object variable to hold the object ' reference. Dim as Object causes late binding. Dim ExcelSheet As Object Set ExcelSheet = CreateObject("Excel.Sheet")
Este cdigo inicia la aplicacin que crea el objeto, que en este caso es una hoja de clculo de Microsoft Office Excel 2007. Cuando se ha creado un objeto, se hace referencia al mismo en cdigo con la variable de objeto que se ha definido. En el siguiente ejemplo, se obtiene acceso a las propiedades y los mtodos del nuevo objeto que usa la variable de objeto, ExcelSheet, y otros objetos de Excel, incluido el objeto Application y la coleccin Cells. ' Make Excel visible through the Application object. ExcelSheet.Application.Visible = True ' Place some text in the first cell of the sheet. ExcelSheet.Application.Cells(1, 1).Value = "This is column A, row 1" ' Save the sheet to C:\test.xls directory. ExcelSheet.SaveAs "C:\TEST.XLS" ' Close Excel with the Quit method on the Application object. ExcelSheet.Application.Quit ' Release the object variable. Set ExcelSheet = Nothing
La declaracin de una variable de objeto con la clusula As Object crea una variable que puede contener una referencia a cualquier tipo de objeto. Sin embargo, el acceso al objeto mediante dicha variable est enlazado en tiempo de ejecucin, es decir, el enlazado ocurre cuando se ejecuta el programa. Para crear una variable de objeto que tenga como resultado un enlace en tiempo de compilacin, es decir, un enlace al compilar el programa, declare la variable de objeto con un Id. de clase especfico. Por ejemplo, puede declarar y crear las siguientes referencias de Microsoft Excel:
Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.WorkSheet Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets(1) La referencia mediante una variable de enlace en tiempo de compilacin ofrece un mejor rendimiento, pero slo puede contener una referencia a la clase especificada en la declaracin.
Puede pasar un objeto devuelto por la funcin CreateObject a una funcin esperando un objeto como argumento. Por ejemplo, en el cdigo siguiente se crea y se pasa una referencia a un objeto Excel.Application:
Puede crear un objeto en un equipo remoto en red al pasar el nombre del equipo al argumento nombreservidor de CreateObject. Ese nombre es el mismo que la parte de Nombre de equipo de un nombre de recurso compartido: para un recurso compartido denominado "\\MyServer\Public", nombreservidor es "MyServer".
NOTA
Consulte la documentacin de COM (vea Microsoft Developer Network) para obtener informacin
adicional sobre cmo hacer visible una aplicacin en un equipo remoto en red. Puede que tenga que agregar una clave de registro para la aplicacin.
El siguiente cdigo devuelve el nmero de versin de una instancia de Excel que se ejecuta en un equipo remoto denominado MyServer: Dim xlApp As Object Set xlApp = CreateObject("Excel.Application", "MyServer") Debug.Print xlApp.Version
NOTA
Utilice CreateObject cuando no exista instancia activa del objeto. Si ya se est ejecutando una
instancia del objeto, se inicia una nueva instancia y se crea un objeto del tipo especificado. Para usar la instancia activa o iniciar la aplicacin y que sta cargue un archivo, utilice la funcin GetObject.
Si un objeto se ha registrado como objeto de instancia nica, solamente se crea una instancia del objeto, independientemente de cuntas veces se ejecute CreateObject.
Ejemplo
En este ejemplo se utiliza la funcin CreateObject para establecer una referencia ( xlApp ) a Excel. Se utiliza la referencia para obtener acceso a la propiedad Visible de Excel y, a continuacin, se utiliza el mtodo Salir de Excel para cerrarla. Finalmente la misma referencia se libera. Dim xlApp As Object ' Declare variable to hold the reference.
Set xlApp = CreateObject("excel.application") ' You may have to set Visible property to True ' if you want to see the application. xlApp.Visible = True ' Use xlApp to access Microsoft Excel's ' other objects. xlApp.Quit ' When you finish, use the Quit method to close ' the application, then release the reference.
GetObject (funcin)
Mostrar todo Devuelve una referencia a un objeto proporcionado por un componente ActiveX.
Sintaxis
GetObject([nombreruta ] [ , clase ] )
nombreruta
clase
nombreaplic tipodeobjeto
Comentarios
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
Utilice la funcin GetObject para obtener acceso a un objeto ActiveX desde un archivo y asignar el objeto a una variable de objeto. Utilice la instruccin Set para asignar el objeto devuelto por GetObject a la variable de objeto. Por ejemplo: Dim CADObject As Object Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")
Cuando se ejecuta este cdigo, se inicia la aplicacin asociada al nombreruta y se activa el objeto en el archivo especificado.
Si nombreruta es una cadena de longitud cero (""), GetObject devuelve una nueva instancia de objeto del tipo especificado. Si se omite el argumento nombreruta, GetObject devuelve un objeto activo del tipo especificado. Si no existe objeto del tipo especificado, se produce un error.
Algunas aplicaciones le permiten activar parte de un archivo. Agregue un signo de exclamacin ( !) al final del nombre de archivo y, a continuacin, una cadena que identifique la parte del archivo que desea activar. Para obtener informacin sobre cmo crear esta cadena, vea la documentacin de la aplicacin en la que se ha creado el objeto.
Por ejemplo, en una aplicacin de dibujo podra guardar varias capas de un dibujo en un archivo. Podra usar el cdigo siguiente para activar una capa en un dibujo denominado SCHEMA.CAD: Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")
Si no se especifica la clase del objeto, la automatizacin determina qu aplicacin iniciar y qu objeto activar, tomando como referencia el nombre de archivo proporcionado. Algunos archivos, por ejemplo pueden admitir ms de una clase de objeto. Por ejemplo, un dibujo podra admitir tres tipos diferentes de objeto: un objeto Application, un objeto Drawing y un objeto Toolbar, que son todos parte del mismo archivo. Para especificar el objeto de un archivo que desea activar en un archivo, utilice el argumento opcional clase. Por ejemplo: Dim MyObject As Object Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", _ "FIGMENT.DRAWING") En el ejemplo, FIGMENT es el nombre de una aplicacin de dibujo y DRAWING es uno de los tipos de objeto que admite.
Cuando se ha activado un objeto, se hace referencia al mismo en cdigo con la variable de objeto que se ha definido. En el ejemplo anterior, obtiene acceso a las propiedades y los mtodos del nuevo objeto mediante la variable de objeto MyObject.
NOTA
Utilice la funcin GetObject cuando haya una instancia activa del objeto o si desea crear el objeto
con un archivo ya cargado. Si no hay instancia activa y no desea que el objeto se inicie con un archivo cargado, utilice la funcin CreateObject.
Si un objeto se ha registrado como objeto de instancia nica, solamente se crea una instancia del objeto, independientemente de cuntas veces se ejecute CreateObject. Con un objeto de instancia nica, GetObject siempre devuelve la misma instancia denominada sintaxis de cadena de longitud cero (""). Se produce un error si el argumento nombreruta se omite. No puede utilizar GetObject para obtener una referencia a una clase creada con Visual Basic.
Ejemplo
En este ejemplo se utiliza la funcin GetObject para obtener una referencia a una hoja de clculo de Microsoft Office Excel 2007 especfica (MyXL). Se utiliza la propiedad Application de la hoja de clculo para mostrar Excel, cerrarlo, etc. Con dos llamadas a la API, el procedimiento Sub DetectExcel busca Excel y, si se est ejecutando, lo incluye en la tabla de objetos en ejecucin. La primera llamada a GetObject produce un error si Microsoft Excel no se est ejecutando. En el ejemplo, el error ocasiona que el indicador ExcelWasNotRunning se establezca en Verdadero. La segunda llamada a GetObject especifica un archivo que se va a abrir. Si Excel no se est ejecutando, la segunda llamada lo inicia y devuelve una referencia a la hoja de clculo representada por el archivo especificado, mytest.xls. El archivo debe existir en la ubicacin especificada; en caso contrario, se genera un error de automatizacin de Visual Basic. A continuacin, el cdigo de ejemplo muestra tanto Excel como la ventana que contiene la hoja de clculo especificada. Finalmente, si no se estuviera ejecutando ninguna versin anterior de Excel, el cdigo utiliza el mtodo Quit del objeto Application para cerrar Excel. Si la aplicacin se estuviera ejecutando, no se realiza ningn intento de cerrarla. La misma referencia se libera al establecerla en Nada.
' Declare necessary API routines: Declare Function FindWindow Lib "user32" Alias _ "FindWindowA" (ByVal lpClassName as String, _ ByVal lpWindowName As Long) As Long
Declare Function SendMessage Lib "user32" Alias _ "SendMessageA" (ByVal hWnd as Long,ByVal wMsg as Long, _ ByVal wParam as Long, _ ByVal lParam As Long) As Long
Sub GetExcel() Dim MyXL As Object ' Variable to hold reference ' to Microsoft Excel. Dim ExcelWasNotRunning As Boolean ' Flag for final release.
' Test to see if there is a copy of Microsoft Excel already running. On Error Resume Next ' Defer error trapping.
' GetObject function called without the first argument returns a ' reference to an instance of the application. If the application isn't ' running, an error occurs. Set MyXL = GetObject(, "Excel.Application") If Err.Number <> 0 Then ExcelWasNotRunning = True Err.Clear ' Clear Err object in case error occurred.
' Check for Microsoft Excel. If Microsoft Excel is running, ' enter it into the Running Object table. DetectExcel
' Set the object variable to reference the file you want to see. Set MyXL = GetObject("c:\vb4\MYTEST.XLS")
' Show Microsoft Excel through its Application property. Then ' show the actual window containing the file using the Windows ' collection of the MyXL object reference. MyXL.Application.Visible = True MyXL.Parent.Windows(1).Visible = True Do manipulations of your ' ... ' If this copy of Microsoft Excel was not running when you ' started, close it using the Application property's Quit method. ' Note that when you try to quit Microsoft Excel, the ' title bar blinks and a message is displayed asking if you ' want to save any loaded files. If ExcelWasNotRunning = True Then MyXL.Application.Quit End IF file here.
End Sub
Sub DetectExcel() ' Procedure dectects a running Excel and registers it. Const WM_USER = 1024 Dim hWnd As Long ' If Excel is running this API call returns its handle. hWnd = FindWindow("XLMAIN", 0) If hWnd = 0 Then Exit Sub Else ' 0 means Excel not running.
' Excel is running so use the SendMessage API ' function to enter it in the Running Object Table. SendMessage hWnd, WM_USER + 18, 0, 0 End If End Sub
Aplicacin
Comando (funcin)
Command (funcin)
Mostrar todo La funcin Command se utiliza para devolver la parte del argumento de la lnea de comandos utilizada para iniciar Microsoft Office Access 2007.
Comentarios
Cuando se inicia Access desde la lnea de comandos, la parte de la lnea de comandos que vaya despus de la opcin /cmd se pasa al programa como argumento de lnea de comandos. Se utiliza la funcin Command para devolver el argumento que se ha pasado.
Para cambiar un argumento de lnea de comandos una vez abierta la base de datos:
1.
2.
3.
La funcin Command devolver el nuevo argumento que se ha especificado. Cuando se usa la funcin Command en un mdulo en otro lugar distinto al cdigo de Visual Basic para Aplicaciones (VBA), se debe incluir un parntesis vaco despus de la funcin. Por ejemplo, para usar la funcin Command en un cuadro de texto de un formulario, se debe establecer la propiedad OrigenDelControl (ControlSource) del cuadro de texto en una expresin como la siguiente:
=Command()
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el siguiente ejemplo se muestra cmo iniciar Access con un argumento de lnea de comandos y, a continuacin, se muestra cmo devolver el valor de este argumento con la funcin Command.
Para probar este ejemplo, haga clic en el botn Inicio de Windows y, a continuacin, en Ejecutar. Escriba el cdigo siguiente en el cuadro Ejecutar en una sola lnea. (Escriba las diferentes partes de la informacin de la lnea de comandos entre comillas.) "C:\Archivos de programa\Microsoft Office\Office11\MSaccess.exe" _ "C:\Archivos de programa\Microsoft Office\Office11\Samples\Northwind.mdb" /cmd "Orders" A continuacin, cree un mdulo nuevo en la base de datos de ejemplo Importadores Neptuno y agregue el procedimiento siguiente Sub: Public Sub CheckCommandLine()
' Check the value returned by Command function and display ' the appropriate form. If Command = "Orders" Then DoCmd.OpenForm "Orders" ElseIf Command = "Employees" Then DoCmd.OpenForm "Employees" Else Exit Sub End If
End Sub Cuando se llama a este procedimiento, Access abre el formulario Orders (Pedidos). Se puede crear una macro AutoExec para llamar automticamente a este procedimiento cuando se abre la base de datos.
Ejecutar (funcin)
Mostrar todo
Ejecuta un programa ejecutable y devuelve un valor de tipo Variant (Double) que representa el identificador de tarea del programa si funciona correctamente; de lo contrario, devuelve cero.
Sintaxis
Ejecutar(nombreRuta, [estiloVentana ] )
Argumento
Descripcin Requerido. Valor de tipo Variant (String). Nombre del programa que se va a ejecutar as como todos los argumentos requeridos o modificadores de la lnea de comandos; puede incluir el directorio o la carpeta y la unidad. En equipos Macintosh, se puede usar la funcin MacID para especificar la firma de una aplicacin en lugar de su nombre. En el siguiente ejemplo, se utiliza la firma de Microsoft Word:
Shell MacID("MSWD")
nombreRuta
estiloVentana
Opcional. Valor de tipo Variant (Integer) que corresponde al estilo de la ventana en la que se va a ejecutar el programa. Si se omite estiloVentana, el programa se inicia en una ventana minimizada y seleccionada. En el sistema Macintosh (System 7.0 o posterior), estiloVentana determina nicamente si la aplicacin est seleccionada cuando se ejecuta.
Constante vbHide
Valor 0
Descripcin La ventana est oculta y el foco pasa a la ventana oculta. La constante vbHide no se aplica a las plataformas Macintosh. La ventana tiene el foco y se restauran su tamao y posicin originales. La ventana aparece como un icono que tiene el foco. La ventana est maximizada y tiene el foco. Se restauran el tamao y la posicin ms recientes de la ventana. La ventana activa permanece activa. La ventana aparece como un icono. La ventana activa permanece activa.
1 2 3 4
vbMinimizedNoFocus
Comentarios
Si la funcin Ejecutar ejecuta correctamente el archivo, devuelve el identificador de tarea del programa iniciado. Este identificador es un nmero nico que identifica el programa que se est ejecutando. Si la funcin Ejecutar no puede iniciar el programa, se genera un error.
En un equipo Macintosh, vbNormalFocus, vbMinimizedFocus y vbMaximizedFocus sitan la aplicacin en primer plano; vbHide, vbNoFocus y vbMinimizeFocus sitan la aplicacin en segundo plano.
NOTA
De forma predeterminada, la funcin Ejecutar ejecuta otros programas de forma asincrnica. Esto
significa que un programa iniciado mediante Ejecutar quizs no termine de ejecutarse antes de que se ejecuten las instrucciones que siguen a la funcin Ejecutar.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Ejecutar para ejecutar una aplicacin especificada por el usuario. En el sistema Macintosh, el nombre de la unidad predeterminada es HD y los e lementos del nombre de la ruta de acceso estn separados por dos puntos en lugar de barras diagonales inversas. De manera similar, se especificarn carpetas de Macintosh en lugar de Windows. ' Specifying 1 as the second argument ' opens the application in normal size and ' gives it the focus. Dim RetVal ' Run Calculator. RetVal = Shell("C:\WINDOWS\CALC.EXE", 1)
Matrices
Array (funcin)
Sintaxis
Array(arglist)
El argumento arglist es una lista de valores delimitada por comas que se asignan a los elementos de la matriz contenida en el tipo de dato Variant. Si no se especifican argumentos, se crea una matriz de longitud cero.
Comentarios
La notacin utilizada para hacer referencia a un elemento de una matriz consta del nombre de variable seguido de parntesis que contienen un nmero de ndice que indica el elemento deseado. En el ejemplo siguiente, la primera instruccin crea una variable denominada A como Variant. La segunda instruccin asigna una matriz a la variable A. La ltima instruccin asigna el valor contenido en el segundo elemento de matriz a otra variable. Dim A As Variant A = Array(10,20,30) B = A(2) El lmite inferior de una funcin Matriz (Array) se determina por el lmite inferior especificado con la instruccin Option Base, a no ser que Matriz (Array) se califique con el nombre de la biblioteca de tipos (por ejemplo, VBA.Array). En ese caso, Matriz (Array) no se ve afectada por Option Base.
NOTA
Un tipo de datos Variant que no se declare como matriz puede contener una. Una variable Variant
puede contener una matriz de cualquier tipo, excepto cadenas de longitud fija y tipos definidos por el usuario. Aunque el tipo de dato Variant que contiene una matriz es conceptualmente diferente de una matriz cuyos elementos son de tipo Variant, se tiene acceso a los elementos de la matriz del mismo modo.
Ejemplo
En este ejemplo se utiliza la funcin Matriz (Array) para devolver un tipo de dato Variant que contiene una matriz. Dim MyWeek, MyDay MyWeek = Array("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun") ' Return values assume lower bound set to 1 (using Option Base ' statement). MyDay = MyWeek(2) MyDay = MyWeek(4) ' MyDay contains "Tue". ' MyDay contains "Thu".
Filter (funcin)
Mostrar todo Devuelve una matriz a partir de cero que contiene un subconjunto de una matriz de cadenas basada en los criterios de filtro especificados.
Sintaxis
comparar
Valores
Comentarios
Si no se encuentran coincidencias de coincidencia en matrizorigen, la funcin Filtro devuelve una matriz vaca. Se produce un error si matrizorigen es un valor Null o si no es una matriz unidimensional.
La matriz devuelta por la funcin Filtro contiene nicamente los elementos suficientes para contener el nmero de elementos coincidentes.
Join (funcin)
Mostrar todo Devuelve una cadena creada mediante la combinacin de varias subcadenas de una matriz.
Sintaxis
Join(matrizDeOrigen, [delimitador ] )
matrizDeOrigen delimitador
LBound (Funcin)
Mostrar todo Devuelve un valor de tipo Long que contiene el subndice ms pequeo disponible para la dimensin indicada de una matriz.
Sintaxis
LBound(nombreDeMatriz, [dimensin ] )
nombreDeMatriz
dimensin
Comentarios
La funcin LBound se utiliza con la funcin UBound para determinar el tamao de una matriz. Utilice la funcin UBound para determinar el lmite superior de la dimensin de una matriz.
LBound devuelve los valores de la tabla siguiente para una matriz con las dimensiones siguientes: Dim A(1 To 100, 0 To 3, -3 To 4)
Instruccin
LBound(A, 1) LBound(A, 2) LBound(A, 3)
Valor devuelto 1 0 -3
El lmite inferior predeterminado de cualquier dimensin es 0 1, dependiendo del valor de la instruccin Option Base. La base de una matriz creada con la funcin Matriz es cero; no se ve afectada por Option Base.
Las matrices cuyas dimensiones se establecen con la clusula To en una instruccin Dim, Private, Public, ReDim o Static, pueden tener un valor entero como lmite inferior.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin LBound para determinar el subndice ms pequeo disponible para la dimensin indicada de una matriz. Utilice la instruccin Option Base para reemplazar el valor predeterminado de subndice de matriz de base 0. Dim Lower ' Declare array variables. Dim MyArray(1 To 10, 5 To 15, 10 To 20) Dim AnyArray(10) Lower = Lbound(MyArray, 1) Lower = Lbound(MyArray, 3) Lower = Lbound(AnyArray) ' Returns 0 or 1, depending on setting of Option Base. ' Returns 1. ' Returns 10.
Split (funcin)
Funcin Split
Mostrar todo Devuelve una matriz unidimensional y de base cero que contiene un nmero especificado de subcadenas.
Sintaxis
expresin
delimitador
lmite comparar
Valores
UBound (funcin)
Mostrar todo Devuelve un valor de tipo Long que contiene el mayor subndice disponible para la dimensin indicada de una matriz.
Sintaxis
UBound(nombreDeMatriz, [dimensin ] )
nombreDeMatriz
dimensin
Comentarios
La funcin UBound se utiliza con la funcin LBound para determinar el tamao de una matriz. Utilice la funcin LBound para determinar el lmite inferior de la dimensin de una matriz.
UBound devuelve los siguientes valores para una matriz con estas dimensiones: Dim A(1 To 100, 0 To 3, -3 To 4)
Instruccin
UBound(A, 1) UBound(A, 2) UBound(A, 3)
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin UBound para determinar el mayor subndice disponible para la dimensin indicada de una matriz. Dim Upper ' Declare array variables. Dim MyArray(1 To 10, 5 To 15, 10 To 20) Dim AnyArray(10) Upper = UBound(MyArray, 1) Upper = UBound(MyArray, 3) Upper = UBound(AnyArray) ' Returns 10. ' Returns 20. ' Returns 10.
Conversin
Asc (funcin) Funcin Asc
Mostrar todo Devuelve un Entero que representa el cdigo de carcter que corresponde a la primera letra de una cadena.
Sintaxis
Asc(cadena)
El argumento cadena necesario es cualquier expresin de cadena vlida. Si cadena no contiene caracteres, se produce un error en tiempo de ejecucin.
Comentarios El intervalo de devoluciones es de 0 a 255 en sistemas que no sean DBCS y de 32768 a 32767 en los sistemas DBCS.
NOTA
La funcin AscB se utiliza con datos byte contenidos en una cadena. En lugar de devolver el cdigo
de carcter para el primer carcter, AscB devuelve el primer byte. La funcin AscW devuelve el cdigo de caracteres Unicode excepto en aquellas plataformas que no sean compatibles con Unicode, en cuyo caso el comportamiento es idntico a la funcin Asc.
NOTA
Visual Basic para Macintosh no admite cadenas Unicode. Por tanto, AscW(n) no puede devolver
todos los caracteres Unicode para los valores n en el intervalo de 128 a 65535, como lo hace el entorno Windows. En su lugar, AscW(n) intenta calcular los valores Unicode n mayores de 127. Por tanto, no debera utilizar AscW en el entorno Macintosh.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Asc para devolver un cdigo de carcter correspondiente a la primera letra de la cadena. Dim MyNumber MyNumber = Asc("A") MyNumber = Asc("a") MyNumber = Asc("Apple") ' Returns 65. ' Returns 97. ' Returns 65.
Car (funcin)
Car (funcin, Chr)
Mostrar todo Devuelve una cadena que contiene el carcter asociado al cdigo de carcter especificado.
Sintaxis
Chr(cdcar)
Comentarios
Los nmeros del 0 al 31 son los mismos que el cdigo ASCII estndar no imprimible. Por ejemplo, Chr(10) devuelve un carcter de alimentacin. El intervalo normal de cdcar es de 0 a 255. Sin embargo, en los sistemas DBCS el intervalo real de cdcar es de -32768 a 65535.
NOTA
La funcin CarB se utiliza con datos byte incluidos en un valor String. En vez de devolver un carcter,
que puede ser de uno o dos bytes, CarB siempre devuelve un nico byte. La funcin CarW devuelve un valor String que contiene el carcter Unicode excepto en las plataformas donde no se admite Unicode, en cuyo caso el comportamiento es idntico al de la funcin Car.
NOTA
Visual Basic para Macintosh no admite cadenas Unicode. Por tanto, CarW(n) no puede devolver
todos los caracteres Unicode para n valores en el intervalo de 128 a 65535, como ocurre en el entorno Windows. Por el contrario, CarW(n) intenta calcular los valores n Unicode mayores de 127. Por tanto, no debera utilizar CarW en el entorno Macintosh.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Car para devolver el carcter asociado al cdigo de carcter especificado. Dim MyChar MyChar = Chr(65) MyChar = Chr(97) MyChar = Chr(62) MyChar = Chr(37) ' Returns A. ' Returns a. ' Returns >. ' Returns %.
Da (funcin)
Day (funcin)
Mostrar todo Devuelve un tipo de dato Variant (Integer) que especifica un nmero completo entre 1 y 31, ambos inclusive, que representa el da del mes.
Sintaxis Day(fecha)
El argumento fecha requerido es cualquier expresin numrica o ">expresin de cadena de tipo Variant, o bien, cualquier combinacin de stas que represente una fecha. Si fecha contiene un valor Nulo, se devuelve Nulo.
NOTA
mes del argumento fecha. Si el calendario es Hijri, el entero devuelto representa el da Hijri del mes del argumento fecha.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Da (Day) para obtener el da del mes de una fecha especificada. En el entorno de desarrollo, el literal de fecha se muestra en formato corto utilizando la configuracin regional del cdigo. Dim MyDate, MyDay MyDate = #February 12, 1969# MyDay = Day(MyDate) ' Assign a date.
EuroConvert (funcin)
Mostrar todo Puede utilizar la funcin EuroConvert para convertir un nmero a un valor en Euros, o bien un valor en Euros a otra moneda. Tambin puede utilizarla para convertir un nmero de una moneda a otra utilizando el Euro como divisa intermedia (lo que se conoce como triangulacin). La funcin EuroConvert utiliza los valores de conversin fijados por la Unin Europea. Sintaxis EuroConvert(nmero, moneda de origen, moneda de destino [, precisin mxima, precisin de triangulacin] )
nmero
moneda origen
de
Una expresin de cadena, o referencia a un campo que contiene la cadena, que corresponde al acrnimo ISO (Organizacin internacional de normalizacin) de la moneda que desea convertir. Puede ser cualquiera de los cdigos ISO que se enuncian en la tabla siguiente. Cdigo ISO BEF LUF DEM ESP FRF IEP ITL NLG ATS PTE FIM EUR Precisin de clculo 0 0 2 0 2 2 0 2 2 0 2 2 Precisin presentacin 0 0 2 0 2 2 0 2 2 0 2 2 de
Moneda Franco belga Franco luxemburgus Marco alemn Peseta espaola Franco francs Libra irlandesa Lira italiana Florn neerlands Cheln austriaco Escudo portugus Marco finlands Euro En la tabla anterior, la precisin del clculo determina a qu unidad monetaria se redondea el resultado segn la moneda de la conversin. Por ejemplo, cuando se realiza la conversin a marcos alemanes, la precisin de clculo es 2 y el resultado se redondea al siguiente pfennig y 100 pfennigs a un marco. La precisin de presentacin determina el nmero de cifras decimales que aparecen en el campo que contiene el resultado. Las versiones posteriores de la funcin EuroConvert podran admitir otras monedas. Para obtener ms informacin sobre las nuevas monedas y actualizaciones de la funcin
EuroConvert vea la pgina Web del Euro y Microsoft Office. Cdigo ISO DKK GRD SEK GBP
moneda destino
de
Expresin de cadena, o referencia a un campo que contiene la cadena, que corresponde al cdigo ISO de la moneda a la que desea convertir el nmero. Para obtener una lista de los cdigos ISO de monedas, vea la descripcin del argumento moneda de origen. Opcional. Valor Boolean donde True (1) omite la norma de redondeo especifica de la moneda (denominada precisin de presentacin en la descripcin del argumento moneda de origen y utiliza un factor de conversin de 6 dgitos significativos sin redondeo posterior. False (0) utiliza las normas de redondeo especficas de la moneda para mostrar el resultado. Si se omite este parmetro, el valor predeterminado es False. Opcional. Valor Entero mayor o igual a 3 que especifica el nmero de dgitos significativos utilizados en la precisin del clculo del valor intermedio del Euro cuando se realiza la conversin entre dos monedas nacionales.
precisin mxima
precisin de triangulacin
Comentarios
Los ceros a la derecha quedan truncados y los parmetros no vlidos dan como resultado #Error.
Si el cdigo ISO de origen es el mismo que el cdigo ISO de destino, el valor original del nmero permanece activo.
La funcin EuroConvert utiliza los valores actuales establecidos por la Unin Europea. Si dichos valores cambian, Microsoft actualizar la funcin. Para obtener informacin completa sobre las reglas y los valores vigentes actualmente, vea las publicaciones de la Comisin Europea relativas al Euro. Para obtener ms informacin sobre cmo conseguir estas publicaciones, vea la pgina Web del Euro y Microsoft Office.
Ejemplo
En el primer ejemplo se convierten 1,20 marcos alemanes en el valor correspondiente en Euros (el resultado es 0,61). En el segundo ejemplo se convierten 1,47 francos franceses en marcos alemanes (el resultado es 0,44 marcos alemanes). Se supone un valor de conversin de 1 Euro = 6,55858 francos franceses y 1,92974 marcos alemanes. EuroConvert(1.20,"DEM","EUR") EuroConvert(1.47,"FRF","DEM",TRUE,3)
FormatoMoneda (funcin)
FormatoMoneda (funcin, FormatCurrency)
Devuelve una expresin con formato de valor de moneda mediante el smbolo de moneda definido en el Panel de control del sistema. Sintaxis FormatCurrency(Expresin [, NmDgitosTrasDecimal ] [, IncluirDgitoInicial ] [,
UsarParntesisParaNmerosNegativos ] [, AgruparDgitos ] )
Expresin NmDgitosTrasDecimal
IncluirDgitoInicial
UsarParntesisParaNmerosNegativos
AgruparDgitos
Valores
Comentarios
Cuando se omiten uno o ms argumentos opcionales, la configuracin regional del equipo proporciona los valores de los argumentos omitidos.
La configuracin regional del sistema determina la posicin del smbolo de moneda con respecto al valor de moneda.
NOTA
FormatoFechaHora (funcin)
FormatDateTime (funcin)
Devuelve una expresin con formato de fecha u hora. Sintaxis FormatDateTime(Fecha [, FormatoconNombre ] ) La sintaxis de la funcin FormatoFechaHora (FormatDateTime) tiene los siguientes argumentos:
Argumento Descripcin Requerido. Expresin de fecha a la que se va a dar formato. Opcional. Valor numrico que indica el formato de fecha y hora utilizado. Si se omite, se utiliza vbGeneralDate.
Fecha FormatoconNombre
FormatoNmero (funcin)
FormatoNmero (funcin, FormatNumber)
Devuelve una expresin con formato numrico.
Sintaxis
FormatNumber(Expresin
[,
NmDgitosTrasDecimal
[,
IncluirDgitoInicial
[,
UsarParntesisParaNmerosNegativos ] [, AgruparDgitos ] )
Expresin NmDgitosTrasDecimal
IncluirDgitoInicial
UsarParntesisParaNmerosNegativos
AgruparDgitos
Valores
Comentarios
Cuando se omiten uno o ms argumentos opcionales, la configuracin regional del equipo proporciona los valores de los argumentos omitidos.
NOTA
FormatoPorcentaje (funcin)
FormatPercent (funcin)
Devuelve una expresin con formato de porcentaje (multiplicado por 100) con un carcter % al final.
Sintaxis
FormatPercent(Expresin
[,
NmDgitosTrasDecimal
[,
IncluirDgitoInicial
[,
UsarParntesisParaNmerosNegativos ] [, AgruparDgitos ] )
Expresin NmDgitosTrasDecimal
IncluirDgitoInicial
UsarParntesisParaNmerosNegativos
AgruparDgitos
Valores
Comentarios
Cuando se omiten uno o ms argumentos opcionales, la configuracin regional del equipo proporciona los valores de los argumentos omitidos.
NOTA
GUIDFromString (funcin)
Mostrar todo La funcin GUIDFromString convierte una cadena en un GUID, que es una matriz de tipo Byte.
Sintaxis
GUIDFromString(expresincadena)
El argumento expresincadena necesario es una expresin de cadena que se evala como un GUID en forma de cadena.
Comentarios
El motor de base de datos Microsoft Access almacena los GUID como matrices de tipo Byte. Sin embargo, Microsoft Office Access 2007 no puede devolver datos Byte de un control de un formulario o un informe. Para
que se devuelva el valor de un GUID de un control, debe convertirlo en una cadena. Para convertir un GUID en una cadena, utilice la funcin StringFromGUID. Para convertir una cadena en un GUID, utilice la funcin GUIDFromString.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el ejemplo siguiente se utiliza la funcin GUIDFromString para convertir una cadena en un GUID. La cadena es un GUID almacenado en forma de cadena en una tabla Employees (Empleados) replicada. El campo, s_GUID, es un campo oculto agregado a cada tabla replicada de una base de datos replicada. Sub CheckGUIDType() Dim dbsConn As ADODB.Connection Dim rstEmployees As ADODB.Recordset ' Make a connection to the current database. Set dbsConn = Application.CurrentProject.Connection Set rstEmployees = New ADODB.Recordset rstEmployees.Open "Employees", _ dbsConn, , , adCmdTable ' Print the GUID to the immediate window. Debug.Print rst!s_GUID Debug.Print TypeName(rst!s_GUID) Debug.Print TypeName(GuidFromString(rst!s_GUID)) Set rstEmployees = Nothing Set dbsConn = Nothing End Sub
Hex (funcin)
Funcin Hex
Mostrar todo Devuelve una cadena que representa el valor hexadecimal de un nmero.
Sintaxis
Hex(nmero)
Comentarios
Si nmero no es un nmero entero, se redondear al nmero entero ms prximo antes de ser evaluado.
Si el valor de nmero es Nulo Vaco Cualquier otro nmero Hex devuelve Nulo Cero (0) Hasta ocho caracteres hexadecimales
Puede representar los nmeros hexadecimales directamente si antepone &H. a los nmeros en el intervalo adecuado. Por ejemplo, &H10 representa el decimal 16 en notacin hexadecimal.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Hex para devolver el valor hexadecimal de un nmero.
Dim MyHex MyHex = Hex(5) MyHex = Hex(10) MyHex = Hex(459) ' Returns 5. ' Returns A. ' Returns 1CB.
Nz (funcin)
Mostrar todo Puede utilizar la funcin Nz para que se devuelva cero, una cadena de longitud cero ("") o cualquier otro valor especificado cuando un valor de tipo Variant es Nulo. Por ejemplo, se puede utilizar esta funcin para convertir un valor Nulo en otro valor y evitar que se propague a travs de una expresin.
Sintaxis
Nz(variant, [valorsiesnulo ] )
variant valorsiesnulo
Si el valor del argumento variant es Nulo, la funcin Nz devuelve el nmero cero o una cadena de longitud cero (siempre devuelve una cadena de longitud cero cuando se utiliza en una expresin de consulta), dependiendo de si el contexto indica que el valor debe ser un nmero o una cadena. Si se incluye el argumento opcional valorsiesnulo, la funcin Nz devolver el valor especificado por ese argumento si el
argumento variant es Nulo. Cuando se utiliza en una expresin de consulta, la funcin Nz siempre debe incluir el argumento valorsiesnulo.
Comentarios
La funcin Nz es til para las expresiones que incluyan valores Nulo. Para forzar que una expresin se evale como un valor no Nulo aunque contenga un valor Nulo, utilice la funcin Nz para que se devuelva el valor cero, una cadena de longitud cero o un valor personalizado.
Por ejemplo, la expresin 2 + varX devolver siempre un valor Nulo cuando el valor de Variant varX sea Nulo. Sin embargo, 2 + Nz(varX) devolver 2.
La funcin Nz se puede utilizar a menudo como una alternativa a la funcin SiInm. Por ejemplo, en el cdigo siguiente, son necesarias dos expresiones que contengan la funcin SiInm para que se devuelva el resultado deseado. La primera expresin que incluye la funcin SiInm se utiliza para comprobar el valor de una variable y convertirlo en cero si es Nulo. varTemp = IIf(IsNull(varFreight), 0, varFreight) varResult = IIf(varTemp > 50, "High", "Low")
En el siguiente ejemplo, la funcin Nz ofrece la misma funcionalidad que la primera expresin y se obtiene el resultado deseado en un solo paso en lugar de dos. varResult = IIf(Nz(varFreight) > 50, "High", "Low")
Si se proporciona un valor para el argumento opcional valorsiesnulo, se devolver ese valor cuando variant sea Nulo. Si incluye este argumento opcional, no tendr que utilizar una expresin que contenga la funcin SiInm. Por ejemplo, en la siguiente expresin se utiliza la funcin SiInm para que se devuelva una cadena si el valor de varFreight es Nulo. varResult = IIf(IsNull(varFreight), _ "No Freight Charge", varFreight)
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En el siguiente ejemplo se evala un control de un formulario y se devuelve una de las dos cadenas basndose en el valor del control. Si el valor del control es Nulo, el procedimiento utiliza la funcin Nz para convertir un valor Nulo en una cadena de longitud cero. Public Sub CheckValue() Dim frm As Form Dim ctl As Control Dim varResult As Variant ' Return Form object variable ' pointing to Orders form. Set frm = Forms!Orders ' Return Control object variable ' pointing to ShipRegion. Set ctl = frm!ShipRegion ' Choose result based on value of control. varResult = IIf(Nz(ctl.Value) = vbNullString, _ "No value.", "Value is " & ctl.Value & ".") ' Display result. MsgBox varResult, vbExclamation End Sub
Oct (funcin)
Devuelve un valor de tipo Variant (String) que representa el valor octal de un nmero.
Mostrar todo
Sintaxis
Oct(nmero)
Comentarios
Si nmero no es un nmero entero, se redondear al nmero entero ms prximo antes de ser evaluado.
Si el valor de nmero es Nulo Vaco Cualquier otro nmero Oct devolver Nulo Cero (0) Hasta 11 caracteres octales
Los nmeros octales se pueden representar directamente anteponiendo &O a los nmeros del intervalo adecuado. Por ejemplo, &O10 es la notacin octal para 8 decimal.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Oct para que se devuelva el valor octal de un nmero. Dim MyOct MyOct = Oct(4) MyOct = Oct(8) MyOct = Oct(459) ' Returns 4. ' Returns 10. ' Returns 713.
Str (funcin)
Cad (funcin)
Devuelve un valor de tipo Variant (String) que representa un nmero. Mostrar todo
Sintaxis Cad(nmero) El argumento nmero requerido es un valor de tipo Long que contiene cualquier expresin numrica vlida. Comentarios
Cuando se convierten nmeros en cadenas, se reserva siempre un espacio inicial para el signo del nmero. Si el nmero es positivo, la cadena devuelta contiene un espacio inicial y el signo ms (+) queda implcito.
Utilice la funcin Formato para convertir valores numricos en formato de fecha, hora o moneda o cualquier otro formato definido por el usuario. A diferencia de Cad, la funcin Formato no incluye un espacio inicial para el signo de nmero.
NOTA
La funcin Cad reconoce slo el punto (.) como separador decimal vlido. Cuando se puedan utilizar
separadores decimales diferentes (por ejemplo, en aplicaciones internacionales), utilice CCadena para convertir un nmero en una cadena.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Cad para que se devuelva una representacin de cadena de un nmero. Al convertir un nmero en una cadena, se reserva siempre un espacio inicial para su signo. Dim MyString MyString = Str(459) MyString = Str(-459.65) ' Returns " 459". ' Returns "-459.65".
MyString = Str(459.001)
StringFromGUID (funcin)
Mostrar todo La funcin StringFromGUID convierte un GUID, que es una matriz de tipo Byte, en una cadena.
Sintaxis
StringFromGUID(guid)
El argumento guid requerido es una matriz de datos de tipo Byte que se utiliza para identificar de manera nica una aplicacin, un componente o un elemento de datos al sistema operativo.
Comentarios
El motor de base de datos Microsoft Access almacena los GUID como matrices de tipo Byte. Sin embargo, Microsoft Office Access 2007 no puede devolver datos Byte de un control de un formulario o un informe. Para que se devuelva el valor de un GUID de un control, debe convertirlo en una cadena. Para convertir un GUID en una cadena, utilice la funcin StringFromGUID. Para convertir de nuevo una cadena en un GUID, utilice la funcin GUIDFromString.
Por ejemplo, es posible que tenga que hacer referencia a un campo que contiene un GUID al utilizar la replicacin de bases de datos. Para que se devuelva el valor de un control de un formulario dependiente de un campo que contiene un GUID, utilice la funcin StringFromGUID para convertir el GUID en una cadena.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el ejemplo siguiente se devuelve el valor del control s_GUID de un formulario Employees (Empleados) en forma de cadena y se asigna a una variable de cadena. El control s_GUID depende del campo s_GUID, uno de los campos del sistema agregados a cada tabla replicada de una base de datos replicada.
End Sub
Sintaxis
CBool(expr)
CByte(expr)
CMoneda(expr)
CFecha(expr)
CDoble(expr)
CDec(expr)
CEntero(expr)
CLargo(expr)
CSimple(expr)
CCadena(expr)
CVariante(expr)
El nombre de la funcin determina el tipo de valor devuelto, tal y como se muestra a continuacin:
Tipo de valor devuelto Boolean Byte Currency Date Double
Intervalo del argumento expr Cualquier cadena o expresin numrica vlida. De 0 a 255. de -922.337.203.685.477,5808 a 922.337.203.685.477,5807. Cualquier expresin de fecha vlida. De -1,79769313486231E308 -4,94065645841247E-324 para valores negativos; de 1,79769313486232E308 para valores positivos. a a
4,94065645841247E-324
CDec
Decimal
+/-79.228.162.514.264.337.593.543.950.335 para nmeros de escala cero, es decir, nmeros sin posiciones decimales. Para nmeros con 28 posiciones decimales, el intervalo es +/-7,9228162514264337593543950335. El menor nmero posible distinto de cero es 0,0000000000000000000000000001. De -32.768 a 32.767; las fracciones se redondean. De -2.147.483.648 a 2.147.483.647; las fracciones se redondean. De -3,402823E38 a -1,401298E-45 para valores negativos; de 1,401298E-45 a 3,402823E38 para valores positivos. Los valores devueltos de CCadena dependen del argumento expr. Mismo intervalo que Double para los valores numricos. Mismo intervalo que String para los valores no numricos.
CCadena CVariante
String Variant
Comentarios
Si la expresin que se pasa a la funcin est fuera del intervalo del tipo de datos al que se convierte, se genera un error.
En general, se puede documentar el cdigo mediante las funciones de conversin de tipo de datos para mostrar que el resultado de alguna operacin debe expresarse como un tipo de datos particular en vez del tipo de datos predeterminado. Por ejemplo, utilice CMoneda para imponer la aritmtica de moneda en casos en los que, normalmente, se aplicara la aritmtica de precisin simple, precisin doble o de enteros.
Debe utilizar las funciones de conversin de tipo de datos en vez de Val para proporcionar conversiones internacionales de un tipo de datos a otro. Por ejemplo, cuando utilice CMoneda, se reconocern correctamente diferentes separadores decimales, separadores de miles y opciones de moneda dependiendo de la configuracin regional del equipo.
Cuando la parte fraccionaria es exactamente 0,5, CEntero y CLargo redondean siempre al nmero par ms prximo. Por ejemplo, 0,5 se redondea a 0 y 1,5 se redondea a 2. CEntero y CLargo difieren de las funciones SinDec y Ent, que truncan en vez de redondear la parte fraccionaria de un nmero. Adems, las funciones SinDec y Ent siempre devuelven un valor del mismo tipo que se ha pasado.
Utilice la funcin EsFecha para determinar si fecha se puede convertir en una fecha u hora. CFecha reconoce literales de fecha y literales de hora as como algunos nmeros que se encuentran en el intervalo de fechas aceptables. Cuando se convierte un nmero en una fecha, la parte correspondiente al entero se convierte en fecha. La parte fraccionaria del nmero se convierte en una hora del da, a partir de la medianoche.
CFecha reconoce los formatos de fecha segn la configuracin regional del sistema. Es posible que no se determine el orden correcto del da, mes y ao si se proporciona en un formato distinto al de la configuracin de fecha reconocida. Adems, un formato de fecha larga no se reconoce si tambin contiene la cadena "da de la semana".
Tambin se proporciona una funcin CVFecha para la compatibilidad con las versiones anteriores de Visual Basic. La sintaxis de la funcin CVFecha es idntica a la de CFecha. Sin embargo, CVFecha devuelve un valor de tipo Variant cuyo subtipo es Date en lugar de un tipo Date real. Dado que ahora existe un tipo Date intrnseco, ya no es necesaria la funcin CVFecha. Se puede lograr el mismo efecto si se convierte una expresin en un tipo Date y, a continuacin, se asigna a un tipo Variant. Esta tcnica es coherente con la conversin de todos los otros tipos intrnsecos en sus subtipos Variant equivalentes.
NOTA
La funcin CDec no devuelve un tipo de datos discreto sino un valor de tipo Variant cuyo valor se ha
Ejemplos
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
Funcin CBool
En este ejemplo, se utiliza la funcin CBool para convertir una expresin en un valor de tipo Boolean. Si la expresin se evala como un valor distinto de cero, CBool devuelve Verdadero; en caso contrario, devuelve Falso. Dim A, B, Check A = 5: B = 5 ' Initialize variables. ' Check contains True.
Check = CBool(A = B)
A = 0
Check = CBool(A)
Funcin CByte
En este ejemplo, se utiliza la funcin CByte para convertir una expresin en un valor de tipo Byte. Dim MyDouble, MyByte MyDouble = 125.5678 ' MyDouble is a Double. ' MyByte contains 126.
MyByte = CByte(MyDouble)
Funcin CMoneda
En este ejemplo, se utiliza la funcin CMoneda para convertir una expresin en un valor de tipo Currency. Dim MyDouble, MyCurr MyDouble = 543.214588 ' MyDouble is a Double.
MyCurr = CCur(MyDouble * 2) ' Convert result of MyDouble * 2 (1086.429176) to a ' Currency (1086.4292).
Funcin CFecha
En este ejemplo, se utiliza la funcin CFecha para convertir una cadena en un valor de tipo Date. En general, no se recomienda incluir fechas y horas en el cdigo como cadenas (tal y como se muestra en el ejemplo). Es mejor utilizar literales de fecha y hora, como #2/12/1969# y #4:45:23 PM#. Dim MyDate, MyShortDate, MyTime, MyShortTime MyDate = "February 12, 1969" ' Convert to Date data type. MyShortDate = CDate(MyDate) MyTime = "4:35:47 PM" ' Convert to Date data type. MyShortTime = CDate(MyTime)
Funcin CDoble
En este ejemplo, se utiliza la funcin CDoble para convertir una expresin en un valor de tipo Double. Dim MyCurr, MyDouble MyCurr = CCur(234.456784) ' Convert result to a Double. MyDouble = CDbl(MyCurr * 8.2 * 0.01)
Funcin CDec
En este ejemplo, se utiliza la funcin CDec para convertir un valor numrico en un valor de tipo Decimal. Dim MyDecimal, MyCurr MyCurr = 10000000.0587 MyDecimal = CDec(MyCurr) ' MyCurr is a Currency. ' MyDecimal is a Decimal.
Funcin CEntero
En este ejemplo, se utiliza la funcin CEntero para convertir un valor en un valor de tipo Integer. Dim MyDouble, MyInt MyDouble = 2345.5678 MyInt = CInt(MyDouble) ' MyDouble is a Double. ' MyInt contains 2346.
Funcin CLargo
En este ejemplo, se utiliza la funcin CLargo para convertir un valor en un valor de tipo Long. Dim MyVal1, MyVal2, MyLong1, MyLong2 MyVal1 = 25427.45 MyVal2 = 25427.55 ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1) ' MyLong1 contains 25427. MyLong2 = CLng(MyVal2) ' MyLong2 contains 25428.
Funcin CSimple
En este ejemplo, se utiliza la funcin CSimple para convertir un valor en un valor de tipo Single. Dim MyDouble1, MyDouble2, MySingle1, MySingle2 ' MyDouble1, MyDouble2 are Doubles. MyDouble1 = 75.3421115: MyDouble2 = 75.3421555 MySingle1 = CSng(MyDouble1) ' MySingle1 contains 75.34211. MySingle2 = CSng(MyDouble2) ' MySingle2 contains 75.34216.
Funcin CCadena
En este ejemplo, se utiliza la funcin CCadena para convertir un valor numrico en un valor de tipo String. Dim MyDouble, MyString MyDouble = 437.324 ' MyDouble is a Double.
Funcin CVariante
En este ejemplo, se utiliza la funcin CVariante para convertir una expresin en un valor de tipo Variant. Dim MyInt, MyVar MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000") ' MyVar contains the string 4534000.
Val (funcin)
Mostrar todo Devuelve los nmeros incluidos en una cadena como un valor numrico del tipo apropiado.
Sintaxis
Val(cadena)
Comentarios
La funcin Val deja de leer la cadena en el primer carcter que no puede reconocer como parte de un nmero. Los smbolos y caracteres que, a menudo, se consideran parte de valores numricos, como signos de dlar y comas, no se reconocen. Sin embargo, la funcin reconoce los prefijos de base &O (de octal) y &H (de
hexadecimal). Los espacios en blanco, tabulaciones y caracteres de avance de lnea se eliminan del argumento.
En el siguiente ejemplo, se devuelve el valor 1615198: Val(" 1615 198th Street N.E.")
En el cdigo siguiente, Val devuelve el valor decimal -1 para el valor hexadecimal mostrado: Val("&HFFFF")
NOTA
La funcin Val reconoce slo el punto (.) como separador decimal vlido. Cuando se utilizan
separadores decimales diferentes, como en aplicaciones internacionales, se debe utilizar CDoble para convertir una cadena en un nmero.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Val para que se devuelvan los nmeros incluidos en una cadena. Dim MyValue MyValue = Val("2457") MyValue = Val(" 2 45 7") MyValue = Val("24 and 57") ' Returns 2457. ' Returns 2457. ' Returns 24.
Base de datos
DDE (funcin)
Mostrar todo Puede usar la funcin DDE para iniciar una comunicacin de intercambio dinmico de datos (DDE) con otra aplicacin, solicitar un elemento de informacin de esa aplicacin y mostrar esa informacin en un control en un formulario o informe.
Por ejemplo, puede usar la funcin DDE en la propiedad OrigenDelControl (ControlSource) de un cuadro de texto para mostrar datos de una celda especificada en una hoja de clculo de Microsoft Office Excel 2007.
Sintaxis
aplicacin
tema
elemento
Comentarios
La funcin DDE intenta iniciar una comunicacin DDE con la aplicacin y el tema especificados, y solicita los datos de elemento. Si se realiza correctamente, la funcin DDE devuelve una cadena que contiene la informacin solicitada.
Si est solicitando datos de Microsoft Excel, elemento podra ser un identificador de fila y columna, como
"R1C1" o el nombre de un rango de celdas. En el siguiente ejemplo, la funcin DDE solicita informacin de la
celda de la fila 1, columna 1 de una hoja de clculo de Microsoft Excel. Puede insertar esta expresin para un control de cuadro de texto en el cuadro de la propiedad OrigenDelControl (ControlSource) en la hoja de propiedades del control: =DDE("Excel", "Sheet1", "R1C1")
Puede utilizar la funcin DDE solamente en la propiedad OrigenDelControl (ControlSource) de un cuadro de texto, grupo de opciones, casilla de verificacin o cuadro combinado. No se puede llamar a la funcin DDE desde un mdulo de Visual Basic para Aplicaciones (VBA).
Cuando utiliza la funcin DDE, el control es de slo lectura en la vista Formulario y Vista preliminar. Por ejemplo, si utiliza la funcin DDE en un cuadro de texto, el texto de este cuadro no puede ser modificado. Debe editar el texto en la otra aplicacin. Dado que la propiedad OrigenDelControl (ControlSource) es de slo lectura en las vistas Formulario y Vista preliminar, los cambios del control deben hacerse en la vista Diseo.
Microsoft Windows y los recursos y memoria del equipo determinan el nmero mximo de comunicaciones DDE que se pueden abrir simultneamente. Si la comunicacin no se puede iniciar porque la otra aplicacin no se est ejecutando o no reconoce el tema especificado, o si se ha alcanzado el nmero mximo de comunicaciones, la funcin DDE devuelve un valor Null.
NOTA
La otra aplicacin puede estar configurada de forma que pase por alto la solicitud de comunicacin
DDE. Si es as, la funcin DDE devuelve un valor Null. De igual modo, puede configurar Access para que omita solicitudes de otras aplicaciones: haga clic en Opciones de Access en el men Archivo y, a continuacin, haga clic en Avanzadas en el cuadro de dilogo Configuracin de la aplicacin. En Operaciones DDE, seleccione Omitir peticiones DDE.
Sugerencia
En la tabla siguiente se muestra cmo se comporta la funcin DDE cuando la utiliza con cada uno de los controles.
Comentarios El argumento elemento puede hacer referencia a texto o a nmeros. Si elemento hace referencia a varios datos, como un rango guardado en una hoja de clculo de Excel que contiene varias celdas, la funcin DDE devuelve la primera entrada. Puede utilizar esta funcin con un cuadro de texto para mostrar los datos contenidos en una celda de la hoja de clculo. La funcin DDE rellena el cuadro combinado con informacin a la que se refiere el elemento. No puede insertar datos en la parte de texto del cuadro. Podra utilizar la funcin DDE con un cuadro combinado para mostrar una lista de pases/regiones que se conservan en una hoja de clculo de Excel. de La propiedad ValorDeLaOpcin (OptionValue) de cada botn de opcin en un grupo de opciones se establece en un nmero. Normalmente, el valor del primer botn es 1, del segundo es 2, y as sucesivamente. El nmero devuelto por la funcin DDE determina qu botn de opcin se selecciona. Por ejemplo, si la funcin DDE devuelve 2, se selecciona el segundo botn. Si esta funcin devuelve un valor que no coincida con ningn valor de la propiedad ValorDeLaOpcin (OptionValue), no se seleccionar ningn botn. Si elemento hace referencia a varios datos, como un rango guardado en una hoja de clculo de Excel que contiene varias celdas, la funcin DDE devuelve la primera entrada.
Cuadro combinado
Grupo opciones
Casilla de verificacin
Si la funcin DDE devuelve 0, se desactivar la casilla de verificacin. Si esta funcin devuelve un nmero que no es cero, como 1 o -1, se activar la casilla. Si elemento hace referencia a un texto o a ms de un dato, como un intervalo guardado en una hoja de clculo de Excel que contiene varias celdas, la casilla de verificacin no estar disponible.
DDEIniciar (funcin)
Mostrar todo Puede usar la funcin DDEIniciar para iniciar una comunicacin de intercambio dinmico de datos (DDE) con otra aplicacin. La funcin DDEIniciar abre un canal DDE para transferir datos entre un servidor DDE y una aplicacin cliente.
Por ejemplo, si desea transferir datos de una hoja de clculo de Microsoft Office Excel 2007 a una base de datos de Microsoft Office Access 2007, puede usar la funcin DDEIniciar para abrir un canal entre las dos aplicaciones. En este ejemplo, Microsoft Access acta como la aplicacin cliente y Microsoft Excel acta como la aplicacin servidor.
Sintaxis
DDEIniciar(aplicacin, tema)
Argumento
Descripcin Expresin de cadena que identifica a una aplicacin que puede tomar parte en una comunicacin DDE. Por lo general, el argumento aplicacin es el nombre de un archivo .EXE (sin la extensin .EXE) de una aplicacin basada en Microsoft Windows, por ejemplo, Microsoft Excel. Expresin de cadena que contiene el nombre de un tema reconocido por el argumento aplicacin. Consulte la documentacin de la aplicacin para obtener una lista de temas.
aplicacin
tema
Comentarios
Si la funcin DDEIniciar inicia correctamente una comunicacin DDE con la aplicacin y tema especificados por los argumentos aplicacin y tema, devuelve un tipo de dato entero Long. Este valor entero representa un nmero de canal exclusivo que identifica un canal por el cual puede realizarse la transferencia de datos. Este nmero de canal se puede usar despus con otras funciones e instrucciones DDE.
Si la aplicacin no se ha ejecutado, o si se ha ejecutado pero no reconoce el argumento tema o no admite DDE, la funcin DDEIniciar devuelve un error en tiempo de ejecucin.
El valor del argumento tema depende de la aplicacin especificada por el argumento aplicacin. Cuando se trata de aplicaciones que usan archivos de documentos o de datos, los nombres de temas vlidos a menudo incluyen el nombre de esos archivos.
NOTA
El nmero mximo de canales que pueden estar abiertos simultneamente lo determina Microsoft
Windows, y la memoria y los recursos del sistema. Si no est usando algn canal, debera conservar los recursos finalizndolo mediante una instruccin DDETerminate o DDETerminateAll.
Sugerencia
DDEPedido (funcin)
DDERequest (funcin)
Mostrar todo Puede usar la funcin DDEPedido (DDERequest) a travs de un canal de intercambio dinmico de datos (DDE) para solicitar un elemento de informacin de una aplicacin servidor de DDE.
Por ejemplo, si tiene un canal DDE abierto entre Microsoft Office Access 2007 y Microsoft Office Excel 2007, puede utilizar la funcin DDEPedido para transferir texto de una hoja de clculo de Microsoft Excel a una base de datos de Microsoft Access.
Sintaxis
DDERequest(nmCanal, elemento)
nmCanal elemento
Comentarios
El argumento nmCanal especifica el nmero de canal de la comunicacin DDE deseada y el argumento elemento identifica qu datos deben recuperarse de la aplicacin servidor. El valor del argumento elemento depende de la aplicacin y tema especificados cuando se abre el argumento nnCanal. Por ejemplo, el argumento elemento puede ser un rango de celdas de una hoja de clculo de Microsoft Excel.
La funcin DDEPedido devuelve un tipo de dato Variant como cadena que contiene la informacin solicitada si la solicitud se ha realizado correctamente.
Los datos se solicitan en el formato de texto alfanumrico. Las imgenes o el texto en cualquier otro formato no se pueden transferir.
Si el argumento nmCanal no es un tipo de dato entero correspondiente a un canal abierto, o si los datos solicitados no pueden transferirse, se produce un error en tiempo de ejecucin.
DDEEnviar (funcin)
Mostrar todo Puede usar la funcin DDEEnviar para iniciar una comunicacin de intercambio dinmico de datos (DDE) con otra aplicacin y enviar un elemento de informacin a esa aplicacin desde un control de un formulario o informe.
Por ejemplo, puede emplear la funcin DDEEnviar en la propiedad OrigenDelControl (ControlSource) de un cuadro de texto para enviar los datos que contiene a una celda concreta de una hoja de clculo de Microsoft Excel Microsoft Office Excel 2007.
Sintaxis
aplicacin
tema
elemento
datos
Comentarios
La funcin DDEEnviar inicia una comunicacin DDE con la aplicacin y el tema e identifica elemento como el elemento que va a recibir los datos. Por ejemplo, si aplicacin es Excel, tema podra ser "Sheet1" y elemento un identificador de fila y columna, como "R1C1" o el nombre de un rango de celdas.
El argumento datos especifica la informacin que se desea enviar. Puede ser una cadena literal, como por ejemplo "Report prepared by John", o una expresin que incluya el resultado de una funcin que crea una
cadena, como "Prepared on " & Date(). Si elemento se refiere a ms de un elemento de informacin, como por ejemplo un intervalo con nombre de una hoja de clculo de Microsoft Excel que contenga varias celdas, la funcin DDEEnviar enva datos a la primera entrada.
En el ejemplo siguiente, la funcin DDEEnviar enva la cadena "Some text" a la celda en la Fila 1, Columna 1 de una hoja de clculo de Excel. Puede insertar esta expresin para un control de cuadro de texto en el cuadro de la propiedad OrigenDelControl (ControlSource) en la hoja de propiedades del control: =DDESend("Excel", "Sheet1", "R1C1", "Some text")
Suponga que desea enviar datos de un control dependiente en un formulario de Microsoft Office Access 2007 a una celda de una hoja de clculo de Excel. La propiedad OrigenDelControl (ControlSource) del control dependiente ya contiene un nombre de un campo o una expresin. Puede crear otro cuadro de texto o cuadro combinado y establecer en su propiedad OrigenDelControl una expresin que incluya la funcin DDEEnviar, donde datos es el nombre del control dependiente. Por ejemplo, si tiene un cuadro de texto dependiente denominado Apellidos, puede crear otro cuadro de texto y establecer lo siguiente en la propiedad OrigenDelControl: =DDESend("Excel", "Sheet1", "R1C1", [LastName])
Este control intermedio debe ser un cuadro de texto o un cuadro combinado. No puede emplearse el nombre de un control dependiente como argumento datos de una casilla de verificacin ni de un grupo de opciones.
Puede utilizar la funcin DDEEnviar solamente en el valor de la propiedad OrigenDelControl de un cuadro de texto, grupo de opciones, casilla de verificacin o cuadro combinado en un formulario. No puede llamar a la funcin DDEEnviar desde un mdulo de Visual Basic para Aplicaciones (VBA).
Cuando utiliza la funcin DDEEnviar el control es de slo lectura en la vista Formulario y Vista preliminar. Dado que la propiedad OrigenDelControl es de slo lectura en las vistas Formulario y Vista preliminar, los cambios del control deben hacerse en la vista Diseo.
Microsoft Windows y la memoria y recursos de su sistema determinan el nmero mximo de comunicaciones DDE que puede haber abiertas simultneamente. Si la comunicacin no puede iniciarse porque aplicacin no
est en ejecucin o no reconoce el tema o por haberse alcanzado el nmero mximo de comunicaciones, la funcin DDEEnviar devuelve un valor Null.
NOTA
La otra aplicacin puede estar configurada de forma que pase por alto la solicitud de comunicacin
DDE. Si es as, la funcin DDEEnviar devuelve un valor Null. De igual modo, puede configurar Access para que omita solicitudes de otras aplicaciones: haga clic en Opciones de Access en el men Archivo y, a continuacin, haga clic en Avanzadas en el cuadro de dilogo Configuracin de la aplicacin. En Operaciones DDE, seleccione Omitir peticiones DDE.
Sugerencia
utilizar automatizacin.
En la tabla siguiente se muestra cmo se comporta la funcin DDEEnviar cuando la utiliza con cada uno de los controles.
Comentarios Como el cuadro de texto o combinado aparece en blanco en la vista Formulario y en la Vista preliminar, puede que desee establecer su propiedad Visible en False. El argumento datos puede referirse a otro control. En el ejemplo siguiente se muestra cmo se puede enviar el contenido de un control denominado LastName (Apellido) a una hoja de clculo de Microsoft Excel:
Grupo de opciones
Ninguno de los botones de opcin del grupo est seleccionado en la vista Formulario y en la Vista preliminar. Puede ser conveniente hacer invisible el grupo de opciones (y sus botones) estableciendo la propiedad Visible en False. El argumento datos debe contener datos numricos, como por ejemplo "2". Si datos no es numrico, la funcin DDEEnviar no enva la informacin y elemento no se modifica.
Casilla verificacin
de
La casilla de verificacin aparece atenuada en la vista Formulario y en la Vista preliminar. Puede ser conveniente hacerla invisible estableciendo la propiedad Visible en False. El argumento datos debe contener datos numricos, como por ejemplo "2". Si datos no es numrico, la funcin DDEEnviar no enva la informacin y elemento no se modifica.
Eval (funcin)
Mostrar todo La funcin Eval se utiliza para evaluar una expresin que devuelve una cadena de texto o un valor numrico.
Puede construir una cadena y luego pasarla a la funcin Eval como si la cadena fuera una expresin real. La funcin Eval evala la expresin de cadena y devuelve su valor. Por ejemplo, Eval("1 + 1") devuelve 2.
Si pasa una cadena a la funcin Eval que contiene el nombre de una funcin, la funcin Eval devuelve el valor devuelto de la funcin. Por ejemplo, Eval("Chr$(65)") devuelve "A".
Sintaxis
Eval(expresin de cadena)
El argumento expresin de cadena es una expresin que se evala en una cadena de texto alfanumrica. Por ejemplo, expresin de cadena puede ser una funcin que devuelve una cadena o un valor numrico. O
puede ser una referencia a un control en un formulario. El argumento expresin de cadena debe evaluarse en una cadena o valor numrico; no se puede evaluar en un objeto de Microsoft Access.
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
NOTA
Si est pasando el nombre de una funcin a la funcin Eval, debe incluir parntesis despus del
nombre de la funcin en el argumento expresin de cadena. Por ejemplo: ' ShowNames is user-defined function. Debug.Print Eval("ShowNames()") Debug.Print Eval("StrComp(""Joe"",""joe"", 1)") Debug.Print Eval("Date()")
Comentarios
Puede utilizar la funcin Eval en un control calculado en un formulario o informe, o en una macro o mdulo. La funcin Eval devuelve un tipo de dato Variant que puede ser una cadena o un tipo numrico.
El argumento expresin de cadena debe ser una expresin que se almacena en una cadena. Si pasa a la funcin Eval una cadena que no contiene una expresin numrica o un nombre de funcin sino slo una cadena de texto simple, se produce un error en tiempo de ejecucin. Por ejemplo, Eval("Smith") da como resultado un error.
Puede utilizar la funcin Eval para determinar el valor almacenado en la propiedad Valor (Value) de un control. En el ejemplo siguiente, se pasa a la funcin Eval una cadena que contiene una referencia completa a un control. Despus, se muestra el valor actual del control en un cuadro de dilogo.
Dim ctl As Control Dim strCtl As String Set ctl = Forms!Employees!LastName strCtl = "Forms!Employees!LastName" MsgBox ("The current value of " & ctl.Name & _ " is " & Eval(strCtl)) Puede utilizar la funcin Eval para obtener acceso a los operadores de expresin que no estn habitualmente disponibles en un mdulo de Visual Basic para Aplicaciones (VBA). Por ejemplo, no puede utilizar los operadores de SQL Between...And o In directamente en el cdigo, aunque puede utilizarlos en una expresin pasada a la funcin Eval.
En el siguiente ejemplo, se determina si el valor de un control ShipRegion (Regin de destino) en un formulario Orders (Pedidos) es una de las abreviaturas especificadas para el estado. Si el campo contiene una de las abreviaturas, el valor de intState ser True (1). Observe el uso de comillas tipogrficas (') para incluir una cadena dentro de otra cadena. Dim intState As Integer intState = Eval("Forms!Orders!ShipRegion In " _ & "('AK', 'CA', 'ID', 'WA', 'MT', 'NM', 'OR')")
Ejemplo
En el siguiente ejemplo se supone que tiene una serie de 50 funciones definidas como A1, A2, y as sucesivamente. En este ejemplo se utiliza la funcin Eval para llamar a cada funcin de la serie. Sub CallSeries() Dim intI As Integer For intI = 1 To 50 Eval("A" & intI & "()") Next intI End Sub
En el siguiente ejemplo se desencadena un evento Click como si el usuario hubiera hecho clic en un botn de un formulario. Si el valor de la propiedad AlHacerClic (OnClick) del botn comienza con un signo igual (=), es decir, es el nombre de una funcin, la funcin Eval llama a la funcin, lo que equivale a activar el evento Click. Si el valor no comienza con un signo igual, el valor debe indicar el nombre de una macro. El mtodo RunMacro del objeto DoCmd ejecuta en este caso la macro indicada. Dim ctl As Control Dim varTemp As Variant Set ctl = Forms!Contacts!HelpButton If (Left(ctl.OnClick, 1) = "=") Then varTemp = Eval(Mid(ctl.OnClick,2)) Else DoCmd.RunMacro ctl.OnClick End If
Particin (funcin)
Mostrar todo
Devuelve un valor de tipo Variant (String) que indica dnde aparece un nmero en una serie calculada de intervalos.
Sintaxis
nmero iniciar
detener
intervalo
Comentarios
La funcin Particin identifica el intervalo especfico en el que se encuentra nmero y devuelve un valor de tipo Variant (String) que describe dicho intervalo. La funcin Particin es muy til en las consultas. Puede crear una consulta de seleccin que muestre cuntos pedidos se incluyen en intervalos diversos, por ejemplo valores de pedido de 1 a 1000, de 1001 a 2000, etc.
En la tabla siguiente se muestra cmo se determinan los intervalos mediante tres conjuntos de argumentos iniciar, detener e intervalo. Las columnas Primer intervalo y ltimo intervalo muestran lo que Particin devuelve. Los intervalos se representan mediante valorinferior:valorsuperior, donde el final inferior (valorinferior) del intervalo est separado del final superior (valorsuperior) del mismo con dos puntos (:).
Antes primero " :-1" " :19" " :99" del Primer intervalo "0:4" "20:29" "100:119" ltimo intervalo "95:99" "190:199" "1000:1010" Despus ltimo "100: " "200: " "1011: " del
iniciar
0 20 100
detener
99 199 1010
intervalo
5 10 20
En la tabla anterior, la tercera lnea muestra el resultado cuando iniciar y detener definen un conjunto de nmeros que no se pueden dividir exactamente entre intervalo. El ltimo intervalo llega hasta detener (11 nmeros) aunque intervalo sea 20.
Si es necesario, Particin devuelve un intervalo con suficientes espacios iniciales para que haya el mismo nmero de caracteres a la izquierda y a la derecha de los dos puntos que en detener, ms uno. De este modo se garantiza que, si se usa Particin con otros nmeros, el texto resultante se manipular correctamente durante cualquier operacin de ordenacin posterior.
Si intervalo es 1, el intervalo es nmero:nmero, independientemente de los argumentos iniciar y detener. Por ejemplo, si intervalo es 1, nmero es 100 y detener es 1000, Particin devuelve "100:100".
Si cualquiera de las partes tiene el valor Nulo, Particin devuelve un valor Nulo.
Ejemplo
En este ejemplo, se supone que tiene una tabla Orders (Pedidos) que contiene un campo denominado Freight (Transporte). Se crea un procedimiento de seleccin que cuente el nmero de pedidos cuyos gastos de envo recaen en cada uno de los diversos intervalos. Se utiliza primero la funcin Particin para establecer estos intervalos. A continuacin, se utiliza la funcin SQL Count para contar el nmero de pedidos en cada intervalo. En este ejemplo, los argumentos de la funcin Particin son: iniciar = 0, detener = 500 e intervalo = 50. Por lo tanto, el primer intervalo ser 0:49 y as sucesivamente hasta 500. SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range, Count(Orders.Freight) AS Count FROM Orders GROUP BY Partition([freight],0,500,50);
Fecha/Hora
Fecha (funcin)
Date (funcin)
Devuelve un tipo de dato Variant (Date) que contiene la fecha actual de sistema.
Sintaxis
Date
Comentarios
Si usa la funcin Fecha con un calendario gregoriano, el comportamiento de Fecha$ no cambia con la configuracin de la propiedad Calendar. Si el calendario es Hijri, Fecha$ devuelve una cadena de 10 caracteres con el formato mm-dd-yyyy, donde mm (01-12), dd (01-30) e yyyy (1400-1523) son el mes, da y ao Hijri. El intervalo gregoriano equivalente es del 1 de enero de 1980 al 31 de diciembre de 2099.
Ejemplos
Usar Fecha en una expresin Puede usar la funcin Fecha siempre que utilice expresiones. Por ejemplo, puede establecer la propiedad Origen del control (Control Source) como un cuadro de texto en un formulario del modo siguiente:
=Fecha()
Cuando se abre el formulario en la vista Formulario, el cuadro de texto muestra la fecha actual del sistema.
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Fecha para devolver la fecha actual del sistema.
Dim MyDate MyDate = Date ' MyDate contains the current system date.
AgregFecha (funcin)
Funcin DateAdd
Mostrar todo
Devuelve un tipo de dato Variant (Date) que contiene una fecha a la que se ha agregado un intervalo de tiempo especificado. Sintaxis DateAdd(intervalo, nmero, fecha) La sintaxis de la funcin DateAdd tiene los siguientes argumentos:
Argumento Descripcin Requerido. Expresin de cadena que es el intervalo de tiempo que desea agregar. Requerido. Expresin numrica que es el nmero de intervalos que desea agregar. Puede ser positiva (para obtener fechas del futuro) o negativa (para obtener fechas del pasado). Requerido. Variant (Date) o literal que representa la fecha a la que se agrega el intervalo.
intervalo nmero
fecha
Comentarios
Puede utilizar la funcin DateAdd para agregar o restar un intervalo de tiempo especificado de una fecha. Por ejemplo, puede utilizar DateAdd para calcular una fecha 30 das a partir de hoy o una hora 45 minutos a partir de ahora.
Para agregar das a fecha, puede utilizar Da del ao ("y"), da ("d") o Da de la semana ("w").
La funcin DateAdd no devolver una fecha no vlida. En el ejemplo siguiente se agrega un mes al 31 de enero: DateAdd("m", 1, "31-Jan-95")
En este caso DateAdd devuelve 28-Feb-95, no 31-Feb-95. Si fecha es 31-Ene-96, devuelve 29-Feb-96 porque 1996 es un ao bisiesto.
Se produce un error si la fecha calculada precede al ao 100 (es decir, si se restan ms aos que los que hay en fecha).
Si el nmero no es un valor Long, se redondea hasta el nmero entero ms prximo antes de evaluarse.
NOTA
El formato del valor devuelto de DateAdd se determina por la configuracin del Panel de control, no
NOTA
Para fecha, si el valor de la propiedad Calendar es gregoriano, la fecha proporcionada debe ser
gregoriana. Si el calendario es Hijri, la fecha proporcionada debe ser Hijri. Si los valores de mes son nombres, el nombre debe ser coherente con el valor actual de la propiedad Calendar actual. Para reducir al mnimo la posibilidad de conflicto entre los nombres de mes y el valor actual de la propiedad Calendar actual, escriba valores de mes numricos (formato de fecha corto).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se toma una fecha como entrada y se utiliza la funcin DateAdd para mostrar una fecha correspondiente a un nmero determinado de meses en el futuro. Dim FirstDate As Date ' Declare variables.
IntervalType = "m"
FirstDate = InputBox("Enter a date") Number = InputBox("Enter number of months to add") Msg = "New date: " & _ DateAdd(IntervalType, Number, FirstDate) MsgBox Msg
DifFecha (funcin)
DateDiff (funcin)
Mostrar todo Devuelve un tipo de dato Variant (Long) que especifica el nmero de intervalos de tiempo entre dos fechas especificadas.
Argumento
Descripcin Requerido. Expresin de cadena que es el intervalo de tiempo que se utiliza para calcular la diferencia entre fecha1 y fecha2. Requerido. Variant (Date). Las dos fechas que se desean utilizar en el clculo. Opcional. Constante que especifica el primer da de la semana. Si no se especifica, se supone que es el domingo. Opcional. Constante que especifica la primera semana del ao. Si no se especifica, se supone que es la semana en la que trascurre el 1 de enero.
intervalo
primerasemanaao
Valores
Valor 0 1 2 3
Descripcin Se utiliza la configuracin NLS API. Se comienza con la semana en la que transcurre el 1 enero (predeterminado). Se comienza con la primera semana que tenga como mnimo cuatro das en el ao nuevo. Se comienza con la primera semana completa del ao.
Comentarios
Puede utilizar la funcin DateDiff para determinar cuntos intervalos de tiempo especificados existen entre dos fechas. Por ejemplo, podra utilizar DateDiff para calcular el nmero de das entre dos fechas o el nmero de semanas entre hoy y finales de ao.
Para calcular el nmero de das entre fecha1 y fecha2, puede utilizar Da del ao ("y") o Da ("d"). Cuando intervalo es Da de la semana ("w"), DateDiff devuelve el nmero de semanas entre ambas fechas. Si fecha1 es lunes, DateDiff cuenta el nmero de lunes hasta fecha2. Cuenta fecha2 pero no fecha1. Si intervalo es Semana ("ww"), la funcin DateDiff devuelve el nmero de semanas del calendario entre las dos fechas. Cuenta el nmero de domingos entre fecha1 y fecha2.DateDiff cuenta fecha2 si es domingo; pero no cuenta fecha1, aunque sea domingo.
Si fecha1 hace referencia a un punto posterior en el tiempo a fecha2, la funcin DateDiff devuelve un nmero negativo.
El argumento primerdasemana afecta a los clculos que utilizan los smbolos de intervalo "w" y "ww".
Si fecha1 o fecha2 es un literal de fecha, el ao especificado se convierte en parte permanente de la fecha. Sin embargo, si fecha1 o fecha2 va entre comillas dobles (" ") y se omite el ao, el ao actual se inserta en el cdigo cada vez que la expresin fecha1 o fecha2 se evala. As es posible escribir cdigo que se pueda usar en aos diferentes.
Al comparar 31 de diciembre con 1 de enero del ao siguiente, DateDiff para Ao ("yyyy") devuelve 1 aunque slo haya transcurrido un da.
NOTA
deber ser gregoriana. Si el calendario es Hijri, la fecha proporcionada debe ser Hijri.
Ejemplos
Usar la funcin DateDiff en una expresin Puede usar la funcin DateDiff siempre que utilice expresiones. Por ejemplo, supongamos que tiene un formulario que usa para completar los pedidos de clientes. En la tabla Pedidos (Orders), tiene un campo denominado RecibirAntesDe (ReceiveBefore) que contiene la fecha en la que el cliente necesita recibir el pedido. Puede usar la funcin DateDiff con un cuadro de texto para mostrar el nmero de das que quedan antes de que deba salir el pedido.
Suponiendo que se tarda diez das en enviar un pedido, establezca la propiedad Origen del control (Control Source) del cuadro de texto del modo siguiente: =DateDiff(d, Now(), [Orders].[ReceiveBefore])-10
Cuando abre el formulario en la vista Formulario, el cuadro de texto muestra el nmero de das que quedan antes de tener que enviar el pedido. Si quedan menos de 10 das antes de que el cliente necesite recibir el pedido, el nmero del cuadro de texto es negativo e indica con cuntos das de retraso llegar el pedido si se enva de inmediato.
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin DateDiff para mostrar el nmero de das entre una fecha determinada y el da de hoy. Dim TheDate As Date Dim Msg TheDate = InputBox("Enter a date") Msg = "Days from today: " & DateDiff("d", Now, TheDate) MsgBox Msg ' Declare variables.
ParcFecha (funcin)
ParcFecha (funcin, DatePart)
Mostrar todo Devuelve un tipo de dato Variant (Integer) que contiene la parte especificada de una fecha dada.
Sintaxis
primerasemanaao
Valores
Comentarios
Puede utilizar la funcin ParcFecha para evaluar una fecha y devolver un intervalo especfico de tiempo. Por ejemplo, podra usar ParcFecha para calcular el da de la semana o la hora actual.
El argumento primerdasemana afecta a los clculos que utilizan los smbolos de intervalo "w" y "ww".
Si fecha es un literal de fecha, el ao especificado se convierte en parte permanente de dicha fecha. Sin embargo, si fecha va entre comillas dobles (" ") y se omite el ao, el ao actual se inserta en el cdigo cada vez que la expresin fecha se evala. As es posible escribir cdigo que se pueda usar en aos diferentes.
NOTA
Para fecha, si el valor de la propiedad Calendar es gregoriano, la fecha proporcionada deber ser
La parte de fecha devuelta est en las unidades del perodo de tiempo del calendario arbigo actual. Por ejemplo, si el calendario actual es Hijri y la parte de fecha que hay que devolver es el ao, el valor del ao es un ao Hijri.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se toma una fecha y se muestra el trimestre del ao en el que transcurre con la funcin ParcFecha.
TheDate = InputBox("Enter a date:") Msg = "Quarter: " & DatePart("q", TheDate) MsgBox Msg
SerieFecha (funcin)
DateSerial (funcin)
Mostrar todo Devuelve un tipo de dato Variant (Date) para un ao, mes y da especificados.
Sintaxis
ao mes da
Comentarios
Para especificar una fecha, como 31 de diciembre de 1991, el intervalo de nmeros para cada argumento de SerieFecha debera estar en el intervalo aceptado para la unidad, es decir, de 1 a 31 para los das y de 1 a 12 para los meses. Sin embargo, tambin puede especificar fechas relativas para cada argumento que utilice una expresin numrica que represente cierto nmero de das, meses o aos antes o despus de determinada fecha.
En el ejemplo siguiente se utilizan expresiones numrica en lugar de nmeros de fecha absolutos. En este caso, la funcin SerieFecha devuelve una fecha que es el da antes del primer da ( 1 - 1), dos meses antes de agosto (8 - 2), 10 aos antes de 1990 (1990 - 10); en otras palabras, el 31 de mayo de 1980. DateSerial(1990 - 10, 8 - 2, 1 - 1)
Los aos de dos dgitos del argumento ao se interpretan segn la configuracin del equipo definida por el usuario. La configuracin predeterminada es que los valores entre 0 y 29, ambos inclusive, se interpretan como los aos 2000 a 2029. Los valores predeterminados entre 30 y 99 se interpretan como los aos 1930 a 1999. Para todos los otros argumentos ao, utilice un ao de cuatro dgitos (por ejemplo, 1800).
En las versiones de Windows anteriores a Windows 2000, los aos de dos dgitos se interpretan segn los valores predeterminados descritos ms arriba. Para asegurarse de que la funcin devuelve el valor adecuado, utilice un ao de cuatro dgitos.
Si un argumento sobrepasa el intervalo aceptado para dicho argumento, aumenta hasta la siguiente unidad mayor segn corresponda. Por ejemplo si especifica 35 das, se evala como un mes y cierto nmero de das, dependiendo de en qu parte del ao se aplique. Si cualquier argumento individual est fuera del intervalo 32.768 a 32.767, se produce un error. Si la fecha especificada por los tres argumentos est fuera del intervalo aceptable de fechas, se produce un error.
NOTA
Para ao, mes, y da, si el valor de la propiedad Calendar es gregoriano, se supone que el valor
proporcionado es gregoriano. Si el valor de la propiedad Calendar es Hijri, se supone que el valor proporcionado es Hijri.
La parte de fecha devuelta est en las unidades del perodo de tiempo del calendario actual de Visual Basic. Por ejemplo, si el calendario actual es Hijri y la parte de fecha que hay que devolver es el ao, el valor del ao es un ao Hijri. Para el argumento ao, los valores entre 0 y 99, ambos inclusive, se interpretan como los aos 1400 a 1499. Para todos los otros valores de ao, utilice el ao completo de cuatro dgitos (por ejemplo, 1520).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin SerieFecha para devolver la fecha para el ao, mes y da especificados.
Dim MyDate ' MyDate contains the date for February 12, 1969. MyDate = DateSerial(1969, 2, 12) ' Return a date.
ValorFecha (funcin)
ValorFecha (funcin, DateValue)
Mostrar todo Devuelve un tipo de dato Variant (Date).
Sintaxis
DateValue(fecha)
El argumento fecha requerido es normalmente una expresin de cadena que representa una fecha desde el 1 de enero de 100 hasta el 31 de diciembre de 9999. Sin embargo, fecha tambin puede ser cualquier expresin que pueda representar una fecha, una hora o ambas en dicho intervalo.
Comentarios
Si fecha es una cadena que incluye solamente nmeros separados por separadores de fecha vlidos, ValorFecha (DateValue) reconoce el orden del mes, da y ao conforme al formato de fecha corta especificado en el sistema. ValorFecha tambin reconoce fechas no ambiguas que contienen nombres de mes, tanto en forma larga como abreviada. Por ejemplo, adems de reconocer de 12/30/1991 a 12/30/91, ValorFecha tambin reconoce 30 de diciembre, 1991 y 30 dic de 1991.
Si se omite la parte del ao de fecha, ValorFecha utiliza el ao actual de la fecha del sistema del equipo.
Si el argumento fecha incluye informacin horaria, ValorFecha no la devuelve. Sin embargo, si fecha incluye informacin horaria no vlida (como "89:98"), se produce un error.
NOTA
Para fecha, si el valor de la propiedad Calendar es gregoriano, la fecha proporcionada deber ser
gregoriana. Si el calendario es Hijri, la fecha proporcionada debe ser Hijri. Si la fecha proporcionada es Hijri, el argumento fecha es un valor String que representa una fecha a partir de 1/1/100 (gregoriano, 2 ago, 718) hasta 4/3/9666 (gregoriano, 31 dic, 9999).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin ValorFecha para convertir una cadena a una fecha. Tambin se pueden utilizar literales de fecha para asignar directamente una fecha a un valor Variant o a una variable Date, por ejemplo, MyDate = #2/12/69#. Dim MyDate MyDate = DateValue("February 12, 1969") ' Return a date.
Hora (funcin)
Mostrar todo Devuelve un valor Variant (Entero) que especifica un nmero entero entre 0 y 23, ambos inclusive, que representa la hora del da.
Sintaxis
Hora(hora)
El argumento hora requerido es cualquier expresin numrica o ">expresin de cadena de tipo Variant, o bien, cualquier combinacin de stas que represente una hora. Si hora contiene un valor Nulo, se devuelve Nulo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Hora para obtener la hora de una hora especificada. En el entorno de desarrollo, el valor literal de hora se muestra con el formato de hora corta mediante la configuracin regional del cdigo. Dim MyTime, MyHour MyTime = #4:35:17 PM# MyHour = Hour(MyTime) ' Assign a time. ' MyHour contains 16.
Minuto (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que especifica un nmero entero entre 0 y 59, ambos inclusive, que representa el minuto de la hora.
Sintaxis
Minuto(hora)
El argumento hora requerido es cualquier expresin numrica o ">expresin de cadena de tipo Variant, o bien, cualquier combinacin de stas que represente una hora. Si hora contiene un valor Nulo, se devuelve Nulo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Minuto para obtener el minuto de una hora especificada. En el entorno de desarrollo, el valor literal de hora se muestra con el formato de hora corta mediante la configuracin regional del cdigo. Dim MyTime, MyMinute MyTime = #4:35:17 PM# ' Assign a time. ' MyMinute contains 35.
MyMinute = Minute(MyTime)
Mes (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que especifica un nmero entero entre 1 y 12, ambos inclusive, y representa el mes del ao.
Sintaxis
Mes(fecha)
El argumento fecha requerido es cualquier expresin numrica o expresin de cadena de tipo Variant, o bien, cualquier combinacin de stas que represente una fecha. Si fecha contiene un valor Nulo, se devuelve Nulo.
NOTA
de la semana del argumento fecha. Si el calendario es Hijri, el entero devuelto representa el da Hijri de la semana del argumento fecha. En las fechas Hijri, el argumento nmero es cualquier expresin numrica que pueda representar una hora o fecha desde 1/1/100 (gregoriano 2 de agosto de 718) hasta 4/3/9666 (gregoriano 31 diciembre de 9999).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Mes para obtener el mes de una fecha especificada. En el entorno de desarrollo, el valor literal de fecha se muestra con el formato de fecha corta mediante la configuracin regional del cdigo. Dim MyDate, MyMonth MyDate = #February 12, 1969# MyMonth = Month(MyDate) ' Assign a date.
NombreMes (funcin)
Devuelve una cadena que indica el mes especificado.
Sintaxis
NombreMes(mes, [abreviar ] )
mes abreviar
Ahora (funcin)
Devuelve un valor de tipo Variant (Fecha) que especifica la fecha y la hora actuales conforme a la fecha y la hora del sistema del equipo.
Sintaxis
Ahora
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Ahora para que se devuelvan la fecha y la hora actuales del sistema. Dim Today Today = Now ' Assign current system date and time.
Segundo (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que especifica un nmero entero entre 0 y 59, ambos inclusive, que representa el segundo del minuto.
Sintaxis
Segundo(hora)
El argumento hora requerido es cualquier expresin numrica o ">expresin de cadena de tipo Variant, o bien, cualquier combinacin de stas que represente una hora. Si hora contiene un valor Nulo, se devuelve Nulo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Segundo para obtener el segundo del minuto de una hora especificada. En el entorno de desarrollo, el valor literal de hora se muestra con el formato de hora corta mediante la configuracin regional del cdigo. Dim MyTime, MySecond MyTime = #4:35:17 PM# ' Assign a time. ' MySecond contains 17.
MySecond = Second(MyTime)
HoraActual (funcin)
Devuelve un valor de tipo Variant (Fecha) que indica la hora actual del sistema.
Sintaxis
HoraActual
Comentarios
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin HoraActual para que se devuelva la hora actual del sistema. Dim MyTime MyTime = Time ' Return current system time.
Cronmetro (funcin)
Devuelve un valor de tipo Single que representa el nmero de segundos transcurridos desde la medianoche.
Sintaxis
Cronmetro
Comentarios En Microsoft Windows, la funcin Cronmetro devuelve partes fraccionarias de un segundo. En Macintosh, la resolucin del cronmetro es un segundo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En este ejemplo, se utiliza la funcin Cronmetro para pausar la aplicacin. En el ejemplo tambin se utiliza DoEvents para pasar a otros procesos durante la pausa. Dim PauseTime, Start, Finish, TotalTime If (MsgBox("Press Yes to pause for 5 seconds", _ 4)) = vbYes Then PauseTime = 5 Start = Timer ' Set duration. ' Set start time.
Do While Timer < Start + PauseTime DoEvents Loop Finish = Timer ' Set end time. ' Calculate total time. ' Yield to other processes.
MsgBox "Paused for " & TotalTime & " seconds" Else End End If
SerieHora (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Fecha) que contiene la hora de una hora, un minuto y un segundo especficos.
Sintaxis
hora
minuto segundo
Comentarios
Para especificar una hora, como 11:59:59, el intervalo de nmeros de cada argumento de SerieHora debe ser el intervalo normal de la unidad, es decir, de 0 a 23 para las horas y de 0 a 59 para los minutos y segundos. Sin embargo, se pueden especificar horas relativas para cada argumento mediante cualquier expresin numrica que represente un nmero de horas, minutos o segundos antes o despus de una hora determinada. En el siguiente ejemplo, se utilizan expresiones en lugar de nmeros de hora absolutos. La funcin SerieHora devuelve una hora para los 15 minutos antes ( -15) de las seis horas antes del medioda (12 - 6), o bien, 5:45:00 a.m. TimeSerial(12 - 6, -15, 0) Si algn argumento supera el intervalo normal para dicho argumento, se incrementa hasta la siguiente unidad mayor, segn corresponda. Por ejemplo, si se especifican 75 minutos, se evala como una hora y 15 minutos. Si algn argumento individual est fuera del intervalo -32.768-32.767, se produce un error. Si la hora especificada por los tres argumentos hace que la fecha est fuera del intervalo aceptable de fechas, se produce un error.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin SerieHora para que se devuelva una hora para la hora, los minutos y los segundos especificados. Dim MyTime MyTime = TimeSerial(16, 35, 17) ' MyTime contains serial representation of 4:35:17 PM.
ValorHora (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Fecha) que contiene la hora.
Sintaxis
ValorHora(hora)
El argumento hora requerido suele ser una ">expresin de cadena que representa una hora de 0:00:00 (12:00:00 a.m.) a 23:59:59 (11:59:59 p.m.), ambas inclusive. Sin embargo, hora tambin puede ser cualquier expresin que represente una hora de dicho intervalo. Si hora contiene un valor Nulo, se devuelve Nulo.
Comentarios
Puede especificar horas vlidas mediante un reloj de 12 o de 24 horas. Por ejemplo, "2:24PM" y "14:24" son ambos argumentos hora vlidos.
Si el argumento hora contiene informacin de fecha, ValorHora no la devuelve. Sin embargo, si hora incluye informacin de fecha no vlida, se genera un error.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin ValorHora para convertir una cadena en una hora. Tambin se pueden utilizar literales de fecha para asignar directamente una hora a una variable de tipo Variant o Date; por ejemplo, MyTime = #4:35:17 PM#. Dim MyTime MyTime = TimeValue("4:35:17 PM") ' Return a time.
DaSemana (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que contiene un nmero entero que representa el da de la semana.
Sintaxis
DaSemana(fecha, [primer_da_semana ] )
fecha
primer_da_semana
Valores
Valores devueltos
Comentarios
Si el valor de la propiedad Calendario es gregoriano, el entero devuelto representa el da gregoriano de la semana del argumento fecha. Si el calendario es Hijri, el entero devuelto representa el da Hijri de la semana del argumento fecha. En las fechas Hijri, el argumento nmero es cualquier expresin numrica que pueda representar una hora o fecha desde 1/1/100 (gregoriano 2 de agosto de 718) hasta 4/3/9666 (gregoriano 31 diciembre de 9999).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin DaSemana para obtener el da de la semana de una fecha especificada. Dim MyDate, MyWeekDay MyDate = #February 12, 1969# MyWeekDay = Weekday(MyDate) ' MyWeekDay contains 4 because ' MyDate represents a Wednesday. ' Assign a date.
NombreDaDeLaSemana (funcin)
Mostrar todo Devuelve un valor de tipo String que indica el da especificado de la semana.
Sintaxis
daSemana
abreviar
primerDaSemana
Valores
Ao (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que contiene un nmero entero que representa el ao.
Sintaxis
Ao(fecha)
El argumento fecha requerido es cualquier expresin numrica o ">expresin de cadena de tipo Variant, o bien, cualquier combinacin de stas que represente una fecha. Si fecha contiene un valor Nulo, se devuelve Nulo.
NOTA
del argumento fecha. Si el calendario es Hijri, el entero devuelto representa el ao Hijri del argumento fecha. En las fechas Hijri, el argumento nmero es cualquier expresin numrica que pueda representar una hora o fecha desde 1/1/100 (gregoriano 2 de agosto de 718) hasta 4/3/9666 (gregoriano 31 diciembre de 9999).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Ao para obtener el ao de una fecha especificada. En el entorno de desarrollo, el valor literal de fecha se muestra con el formato de fecha corta mediante la configuracin regional del cdigo. Dim MyDate, MyYear MyDate = #February 12, 1969# MyYear = Year(MyDate) ' Assign a date.
Agregado de dominio
DProm (funcin)
DProm (funcin, DAvg)
Mostrar todo Puede usar la funcin DProm (DAvg) para calcular el promedio de un conjunto de valores de un conjunto especificado de registros (un dominio). La funcin DProm se utiliza en un mdulo de Visual Basic para Aplicaciones (VBA), en una macro, en una expresin de consulta o en un control calculado.
Por ejemplo, puede usar la funcin DProm en la fila de criterios de una consulta de seleccin sobre gastos de envo para limitar los resultados a aquellos registros en los que el costo de los gastos de envo excede el promedio. Tambin podra utilizar una expresin que incluyera la funcin DProm en un control calculado y mostrar el valor promedio de los pedidos anteriores junto al valor de un pedido nuevo.
Sintaxis
expr
dominio
criterios
Comentarios
Los registros que contienen valores Null no se incluyen en el clculo del promedio.
Si utiliza la funcin DProm en una macro o mdulo, en una expresin de consulta o en un control calculado debe construir el argumento criterios para asegurarse de que se evaluar correctamente.
Puede utilizar la funcin DProm para especificar criterios en la fila Criterios de una consulta. Por ejemplo, suponga que desea ver una lista de todos los productos solicitados en cantidades superiores a la cantidad de pedido promedio. Puede crear una consulta en las tablas Pedidos, Detalles del pedido y Productos, e incluir el campo Nombre de producto y el campo Cantidad, con la expresin siguiente en la fila Criterios debajo del campo Cantidad: >DProm("[Cantidad]", "Pedidos") Tambin puede utilizar la funcin DProm con una expresin de campo calculado en una consulta o en la fila Actualizar a de una consulta de actualizacin.
NOTA
Tambin puede utilizar la funcin DProm o Promedio (Avg) en una expresin de campo calculado en
una consulta de totales. Si utiliza la funcin DProm, los valores se promedian antes de que se agrupen los datos. Si se utiliza la funcin Promedio, los datos se agrupan antes de que se promedien los valores de la expresin de campo.
Utilice la funcin DProm en un control calculado cuando sea necesario especificar criterios para restringir el intervalo de datos en el que se ejecuta la funcin DProm. Por ejemplo, para mostrar el gasto mximo en transporte para un pedido enviado a California, establezca la propiedad OrigenDelControl (ControlSource) de un cuadro de texto del siguiente modo: =DProm("[Gastos de envo]", "Pedidos", "[ReginEnvo] = 'CA'") Si desea nicamente promediar todos los registros de dominio, utilice la funcin Promedio.
Puede utilizar la funcin DProm en un mdulo o macro o en un control calculado de un formulario si el campo que hay que mostrar no se encuentra en el origen del registro en el que se basa el formulario. Por ejemplo, supongamos que tiene un formulario basado en la tabla Pedidos y desea incluir el campo Cantidad, de la tabla Detalles de pedido, para mostrar el promedio de elementos pedidos por un cliente determinado. Puede utilizar la funcin DProm para realizar este clculo y mostrar los datos en el formulario.
Sugerencias
Si utiliza la funcin DProm en un campo calculado, puede desear colocar el control en el encabezado o pie de pgina del formulario para que el valor para este control no se recalcule cada vez que se desplaza a un nuevo registro.
Si el tipo de datos del campo del cual se deriva expr es un nmero, la funcin DProm devuelve un tipo de dato Double. Si utiliza DProm en un control calculado, incluya una funcin de conversin de tipos de datos en la expresin para mejorar el rendimiento.
Aunque puede utilizar la funcin DProm para determinar el promedio de los valores de un campo en una tabla externa, puede que resulte ms eficaz crear una consulta que contenga los campos que necesita de ambas tablas y basar el formulario o informe en dicha consulta.
NOTA
Los cambios no guardados efectuados en registros de dominio no se incluirn cuando utilice estas
funciones. Si desea que la funcin DProm se base en los valores cambiados, primero debe guardar los cambios al hacer clic en Guardar registro en el men Registros en la ficha Datos, mover la seleccin a otro registro o utilizar el mtodo Update.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
La siguiente funcin devuelve el promedio de los gastos de envo de pedidos enviados en o despus de una fecha dada. El dominio es una tabla Orders (Pedidos). El argumento criterios restringe el conjunto de registros resultante basndose en un pas o regin y la fecha de envo especificados. Tenga en cuenta que se incluye la palabra clave AND en la cadena para separar los distintos campos en el argumento criterios. Todos los registros incluidos en el clculo de la funcin DProm tendrn ambos criterios.
Public Function AvgFreightCost _ (ByVal strCountryRegion As String, _ ByVal dteShipDate As Date) As Double
AvgFreightCost = DAvg("[Freight]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & _ "'AND [ShippedDate] >= #" & dteShipDate & "#")
End Function
Para llamar a la funcin, utilice la lnea siguiente de cdigo en la ventana Inmediato: :AvgFreightCost "UK", #1/1/96#
DCuenta (funcin)
DCont (funcin)
Mostrar todo Puede usar la funcin DCont para determinar el nmero de registros de un conjunto especificado de registros (un dominio). La funcin DCont se utiliza en un mdulo de Visual Basic para Aplicaciones (VBA), en una macro, en una expresin de consulta o en un control calculado.
Por ejemplo, podra usar la funcin DCont en un mdulo para devolver el nmero de registros de una tabla Pedidos que se corresponde a los pedidos realizados en una fecha determinada.
Sintaxis
Argumento
Descripcin Requerido. Expresin que identifica el campo para el que se desean contar los registros. Puede ser una expresin de cadena que identifique un campo de una tabla o de una consulta, o puede ser una expresin que realice un clculo sobre los datos de ese campo. En expr, puede incluir el nombre de un campo de una tabla, un control de un formulario, una constante o una funcin. Si expr incluye una funcin, sta puede estar integrada o puede ser definida por el usuario, pero no puede ser otra funcin de agregado de dominio ni una funcin de agregado de SQL. Requerido. Expresin de cadena que identifica el conjunto de registros que constituye el dominio. Puede ser un nombre de tabla o un nombre de consulta de una consulta que no requiera un parmetro. Opcional. Expresin de cadena utilizada para restringir el intervalo de los datos en los que se ejecuta la funcin DCont. Por ejemplo, criterios con frecuencia es equivalente a la clusula WHERE en una expresin SQL, sin la palabra WHERE. Si se omite criterios, la funcin DCont evala expr para todo el dominio. Cualquier campo que est incluido en criterios tambin debe ser un campo de dominio; en caso contrario, la funcin DCont devuelve un valor Null.
expr
dominio
criterios
Comentarios
La funcin DCont se utiliza para contar el nmero de registros de un dominio cuando no se precisa conocer sus valores particulares. Aunque el argumento expr puede realizar un clculo en un campo, la funcin DCont simplemente cuenta el nmero de registros. No est disponible el valor de los clculos realizados por expr.
Utilice la funcin DCont en un control calculado cuando sea necesario especificar criterios para restringir el intervalo de datos en el que se ejecuta la funcin DCont. Por ejemplo, para mostrar el nmero de pedidos que se van a enviar a California, establezca la propiedad OrigenDelControl (ControlSource) de un cuadro de texto en la siguiente expresin: =DCont("[OrderID]", "Orders", "[ShipRegion] = 'CA'")
Si desea nicamente contar todos los registros de dominio sin especificar ninguna restriccin, utilice la funcin Cuenta (Count).
Sugerencia
La funcin DCont se puede utilizar para contar el nmero de registros que contienen un campo concreto que no est en el origen de datos en el que se basa el formulario o informe. Por ejemplo, puede mostrar el nmero de pedidos de la tabla Pedidos en un control calculado en un formulario basado en la tabla Productos.
La funcin DCont no cuenta los registros que contengan valores Null en el campo que expr hace referencia a no ser que expr sea el carcter comodn asterisco (*). Si usa un asterisco, la funcin DCont calcula el nmero total de registros, incluyendo aquellos que contienen campos Null. En el siguiente ejemplo se calcula el nmero de registros de una tabla Orders (Pedidos). intX = DCont("*", "Orders")
Si dominio es una tabla con una clave principal, tambin puede contar el nmero total de registros estableciendo expr en el campo de clave principal, ya que nunca habr un valor Null en el campo de clave principal.
Si expr identifica varios campos, separe los nombres de campos con un operador de concatenacin, bien sea el signo de Y comercial (&) o el operador de suma (+). Si utiliza el smbolo de la Y comercial para separar los campos, la funcin DCont devuelve el nmero de registros que contienen datos en alguno de los campos enumerados. Si utiliza el operador de suma, la funcin DCont devuelve slo el nmero de registros que contienen datos en todos los campos enumerados. En el siguiente ejemplo se muestran los efectos de cada operador cuando se utiliza con un campo que contiene datos en todos los registros (ShipName) y un campo que no contiene datos (ShipRegion). intW = DCont("[ShipName]", "Orders") intX = DCont("[ShipRegion]", "Orders") intY = DCont("[ShipName] + [ShipRegion]", "Orders") intZ = DCont("[ShipName] & [ShipRegion]", "Orders")
NOTA
Debera evitar el uso del operador de suma en operaciones que no sean de adicin numrica, a no ser que desee propagar especficamente valores Null a travs de una expresin.
Los cambios no guardados efectuados en registros de dominio no se incluirn cuando utilice estas funciones. Si desea que la funcin DCont se base en los valores cambiados, primero debe guardar los cambios al hacer clic en Guardar registro en el men Registros en la ficha Datos, mover la seleccin a otro registro o utilizar el mtodo Update.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
La siguiente funcin devuelve el nmero de pedidos enviados a un pas especificado despus de una fecha de envo especificada. El domino es una tabla denominada Orders (Pedidos). Public Function OrdersCount _ (ByVal strCountryRegion As String, _ ByVal dteShipDate As Date) As Integer
OrdersCount = DCont("[ShippedDate]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & _ "' AND [ShippedDate] > #" & dteShipDate & "#") End Function
Para llamar a la funcin, utilice la lnea siguiente de cdigo en la ventana Inmediato: :OrdersCount "UK", #1/1/96#
Sintaxis
expr
dominio criterios
Comentarios
NOTA
Si desea devolver el primer o el ltimo registro de un conjunto de registros (un dominio), debe crear
una consulta clasificada en orden ascendente o descendente y establecer la propiedad ValoresSuperiores (TopValues) en 1. Para obtener ms informacin, vea el tema de la propiedad ValoresSuperiores (TopValues). Desde un mdulo de Visual Basic para Aplicaciones (VBA), tambin puede crear un objeto
Recordset de ADO y utilizar el mtodo MoveFirst o MoveLast para devolver el primer o el ltimo registro de un conjunto de registros.
DBsq (funcin)
Mostrar todo Puede usar la funcin DBsq para obtener el valor de un campo en un conjunto especificado de registros (un dominio). Use la funcin DBsq en un mdulo de Visual Basic para Aplicaciones (VBA), en una macro, en una expresin de consulta o en un control calculado.
Puede usar la funcin DBsq para mostrar el valor de un campo que no se encuentra en el origen de registros en que est basado el formulario o informe. Por ejemplo, suponga que tiene un formulario basado en una tabla Detalles de pedido. El formulario muestra los campos IdPedido, IdProducto, PrecioUnidad, Cantidad y Descuento. Sin embargo, el campo NombreProducto est en otra tabla, la tabla Productos. Puede utilizar la funcin DBsq en un control calculado para mostrar el NombreProducto en el mismo formulario.
Sintaxis
expr
dominio
criterios
Comentarios
La funcin DBsq devuelve un nico campo basado en la informacin especificada en criterios. Aunque criterios es un argumento opcional, si no se proporciona un valor para criterios, la funcin DBsq devuelve un valor aleatorio en el dominio.
Si ningn registro cumple los criterios o si el dominio no contiene registros, la funcin DBsq devuelve el valor Null.
Si ms de un campo cumple los criterios, la funcin DBsq devuelve la primera aparicin. Debe especificar los criterios que van a asegurar que el valor de campo devuelto por la funcin DBsq es nico. Quiz desee utilizar un valor de clave principal para los criterios, como [EmployeeID] en el siguiente ejemplo, para
asegurarse de que la funcin DBsq devuelve un valor nico: Dim varX As Variant varX = DLookup("[LastName]", "Employees", _ "[EmployeeID] = 1")
Independientemente de si usa la funcin DBsq en una macro, mdulo, expresin de consulta o control calculado, debe crear el argumento criterios con cuidado para garantizar que se evaluar correctamente.
Puede usar la funcin DBsq para especificar criterios en la fila Criterios de una consulta, en una expresin de campo calculado de una consulta o en la fila Actualizar a de una consulta de actualizacin.
Tambin puede utilizar la funcin DBsq en una expresin en un control calculado de un formulario o informe si el campo que debe mostrar no est en el origen de registros en que est basado el formulario o informe. Por ejemplo, suponga que tiene un formulario Detalles de pedido basado en una tabla Detalles de pedido con un cuadro de texto denominado IdProducto que muestra el campo IdProducto. Para buscar NombreProducto en una tabla Productos basndose en el valor del cuadro de texto, puede crear otro cuadro de texto y establecer su propiedad OrigenDelControl (ControlSource) en la expresin siguiente: =DLookup("[ProductName]", Details]!ProductID) "Products", "[ProductID] =" & Forms![Order
Sugerencias
Aunque puede utilizar la funcin DBsq para mostrar un valor de un campo en una tabla externa, puede resultar ms eficaz crear una consulta que contenga los campos que necesite de ambas tablas, y despus basar el formulario o informe en esa consulta.
Tambin puede utilizar el Asistente para bsquedas para buscar valores en una tabla externa.
NOTA
Los cambios no guardados efectuados en registros de dominio no se incluirn cuando utilice estas
funciones. Si desea que la funcin DBsq se base en los valores cambiados, primero debe guardar los cambios al hacer clic en Guardar registro en el men Registros en la ficha Datos, mover la seleccin a otro registro o utilizar el mtodo Update.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el siguiente ejemplo se devuelve informacin sobre el campo CompanyName (Nombre de compaa) del registro que cumple con los criterios. El dominio es la tabla Shippers (Compaas de envos). El argumento criterios restringe el conjunto de registros resultante a aqullos para los que ShipperID (Id. de compaa de envos) es igual a 1. Dim varX As Variant varX = DLookup("[CompanyName]", _ "Shippers", "[ShipperID] = 1")
En el ejemplo siguiente de la tabla Shippers (Compaas de envos) se utiliza el control de formulario ShipperID (Id. de compaa de envos) con el fin de proporcionar criterios para la funcin DBsq. Observe que la referencia al control no est incluida en los signos de comillas tipogrficas que denotan las cadenas. De esta forma se garantiza que cada vez que se llame a la funcin DBsq, Microsoft Office Access 2007 obtendr el valor actual del control.
Dim varX As Variant varX = DLookup("[CompanyName]", "Shippers", _ "[ShipperID] = " & Forms!Shippers!ShipperID)
En el siguiente ejemplo se usa una variable, intSearch, para obtener el valor. Dim intSearch As Integer Dim varX As Variant intSearch = 1 varX = DLookup("[CompanyName]", "Shippers", _ "[ShipperID] = " & intSearch)
Por ejemplo, puede utilizar las funciones DMn y DMx en los controles calculados de un informe para mostrar el menor y el mayor de los importes de pedido para un cliente particular. O bien, puede utilizar la funcin DMn en una expresin de consulta para mostrar todos los pedidos con un descuento mayor que el descuento mnimo posible.
Sintaxis
expr
dominio
criterios
Comentarios
Las funciones DMn y DMx devuelven los valores mnimo y mximo que cumplen los criterios. Si expr identifica datos numricos, las funciones DMn y DMx devuelven valores numricos. Si expr identifica datos de cadena, devuelven la cadena que aparece alfabticamente en primer o en ltimo lugar.
Las funciones DMn y DMx omiten los valores Null en el campo a que hace referencia expr. Sin embargo, si ningn registro cumple los criterios o si dominio no contiene registros, la funcin DMn y DMx devuelven el valor Null.
Independientemente de si usa la funcin DMn o DMx en una macro, mdulo, expresin de consulta o control calculado, debe crear el argumento criterios con cuidado para garantizar que se evaluar correctamente.
Puede utilizar las funciones DMn y DMx para especificar criterios en la fila Criterios de una consulta, en una expresin de campo calculado de una consulta o en la fila Actualizar a de una consulta de actualizacin.
NOTA
Se pueden utilizar las funciones DMn y DMx o las funciones Mn (Min) y Mx (Max) en una
expresin de campo calculado dentro de una consulta de totales. Si utiliza la funcin DMn o DMx los valores se calculan antes de que se agrupen los datos. Si usa la funcin Mn o Mx los datos se agrupan antes de que se evalen los valores de la expresin del campo.
Utilice las funciones DMn o DMx en un control calculado cuando necesite especificar criterios para restringir el intervalo de datos sobre el que se ejecuta la funcin. Por ejemplo, para mostrar los gastos de envo mximos de un pedido enviado a California, establezca la propiedad OrigenDelControl (ControlSource) de un cuadro de texto en la siguiente expresin: =DMax("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Si nicamente desea averiguar el valor mnimo o mximo de todos los registros de dominio, utilice la funcin Mn o Mx.
Puede utilizar la funcin DMn o DMx en un mdulo o macro o en un control calculado de un formulario si el campo que debe mostrar no est en el origen de registros en que est basado el formulario.
Sugerencia
NOTA
Los cambios no guardados efectuados en registros de dominio no se incluirn cuando utilice estas
funciones. Si desea que la funcin DMx o DMn se base en los valores cambiados, primero debe guardar los cambios haciendo clic en Guardar registro en Registros en la ficha Datos, moviendo la seleccin a otro registro o utilizando el mtodo Update.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el siguiente ejemplo se devuelven los valores ms bajo y ms alto del campo Freight (Gastos de envo) para los pedidos enviados al Reino Unido (UK). El dominio es la tabla Orders (Pedidos). El argumento criterios restringe el conjunto de registros resultante a aqullos para los que ShipCountryRegion (ReginPas de destino) es igual a UK.
Dim curX As Currency Dim curY As Currency curX = DMin("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'") curY = DMax("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'")
En el ejemplo siguiente, el argumento criterios incluye el valor actual de un cuadro de texto denominado OrderDate (Fecha de pedido). El cuadro de texto es dependiente de un campo OrderDate (Fecha de pedido) de una tabla Orders (Pedidos). Observe que la referencia al control no est incluida entre los signos de dobles comillas tipogrficas (") que denotan las cadenas. De esta forma, se garantiza que cada vez que se llama a la funcin DMx, Microsoft Office Access 2007 obtiene el valor actual del control. Dim curX As Currency curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _ & Forms!Orders!OrderDate & "#") En el ejemplo siguiente, la expresin de criterio incluye una variable, dteOrderDate. Observe que en la expresin de cadena se incluyen signos de nmero (#), de modo que cuando las cadenas se concatenen, estos signos contendrn la fecha. Dim dteOrderDate As Date Dim curX As Currency dteOrderDate = #03/30/2000# curX = DMin("[Freight]", "Orders", _ "[OrderDate] = #" & dteOrderDate & "#")
Use la funcin DDesvEstP para evaluar una poblacin y la funcin DDesvEst para evaluar una muestra de poblacin.
Por ejemplo, puede usar la funcin DDesvEst en un mdulo para calcular la desviacin estndar de los resultados de los exmenes de un grupo de estudiantes.
Sintaxis
expr
dominio
criterios
Comentarios
Si dominio hace referencia a menos de dos registros, o si menos de dos registros cumplen los criterios, las funciones DDesvEst y DDesvEstP devuelven el valor Null, que indica que no puede calcularse la desviacin estndar.
Independientemente de si usa la funcin DDesvEst o DDesvEstP en una macro, mdulo, expresin de consulta o control calculado, debe crear el argumento criterios con cuidado para garantizar que se evaluar correctamente.
Puede utilizar DDesvEst y DDesvEstP para especificar criterios en la fila Criterios de una consulta seleccionada. Por ejemplo, puede crear una consulta en una tabla Pedidos y en una tabla Productos para mostrar todos los productos para los que los gastos de envo queden por encima de la media ms la desviacin estndar para los gastos de envo. La fila Criterios bajo el campo Gastos de envo contiene la expresin siguiente: >(DDesvEst("[Gastos "Pedidos")) de envo]", "Pedidos") + DProm("[Gastos de envo]",
Puede utilizar las funciones DDesvEst y DDesvEstP dentro de una expresin de campo calculado en una consulta o en la fila Actualizar a de una consulta de actualizacin.
NOTA
Se pueden utilizar las funciones DDesvEst y DDesvEstP o las funciones DesvEst (StDev) y
DesvEstP (StDevP) en una expresin de campo calculado dentro de una consulta de totales. Si utiliza la funcin DDesvEst o DDesvEstP los valores se calculan antes de que se agrupen los datos. Si usa la funcin DesvEst o DesvEstP los datos se agrupan antes de que se evalen los valores de la expresin del campo.
Utilice las funciones DDesvEst o DesvEstP en un control calculado cuando necesite especificar criterios para restringir el intervalo de datos sobre el que se ejecuta la funcin. Por ejemplo, para mostrar la desviacin estndar de los pedidos que se van a enviar a California, establezca la propiedad OrigenDelControl (ControlSource) de un cuadro de texto en la siguiente expresin: =DDesvEst("[Gastos de envo]", "Pedidos", "[ReginEnvo] = 'CA'")
Si simplemente desea encontrar la desviacin estndar de todos los registros de dominio, utilice la funcin DDesvEst o DDesvEstP.
Sugerencia
NOTA
Los cambios no guardados efectuados en registros de dominio no se incluyen cuando utilice estas
funciones. Si desea que la funcin DDesvEst o DDesvEstP se base en los valores cambiados, primero debe guardar los cambios haciendo clic en Guardar registro en Registros en la ficha Datos, moviendo la seleccin a otro registro o utilizando el mtodo Update.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el siguiente ejemplo se devuelven clculos de la desviacin estndar de una poblacin y una muestra de poblacin para los pedidos enviados al Reino Unido (UK). El dominio es la tabla Orders (Pedidos). El argumento criterios restringe el conjunto de registros resultante a aqullos para los que ShipCountryRegion (ReginPas de destino) es igual a UK. Dim dblX As Double Dim dblY As Double
En el siguiente ejemplo se calculan los mismos clculos usando una variable, strCountryRegion, en el argumento criterios. Observe que hay signos de comilla tipogrfica (') incluidos en la expresin de cadena, de modo que, cuando se concatenen las cadenas, la cadena UK se encontrar entre comillas tipogrficas. Dim strCountryRegion As String Dim dblX As Double Dim dblY As Double
strCountryRegion = "UK"
DSuma (funcin)
DSuma (funcin, DSum)
Mostrar todo Puede usar la funcin DSuma (DSum) para calcular la suma de un conjunto de valores de un conjunto especificado de registros (un dominio). La funcin DSuma se utiliza en un mdulo de Visual Basic para Aplicaciones (VBA), en una macro, en una expresin de consulta o en un control calculado.
Por ejemplo, puede utilizar la funcin DSuma en una expresin de campo calculada en una consulta para calcular las ventas totales realizadas por un empleado particular durante cierto perodo de tiempo. O puede utilizar la funcin DSuma en un control calculado para mostrar una suma actualizada de ventas para un producto particular.
Sintaxis
expr
dominio
criterios
Comentarios
Si ningn registro cumple el argumento criterios o si el dominio no contiene registros, la funcin DSuma devuelve el valor Null.
Independientemente de si usa la funcin DSuma en una macro, mdulo, expresin de consulta o control calculado, debe crear el argumento criterios con cuidado para garantizar que se evaluar correctamente.
Puede usar la funcin DSuma para especificar criterios en la fila Criterios de una consulta, en un campo calculado en una expresin de consulta o en la fila Actualizar a de una consulta de actualizacin.
NOTA
Tambin puede utilizar la funcin DSuma o Suma (Sum) en una expresin de campo calculado en
una consulta de totales. Si utiliza la funcin DSuma, los valores se calculan antes de que se agrupen los datos. Si se utiliza la funcin Suma, los datos se agrupan antes de que se promedien los valores de la expresin de campo.
Es posible que desee utilizar la funcin DSuma cuando necesite mostrar la suma de un conjunto de valores de un campo que no est en el origen de registros para el formulario o informe. Por ejemplo, suponga que
tiene un formulario que muestra informacin sobre un producto particular. Puede utilizar la funcin DSuma para mantener un total actualizado de ventas de ese producto en un control calculado.
Sugerencia
NOTA
Los cambios no guardados efectuados en registros de dominio no se incluirn cuando utilice estas
funciones. Si desea que la funcin DSuma se base en los valores cambiados, primero debe guardar los cambios haciendo clic en Guardar registro en el grupo Registros en la ficha Inicio, moviendo la seleccin a otro registro o usando el mtodo Update.
Ejemplos
Usar la funcin DSuma en una expresin Puede usar una funcin de dominio (como DSuma) en la fila Actualizar a de una consulta de actualizacin. Por ejemplo, supongamos que desea realizar un seguimiento de las ventas actuales por producto en la tabla Productos. Puede agregar un nuevo campo denominado VentasHastaFecha a la tabla Productos y ejecutar una consulta de actualizacin para calcular los valores correctos y actualizar los registros. Cree una nueva consulta basada en la tabla Productos y haga clic en la ficha Diseo, en el grupo Tipo de consulta, haga clic en Actualizacin. Agregue el campo VentasHastaFecha a la cuadrcula de la consulta y escriba lo siguiente en la fila Actualizar a: DSum("[Quantity]*[UnitPrice]", "Order Details", _ "[ProductID] = "& [ProductID]) Una vez ejecutada la consulta, Microsoft Office Access 2007 calcula la cantidad total de ventas para cada producto, basndose en la informacin de la tabla Detalles de pedidos. La suma de las ventas de cada producto se agrega a la tabla Productos.
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el siguiente ejemplo, se calculan los valores del campo Freight (Gastos de envo) de los pedidos enviados al Reino Unido (UK). El dominio es la tabla Orders (Pedidos). El argumento criterios restringe el conjunto de registros resultante a aqullos para los que ShipCountryRegion (ReginPas de destino) es igual a UK.
Dim curX As Currency curX = DSum("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'") En el ejemplo siguiente se calcula un total usando dos criterios distintos. Observe que en la expresin de cadena se incluyen signos de comilla tipogrfica (') y signos de nmero (#), de modo que cuando las cadenas se concatenen, la cadena est encerrada entre signos de comilla tipogrfica y la fecha est encerrada entre signos de almohadilla. Dim curX As Currency curX = DSum("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK' AND _ [ShippedDate] > #1-1-95#")
Use la funcin DVarP para evaluar la varianza de una poblacin y la funcin DVar para evaluar una varianza de una muestra de poblacin.
Por ejemplo, puede usar la funcin DVar para calcular la varianza de los resultados de los exmenes de un grupo de estudiantes.
Sintaxis
expr
dominio
criterios
Comentarios
Si dominio hace referencia a menos de dos registros, o si menos de dos registros cumplen los criterios, las funciones DVar y DVarP devuelven el valor Null, que indica que no puede calcularse la varianza.
Independientemente de si usa la funcin DVar o DVarP en una macro, mdulo, expresin de consulta o control calculado, debe crear el argumento criterios con cuidado para garantizar que se evaluar correctamente.
Puede utilizar las funciones DVar y DVarP para especificar criterios en la fila Criterios de una consulta de seleccin, en una expresin de campo calculados de una consulta o en la fila Actualizar a de una consulta de actualizacin.
NOTA
Se pueden utilizar las funciones DVar y DVarP o las funciones Var y VarP en una expresin de
campo calculado dentro de una consulta de totales. Si utiliza la funcin DVar o DVarP los valores se calculan antes de que se agrupen los datos. Si usa la funcin Var o VarP los datos se agrupan antes de que se evalen los valores de la expresin del campo.
Utilice las funciones DVar y DVarP en un control calculado cuando necesite especificar criterios para restringir el intervalo de datos sobre el que se ejecuta la funcin. Por ejemplo, para mostrar una varianza de
los pedidos que se van a enviar a California, establezca la propiedad OrigenDelControl (ControlSource) de un cuadro de texto en la siguiente expresin: =DVar("[Freight]", "Orders", "[ShipRegion] = 'CA'") Si simplemente desea encontrar la desviacin estndar de todos los registros de dominio, utilice la funcin Var o VarP.
NOTA
Los cambios no guardados efectuados en registros de dominio no se incluirn cuando utilice estas
funciones. Si desea que la funcin DVar o DVarP se base en los valores cambiados, primero debe guardar los cambios haciendo clic en Guardar registro en Registros en la ficha Datos, moviendo la seleccin a otro registro o utilizando el mtodo Update.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el siguiente ejemplo, se devuelven clculos de la varianza de una poblacin y una muestra de poblacin para los pedidos enviados al Reino Unido. El dominio es la tabla Orders (Pedidos). El argumento criterios restringe el conjunto de registros resultante a aqullos para los que ShipCountryRegion (ReginPas de destino) es igual a UK. Dim dblX As Double Dim dblY As Double ' Sample estimate. dblX = DVar("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'") ' Population estimate. dblY = DVarP("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'")
En el siguiente ejemplo se devuelven clculos usando una variable, strCountryRegion, en el argumento criterios. Observe que hay signos de comilla tipogrfica (') incluidos en la expresin de cadena de modo que, cuando se concatenen las cadenas, la cadena UK estar entre signos de comilla tipogrfica. Dim strCountryRegion As String Dim dblX As Double strCountryRegion = "UK"
Tratamiento de errores
CVErr (funcin)
Mostrar todo Devuelve un tipo de dato Variant de subtipo Error que contiene un nmero de error especificado por el usuario.
Sintaxis
CVErr(nmerodeerror)
Comentarios
Utilice la funcin CVErr para crear errores definidos por el usuario en procedimientos creados por el usuario. Por ejemplo, si crea una funcin que acepta varios argumentos y normalmente devuelve una cadena, puede hacer que la funcin evale los argumentos de entrada para asegurarse de que se encuentran dentro de un intervalo aceptable. Si no es as, es probable que la funcin no devuelva lo esperado. En este caso, CVErr le permite devolver un nmero de error que le indica la accin que hay que tomar.
Observe que no se permite esa conversin implcita de un Error. Por ejemplo, no puede asignar directamente el valor devuelto de CVErr a una variable que no es un tipo de dato Variant. Sin embargo, puede ejecutar una conversin explcita (utilizando CInt, CDbl, etc.) del valor devuelto por CVErr y asignarlo a una variable del tipo de datos apropiado.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin CVErr para devolver un tipo de dato Variant cuyo VarType es vbError (10). La funcin definida por el usuario CalculateDouble devuelve un error si el argumento que se ha pasado no es un nmero. Puede utilizar CVErr para devolver errores definidos por el usuario desde procedimientos
definidos por el usuario o para aplazar el control de un error en tiempo de ejecucin. La funcin IsError se utiliza para comprobar si el valor representa un error. ' Call CalculateDouble with an error-producing argument. Sub Test() Debug.Print CalculateDouble("345.45robert") End Sub ' Define CalculateDouble Function procedure. Function CalculateDouble(Number) If IsNumeric(Number) Then CalculateDouble = Number * 2 Else CalculateDouble = CVErr(2001) End If End Function ' number. ' Return a user-defined error ' Return result.
Error (funcin)
Mostrar todo Devuelve el mensaje de error que corresponde a un nmero de error determinado.
Sintaxis
Error [ (nmeroerror) ]
El argumento nmeroerror puede ser cualquier nmero de error vlido. Si nmeroerror es un nmero de error vlido, pero no est definido, Error devuelve la cadena "Error definido por el objeto o definido por la aplicacin". Si nmeroerror no es vlido, se produce un error. Si se omite nmeroerror, se devuelve el mensaje correspondiente al error en tiempo de ejecucin ms reciente. Si no se ha producido ningn error en tiempo de ejecucin o nmeroerror es 0, Error devuelve una cadena de longitud cero ("").
Comentarios
Compruebe el valor de las propiedades del objeto Err para identificar el error en tiempo de ejecucin ms reciente. El valor devuelto de la funcin Error corresponde a la propiedad Descripcin del objeto Err.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Error para imprimir mensajes de error que se corresponden con los nmeros de error especificados. Dim ErrorNumber ' Loop through values 61 - 64. For ErrorNumber = 61 To 64 ' Print error to Immediate window. Debug.Print Error(ErrorNumber) Next ErrorNumber
Sintaxis
EOF(nmeroarchivo )
Comentarios
Utilice EOF para evitar el error que se produce al intentar obtener una entrada tras el final de un archivo.
La funcin EOF devuelve False hasta que se alcanza el final del archivo. Con archivos abiertos para acceso Aleatorio o Binario, EOF devuelve False hasta que la ltima instruccin Get ejecutada no pueda leer un registro completo.
Con archivos abiertos para acceso Binario, un intento de leer el archivo utilizando la funcin Input hasta que EOF devuelve True genera un error. Utilice las funciones LOF y Loc en lugar de EOF al leer archivos binarios con Input, o utilice Get al utilizar la funcin EOF. Con archivos abiertos para Output, EOF siempre devuelve True.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin EOF para detectar el final de un archivo. En este ejemplo se supone que
MYFILE es un archivo de texto con algunas lneas.
Dim InputData ' Open file for input. Open "MYFILE" For Input As #1 ' Check for end of file. Do While Not EOF(1) ' Read line of data. Line Input #1, InputData ' Print to the Immediate window. Debug.Print InputData Loop ' Close file. Close #1
FreeFile (funcin)
Mostrar todo Devuelve un Entero que representa el siguiente nmero de archivo disponible para su uso con la instruccin Open.
Sintaxis
FreeFile[(nmerodeintervalo)]
El argumento opcional nmerodeintervalo es un tipo de dato Variant que especifica el intervalo desde el que se va a devolver el siguiente nmero de archivo libre. Especifique un 0 (predeterminado) para devolver un nmero de archivo de 1 a 255, ambos inclusive. Especifique un 1 para devolver un nmero de archivo de 256 a 511.
Comentarios
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin FreeFile para devolver el siguiente nmero de archivo disponible. Se abren cinco archivos para el resultado y se escriben en cada uno de ellos algunos datos de ejemplo. Dim MyIndex, FileNumber For MyIndex = 1 To 5 ' Loop 5 times.
' Get unused file number. FileNumber = FreeFile ' Create file name. Open "TEST" & MyIndex For Output As #FileNumber ' Output text. Write #FileNumber, "This is a sample." ' Close file. Close #FileNumber Next MyIndex
Entrada (funcin)
Mostrar todo Devuelve una cadena que contiene caracteres de un archivo abierto en modo Entrada o Binario.
Sintaxis
Entrada(nmero, [# ] nmeroArchivo)
nmero
nmeroArchivo
Comentarios
Los datos ledos con la funcin Entrada se escriben normalmente en un archivo con Print # o Put. Utilice esta funcin nicamente con archivos abiertos en modo Entrada o Binario.
A diferencia de la instruccin Input #, la funcin Entrada devuelve todos los caracteres que lee, incluidos comas, retornos de carro, avances de lnea, signos de interrogacin y espacios iniciales.
Con archivos abiertos para acceso Binario, cualquier intento de leer el archivo mediante la funcin Entrada hasta que EOF devuelve Verdadero genera un error. Utilice las funciones LOF y Loc en vez de EOF al leer archivos binarios con Entrada. Tambin puede utilizar Get cuando emplee la funcin EOF.
NOTA
Utilice la funcin EntradaB para datos byte incluidos en archivos de texto. Con EntradaB, nmero
especifica el nmero de bytes en vez del nmero de caracteres que se van a devolver.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Entrada para leer un carcter a la vez de un archivo e imprimirlo en la ventana Inmediato. En este ejemplo, se supone que TESTFILE es un archivo de texto con algunas lneas de datos de ejemplo.
Dim MyChar Open "TESTFILE" For Input As #1 Do While Not EOF(1) ' Open file.
MyChar = Input(1, #1) Debug.Print MyChar Loop Close #1 ' Close file.
Loc (funcin)
Mostrar todo Devuelve un valor de tipo Long que especifica la actual posicin de lectura o escritura en un archivo abierto.
Sintaxis
Loc(nmeroDeArchivo)
Comentarios
Binario
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Loc para devolver la actual posicin de lectura o escritura en un archivo abierto. En este ejemplo, se supone que TESTFILE es un archivo de texto con algunas lneas de datos de ejemplo. Dim MyLocation, MyLine ' Open file just created. Open "TESTFILE" For Binary As #1 ' Loop until end of file. Do While MyLocation < LOF(1) ' Read character into variable. MyLine = MyLine & Input(1, #1) ' Get current position within file. MyLocation = Loc(1) ' Print to the Immediate window. Debug.Print MyLine; Tab; MyLocation Loop Close #1 ' Close file.
LOF (funcin)
Mostrar todo Devuelve un valor de tipo Long que representa el tamao, en bytes, de un archivo que se ha abierto mediante la instruccin Open.
Sintaxis
LOF(nmeroDeArchivo)
NOTA
Utilice la funcin LongArch para obtener la longitud de un archivo que no est abierto.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin LOF para determinar el tamao de un archivo abierto. En este ejemplo, se supone que TESTFILE es un archivo de texto que contiene datos de ejemplo. Dim FileLength Open "TESTFILE" For Input As #1 FileLength = LOF(1) Close #1 ' Open file.
Seek (funcin)
Mostrar todo Devuelve un valor de tipo Long que especifica la actual posicin de lectura o escritura en un archivo que se ha abierto mediante la instruccin Open.
Sintaxis
Seek(nmeroDeArchivo)
Comentarios Seek devuelve un valor del 1 al 2.147.483.647 (equivalente a 2^31 1), ambos inclusive.
A continuacin se describen los valores devueltos para cada modo de acceso a archivos.
Valor devuelto Nmero del siguiente registro ledo o escrito. Posicin de byte en la que tiene lugar la siguiente operacin. El primer byte de un archivo se encuentra en la posicin 1, el segundo en la posicin 2, etc.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Seek para que se devuelva la actual posicin en un archivo. En el ejemplo, se supone que TESTFILE es un archivo que contiene registros definidos por el usuario Record. Type Record ' Define user-defined type.
ID As Integer Name As String * 20 End Type En el caso de archivos que se han abierto en modo Aleatorio, Seek devuelve el nmero del siguiente registro. Dim MyRecord As Record ' Declare variable.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord) Do While Not EOF(1) Get #1, , MyRecord ' Loop until end of file. ' Read next record.
' Print record number to the Immediate window. Debug.Print Seek(1) Loop Close #1 ' Close file.
En el caso de archivos que se han abierto en modos que no sean Aleatorio, Seek devuelve la posicin de byte en la que va a llevarse a cabo la siguiente operacin. Se supone que TESTFILE es un archivo que contiene algunas lneas de texto. Dim MyChar Open "TESTFILE" For Input As #1 ' Open file for reading. Do While Not EOF(1) ' Loop until end of file. MyChar = Input(1, #1) ' Read next character of data. ' Print byte position to the Immediate window. Debug.Print Seek(1) Loop Close #1 ' Close file.
Administracin de archivos
DirAct (funcin)
DirAct (funcin, CurDir)
Mostrar todo Devuelve un tipo de dato Variant (String) que representa la ruta actual.
Sintaxis CurDir[(unidad)] El argumento unidad es una expresin de cadena que especifica la unidad existente. Si no se especifica ninguna unidad o si unidad es una cadena de longitud cero (""), DirAct (CurDir) devuelve la ruta de la unidad actual. En Macintosh, DirAct omite cualquier unidad especificada y slo devuelve la ruta de la unidad actual.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin DirAct para devolver la ruta actual. En Macintosh, se omiten las especificaciones de unidad dadas a DirAct. El nombre de unidad predeterminado es HD y las partes del nombre de ruta se separan con un punto y coma. De igual forma, podra especificar carpetas de Macintosh en lugar de \Windows. ' Assume current path on C drive is "C:\WINDOWS\SYSTEM" (on Microsoft Windows). ' Assume current path on D drive is "D:\EXCEL". ' Assume C is the current drive. Dim MyPath MyPath = CurDir ' Returns "C:\WINDOWS\SYSTEM". ' Returns "C:\WINDOWS\SYSTEM". ' Returns "D:\EXCEL".
Dir (funcin)
Mostrar todo Devuelve un valor String que representa el nombre de un archivo, de un directorio o de una carpeta que coincide con un modelo especificado o atributo de archivo, o con la etiqueta de volumen de una unidad.
Sintaxis
Dir[(nombreruta [, atributos] )]
nombreruta
atributos
Valores
vbDirectory vbAlias
16 64
NOTA
Estas constantes las especifica Visual Basic para Aplicaciones (VBA) y se pueden utilizar en
Comentarios
En Microsoft Windows, Dir admite el uso de caracteres comodn mltiples ( *) e individuales (?) para especificar varios archivos. En Macintosh, estos caracteres se tratan como caracteres de nombre de archivo vlidos y no se pueden utilizar como caracteres comodn para especificar varios archivos.
Como Macintosh no admite los caracteres comodn, utilice el tipo de archivo para identificar grupos de archivos. Puede usar la funcin MacID para especificar el tipo de archivo en vez de usar los nombres de archivo. Por ejemplo, la siguiente instruccin devuelve el nombre del primer archivo TEXT de la carpeta actual: Dir("SomePath", MacID("TEXT")) Para recorrer en iteracin todos los archivos de una carpeta, especifique una cadena vaca: Dir("") Si se utiliza la funcin MacID con Dir en Windows, se produce un error.
Debe especificar un nombreruta la primera vez que llame a la funcin Dir o se producir un error. Si tambin especifica atributos de archivo, se debe incluir nombreruta.
Dir devuelve el primer nombre de archivo que coincida con nombreruta. Para obtener nombres de archivo adicionales que coincidan con nombreruta, llame de nuevo a la funcin Dir sin argumentos. Cuando no coincidan ms nombres de archivo, Dir devuelve una cadena de longitud cero (""). Cuando se devuelve la cadena de longitud cero, debe especificar nombreruta en llamadas posteriores o se producir un error. Puede cambiar a un nuevo nombreruta sin recuperar todos los nombres de archivo que coincidan con el nombreruta actual. Sin embargo, no puede llamar a la funcin Dir repetidamente. Llamar a la funcin Dir con el atributo vbDirectory no devuelve subdirectorios continuamente.
Sugerencia Como los nombres de archivo no se recuperan en ningn orden determinado, puede desear almacenar los nombres de archivo devueltos en una matriz y, a continuacin, devolver la matriz.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Dir para comprobar si existen determinados archivos y directorios. En Macintosh, el nombre de unidad predeterminado es HD: y las partes del nomb re de ruta se separan con un punto y coma en lugar de barras invertidas. Adems, los caracteres comodn de Windows se tratan como caracteres de nombre de archivo vlidos en Macintosh. Sin embargo, puede utilizar la funcin MacID para especificar grupos de archivos. Dim MyFile, MyPath, MyName ' Returns "WIN.INI" (on Microsoft Windows) if it exists. MyFile = Dir("C:\WINDOWS\WIN.INI") ' Returns filename with specified extension. If more than one *.ini ' file exists, the first file found is returned. MyFile = Dir("C:\WINDOWS\*.INI") ' Call Dir again without arguments to return the next *.INI file in the ' same directory. MyFile = Dir ' Return first *.TXT file with a set hidden attribute. MyFile = Dir("*.TXT", vbHidden) ' Display the names in C:\ that represent directories. MyPath = "c:\" ' Set the path. ' Retrieve the first entry. ' Start the loop. MyName = Dir(MyPath, vbDirectory) Do While MyName <> ""
' Ignore the current directory and the encompassing directory. If MyName <> "." And MyName <> ".." Then ' Use bitwise comparison to make sure MyName is a directory. If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then Debug.Print MyName End If End If MyName = Dir Loop ' Get next entry. ' Display entry only if it ' it represents a directory.
FileAttr (funcin)
Funcin FileAttr
Mostrar todo Devuelve un valor Long que representa el modo de archivo para archivos abiertos con la instruccin Open.
Sintaxis
FileAttr(nmeroarchivo, tipodevuelto)
nmeroarchivo tipodevuelto
Valores devueltos
Cuando el argumento tipodevuelto es 1, los siguientes valores devueltos indican el modo de acceso a archivos:
Modo Entrada Salida Aleatorio Datos anexados Binario Valor 1 2 4 8 3
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin FileAttr para devolver el modo de archivo y el controlador de un archivo abierto. El controlador de archivo slo se devuelve en los sistemas de 16 bits; en los sistemas de 32 bits, si se pasa 2 como segundo argumento, se genera un error. Dim FileNum, Mode, Handle FileNum = 1 ' Assign file number. ' Open file.
Mode = FileAttr(FileNum, 1) ' Returns 8 (Append file mode). Handle = FileAttr(FileNum, 2) ' Returns file handle. Close FileNum ' Close file.
HoraFechArch (funcin)
FileDateTime (funcin)
Mostrar todo Devuelve un tipo de dato Variant (Date) que indica la fecha y hora en la que el archivo se ha creado o modificado por ltima vez.
Sintaxis
FileDateTime(nombreruta)
El argumento nombreruta es una ">expresin de cadena que especifica un nombre de archivo. nombreruta puede incluir el directorio o carpeta y la unidad.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin HoraFechArch (FileDateTime) para determinar la fecha y la hora de creacin o de ltima modificacin de un archivo. El formato de fecha y hora mostrado se basa en la configuracin regional del sistema. Dim MyStamp ' Assume TESTFILE was last modified on February 12, 1993 ' at 4:35:47 PM. ' Assume English/U.S. locale settings. MyStamp = FileDateTime("TESTFILE") ' Returns "2/12/93 4:35:47 PM".
FileLen (funcin)
LongArch (funcin, FileLen)
Mostrar todo Devuelve un valor Long que especifica la longitud de un archivo en bytes.
Sintaxis
FileLen(nombreruta)
El argumento nombreruta es una ">expresin de cadena que especifica un archivo. nombreruta puede incluir el directorio o carpeta y la unidad.
Comentarios
Si el archivo especificado est abierto cuando se llama a la funcin LongArch (FileLen), el valor devuelto representa el tamao del archivo antes de ser abierto.
NOTA
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin LongArch para devolver la longitud de un archivo en bytes. Para este ejemplo, suponga que TESTFILE es un archivo que contiene algunos datos. Dim MySize MySize = FileLen("TESTFILE") ' Returns file length (bytes).
ObtenerAtributo (funcin)
ObtenerAtributo (funcin, GetAttr)
Mostrar todo Devuelve un Entero que representa los atributos de un archivo, directorio o carpeta. Sintaxis GetAttr(nombreruta) El argumento nombreruta es una ">expresin de cadena que especifica un nombre de archivo. nombreruta puede incluir el directorio o carpeta y la unidad. Valores devueltos El valor devuelto por la funcin ObtenerAtributo (GetAttr) es la suma de los siguientes valores de atributo:
Constante vbNormal vbReadOnly vbHidden vbSystem vbDirectory vbArchive vbAlias Valor 0 1 2 4 16 32 64 Descripcin Normal. Slo lectura. Oculto. Archivo de sistema. No est disponible en Macintosh. Directorio o carpeta. El archivo ha cambiado desde la ltima copia de seguridad. No est disponible en Macintosh. El nombre de archivo especificado es un alias. Disponible slo en Macintosh.
NOTA
Estas constantes las especifica Visual Basic para Aplicaciones. Se pueden usar los nombres en
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. Para determinar los atributos que se establecen, use el operador And para realizar una comparacin bit a bit del valor devuelto por la funcin ObtenerAtributo y el valor del atributo de archivo individual deseado. Si el resultado no es cero, dicho atributo se ha establecido para el archivo designado. Por ejemplo, el valor devuelto de la siguiente expresin And es cero si no se ha establecido el atributo de almacenamiento Archive: Result = GetAttr(FName) And vbArchive Se devuelve un valor distinto de cero si se ha establecido el atributo de almacenamiento.
Ejemplo
En este ejemplo se utiliza la funcin ObtenerAtributo para determinar los atributos de un archivo y un directorio o una carpeta. En Macintosh, slo estn disponibles las constantes vbNormal, vbReadOnly, vbHidden y vbAlias. Dim MyAttr ' Assume file TESTFILE has hidden attribute set. MyAttr = GetAttr("TESTFILE") ' Returns 2.
' Returns nonzero if hidden attribute is ' set on TESTFILE. Debug.Print MyAttr And vbHidden ' Assume file TESTFILE has hidden and ' read-only attributes set. MyAttr = GetAttr("TESTFILE") ' Returns 3.
' Returns nonzero if hidden attribute is ' set on TESTFILE. Debug.Print MyAttr And (vbHidden + vbReadOnly) ' Assume MYDIR is a directory or folder. MyAttr = GetAttr("MYDIR") ' Returns 16.
Financieras
Amortiz (funcin)
DDB (funcin)
Mostrar todo Devuelve un tipo de dato Double que especifica la depreciacin de un bien en un perodo de tiempo determinado mediante el uso del mtodo por doble disminucin de saldo o cualquier otro mtodo que se especifique.
Sintaxis
Comentarios
El mtodo de doble disminucin de saldo computa la depreciacin a un ritmo acelerado. La depreciacin es ms elevada en el primer perodo y desciende en perodos sucesivos.
Los argumentos vida y perodo deben expresarse en las mismas unidades. Por ejemplo, si vida se expresa en meses, perodo tambin debe expresarse en meses. Todos los argumentos deben ser nmeros positivos.
La funcin Amortiz utiliza la siguiente frmula para calcular la depreciacin en un perodo determinado:
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Amortiz para devolver la depreciacin de un activo para un perodo especificado dado el costo inicial (InitCost), el valor residual al final de la vida til del activo ( SalvageVal), la vida total del activo en aos (LifeTime) y el perodo en aos para el que se calcula la depreciacin ( Depr). Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, Depr Const YRMOS = 12 Fmt = "###,##0.00" InitCost = InputBox("What's the initial cost of the asset?") SalvageVal = InputBox("Enter the asset's value at end of its life.") MonthLife = InputBox("What's the asset's useful life in months?") Do While MonthLife < YRMOS ' Ensure period is >= 1 year. ' Number of months in a year.
MsgBox "Asset life must be a year or more." MonthLife = InputBox("What's the asset's useful life in months?") Loop LifeTime = MonthLife / YRMOS ' Convert months to years.
If LifeTime <> Int(MonthLife / YRMOS) Then LifeTime = Int(LifeTime + 1) End If DepYear = CInt(InputBox("Enter year for depreciation calculation.")) Do While DepYear < 1 Or DepYear > LifeTime MsgBox "You must enter at least 1 but not more than " & LifeTime DepYear = InputBox("Enter year for depreciation calculation.") Loop Depr = DDB(InitCost, SalvageVal, LifeTime, DepYear) MsgBox "The depreciation for year " & DepYear & " is " & _ Format(Depr, Fmt) & "." ' Round up to nearest year.
VF (funcin)
VF (funcin, FV)
Mostrar todo Devuelve un valor Double que especifica el valor futuro de una anualidad basada en pagos fijos peridicos y una tasa de inters fija.
Sintaxis
tasa
nper
pago
va
tipo
Comentarios
Una anualidad es una serie de pagos fijos en efectivo que se realizan durante un perodo de tiempo. La anualidad puede ser un prstamo (como una hipoteca) o una inversin (como un plan de ahorro mensual).
Los argumentos tasa y nper se deben calcular con los perodos de pago expresados en las mismas unidades. Por ejemplo, si tasa se calcula en meses, nper tambin se debe calcular en meses.
En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como cheques de dividendos) se representan con nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin VF (FV) para devolver el valor futuro de una inversin dado el porcentaje acumulado por perodo (APR / 12), el nmero total de pagos (TotPmts), el pago (Payment), el valor actual de la inversin (PVal) y un nmero que indica si el pago se realiza al comienzo o al final del perodo de pago (PayType). Observe que, como Payment representa el efectivo pagado, es un nmero negativo. Dim Fmt, Payment, APR, TotPmts, PayType, PVal, FVal Const ENDPERIOD = 0, BEGINPERIOD = 1 Fmt = "###,###,##0.00" ' When payments are made.
Payment = InputBox("How much do you plan to save each month?") APR = InputBox("Enter the expected interest annual percentage rate.") If APR > 1 Then APR = APR / 100 ' Ensure proper form.
TotPmts = InputBox("For how many months do you expect to save?") PayType = MsgBox("Do you make payments at the end of month?", vbYesNo) If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD PVal = InputBox("How much is in this savings account now?") FVal = FV(APR / 12, TotPmts, -Payment, -PVal, PayType) MsgBox "Your savings will be worth " & Format(FVal, Fmt) & "."
Inters (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el pago de intereses durante un perodo determinado de una anualidad basndose en pagos fijos peridicos y una tasa de inters fija. Sintaxis Inters(tasa, per, nper, va, [vf ], [tipo ] ) La sintaxis de la funcin Inters tiene estos argumentos:
Argumento Descripcin Requerido. Valor de tipo Double que especifica la tasa de inters por perodo. Por ejemplo, si obtiene un prstamo para un automvil a una tasa de inters anual del 10 por ciento y realiza pagos mensuales, la tasa por perodo es de 0,1/12 0,0083. Requerido. Valor de tipo Double que especifica el perodo de pago en el intervalo 1 mediante nper. Requerido. Valor de tipo Double que especifica el nmero total de perodos de pago de la anualidad. Por ejemplo, si realiza pagos mensuales para el prstamo de un automvil de cuatro aos, el prstamo tiene un total de 4 x 12 ( 48) perodos de pago. Requerido. Valor de tipo Double que especifica el valor actual, o valor a fecha de hoy, de una serie de futuros pagos o cobros. Por ejemplo, al pedir dinero prestado para comprar un automvil, el importe del prstamo es el valor actual para el prestamista de los pagos mensuales que se van a realizar. Opcional. Valor de tipo Variant que especifica el valor futuro o saldo en efectivo deseado tras realizar el pago final. Por ejemplo, el valor futuro de un prstamo es de 0 $ porque es el valor tras el pago final. Sin embargo, si se desea ahorrar 50.000 $ durante 18 aos para la educacin de un hijo, el valor futuro ser de 50.000 $. Si se omite, se supone que el valor es 0. Opcional. Valor de tipo Variant que especifica cundo se deben realizar los pagos. Utilice 0 si los pagos se deben realizar al final del perodo de pago 1 si se deben abonar al principio del perodo. Si se omite, se supone que el valor es 0.
tasa
per nper
va
vf
tipo
Comentarios
Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un perodo de tiempo. Una anualidad puede ser un prstamo (como un prstamo hipotecario) o una inversin (como un plan de ahorro mensual). Los argumentos tasa y nper se deben calcular con los perodos de pago expresados en las mismas unidades. Por ejemplo, si tasa se calcula en meses, nper tambin se debe calcular en meses.
En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como cheques de dividendos) se representan con nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Inters para calcular qu parte de un pago representa los intereses cuando todos los pagos tienen el mismo valor. Se proporcionan la tasa de inters por perodo ( APR / 12), el perodo de pago para el cual se desea obtener la parte correspondiente a los intereses ( Period), el nmero total de pagos (TotPmts), el valor actual o capital del prstamo ( PVal), el valor futuro del prstamo (FVal) y un nmero que indica si el pago vence al principio o al final del perodo de pago ( PayType). Dim FVal, Fmt, PVal, APR, TotPmts, PayType Dim Period, IntPmt, TotInt, Msg Const ENDPERIOD = 0, BEGINPERIOD = 1 FVal = 0 ' Usually 0 for a loan. ' Define money format.
Fmt = "###,###,##0.00"
PVal = InputBox("How much do you want to borrow?") APR = InputBox("What is the annual percentage rate " & _ "of your loan?") If APR > 1 Then APR = APR / 100 ' Ensure proper form.
TotPmts = InputBox("How many monthly payments?") PayType = MsgBox("Do you make payments at " & _ "the end of the month?", vbYesNo)
IntPmt = IPmt(APR / 12, Period, TotPmts, _ -PVal, FVal, PayType) TotInt = TotInt + IntPmt Next Period
Msg = "You'll pay a total of " & Format(TotInt, Fmt) Msg = Msg & " in interest for this loan." MsgBox Msg ' Display results.
TIR (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la tasa interna de retorno para una serie de flujos de caja peridicos (pagos y cobros).
Sintaxis
TIR(valores(), [estimacin ] )
valores()
estimacin
Comentarios
La tasa interna de retorno es la tasa de inters recibida por una inversin formada por pagos y cobros que se producen a intervalos peridicos.
La funcin TIR utiliza el orden de los valores de la matriz para interpretar el orden de los pagos y cobros. Asegrese de especificar los valores de los pagos y cobros en el orden correcto. El flujo de caja de cada perodo no tiene que ser fijo, como es el caso de una anualidad.
El valor de TIR se calcula por iteracin. Empezando por el valor de estimacin, TIR recorre el clculo hasta que obtenga un resultado con una precisin del 0,00001 por ciento. Si TIR no encuentra ningn resultado despus de veinte intentos, se genera un error.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, la funcin TIR devuelve la tasa interna de retorno de una serie de cinco flujos de caja incluidos en la matriz Values(). El primer elemento de la matriz es un flujo de caja negativo que representa los costos de inicio de una empresa. Los restantes cuatro flujos de caja representan flujos de caja positivos para los cuatro aos subsiguientes. Guess es la tasa interna de retorno estimada. Dim Guess, Fmt, RetRate, Msg Static Values(5) As Double Guess = .1 Fmt = "#0.00" ' Set up array.
' Guess starts at 10 percent. ' Define percentage format. ' Business start-up costs.
Values(0) = -70000
' Positive cash flows reflecting income for ' four successive years. Values(1) = 22000 : Values(2) = 25000 Values(3) = 28000 : Values(4) = 31000
Msg = "The internal rate of return for these " & _ "five cash flows is " Msg = Msg & Format(RetRate, Fmt) & " percent." MsgBox Msg ' Display internal return rate.
TIRM (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la tasa interna de retorno modificada para una serie de flujos de caja peridicos (pagos y cobros).
Sintaxis
valores()
tasa_financiamiento tasa_reinversin
Comentarios
La tasa interna de retorno modificada es la tasa interna de retorno cuando los pagos y cobros se financian a tasas diferentes. La funcin TIRM tiene en cuenta tanto el costo de la inversin ( tasa_financiamiento) como la tasa de inters recibida por la reinversin de efectivo ( tasa_reinversin).
Los argumentos tasa_financiamiento y tasa_reinversin son porcentajes que se expresan como valores decimales. Por ejemplo, 12 por ciento se expresa como 0,12.
La funcin TIRM utiliza el orden de los valores en la matriz para interpretar el orden de los pagos y cobros. Asegrese de especificar los valores de los pagos y cobros en el orden correcto.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin TIRM para que se devuelva la tasa interna de retorno modificada para una serie de flujos de caja de la matriz Values().LoanAPR representa el inters de financiamiento e InvAPR representa la tasa de inters recibida por la reinversin. Dim LoanAPR, InvAPR, Fmt, RetRate, Msg Static Values(5) As Double LoanAPR = .1 InvAPR = .12 Fmt = "#0.00" ' Loan rate. ' Reinvestment rate. ' Define money format. ' Business start-up costs. ' Set up array.
Values(0) = -70000
' Positive cash flows reflecting income ' for four successive years. Values(1) = 22000 : Values(2) = 25000 Values(3) = 28000 : Values(4) = 31000
Msg = "The modified internal rate of return " & _ "for these five cash flows is" Msg = Msg & Format(Abs(RetRate) * 100, Fmt) & "%." ' Display internal return rate. MsgBox Msg
NPer (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el nmero de perodos de una anualidad basndose en pagos fijos peridicos y una tasa de inters fija. Sintaxis NPer(tasa, pago, va, [vf ], [tipo ] ) La sintaxis de la funcin NPer tiene estos argumentos:
Argumento Descripcin Requerido. Valor de tipo Double que especifica la tasa de inters por perodo. Por ejemplo, si obtiene un prstamo para un automvil a una tasa de inters anual del 10 por ciento y realiza pagos mensuales, la tasa por perodo es de 0,1/12 0,0083. Requerido. Valor de tipo Double que especifica el pago que se debe realizar en cada perodo. Los pagos suelen contener el capital y los intereses que no cambian durante la anualidad. Requerido. Valor de tipo Double que especifica el valor actual, o valor a fecha de hoy, de una serie de futuros pagos o cobros. Por ejemplo, al pedir dinero prestado para comprar un automvil, el importe del prstamo es el valor actual para el prestamista de los pagos mensuales que se van a realizar. Opcional. Valor de tipo Variant que especifica el valor futuro o saldo en efectivo deseado tras realizar el pago final. Por ejemplo, el valor futuro de un prstamo es de 0 $ porque es el valor tras el pago final. Sin embargo, si se desea ahorrar 50.000 $ durante 18 aos para la educacin de un hijo, el valor futuro ser de 50.000 $. Si se omite, se supone que el valor es 0. Opcional. Valor de tipo Variant que especifica cundo se deben realizar los pagos. Utilice 0 si los pagos se deben realizar al final del perodo de pago 1 si se deben abonar al principio del perodo. Si se omite, se supone que el valor es 0.
tasa
pago
va
vf
tipo
Comentarios Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un perodo de tiempo. Una anualidad puede ser un prstamo (como un prstamo hipotecario) o una inversin (como un plan de ahorro mensual). En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como los cheques de dividendos) se representan con nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En este ejemplo, se utiliza la funcin NPer para que se devuelve el nmero de perodos en los que deben realizarse los pagos para saldar un prstamo cuyo importe se incluye en PVal. Se proporcionan tambin la tasa de inters por perodo (APR / 12), el pago (Payment), el valor futuro del prstamo (FVal) y un nmero que indica si el pago vence al comienzo o al final del perodo de pago ( PayType). Dim FVal, PVal, APR, Payment, PayType, TotPmts ' When payments are made. Const ENDPERIOD = 0, BEGINPERIOD = 1
FVal = 0
PVal = InputBox("How much do you want to borrow?") APR = InputBox("What is the annual percentage " & _ "rate of your loan?") If APR > 1 Then APR = APR / 100 ' Ensure proper form. Payment = InputBox("How much do you " & _ "want to pay each month?") PayType = MsgBox("Do you make payments " & _ "at the end of month?", vbYesNo)
MsgBox "It will take you " & TotPmts & _ " months to pay off your loan."
VNA (funcin) Mostrar todo Devuelve un valor de tipo Double que especifica el valor neto actual de una inversin basndose en una serie de flujos de caja peridicos (pagos y cobros) y una tasa de descuento.
Sintaxis
VNA(tasa, valores())
tasa
valores()
Comentarios
El valor neto actual de una inversin es el valor actual de una futura serie de pagos y cobros.
La funcin VNA utiliza el orden de los valores en la matriz para interpretar el orden de los pagos y cobros. Asegrese de especificar los valores de los pagos y cobros en el orden correcto.
La inversin VNA comienza un perodo anterior a la fecha del primer valor de flujo de caja y termina con el ltimo valor de flujo de caja de la matriz.
El clculo del valor neto actual se basa en los futuros flujos de caja. Si el primer flujo de caja se produce al comienzo del primer perodo, se ha de agregar el primer valor al valor devuelto por VNA y no debe incluirse en los valores de flujo de caja de valores( ).
La funcin VNA es similar a la funcin VA (valor actual), excepto en que la funcin VA permite que los flujos de caja comiencen al final o al principio de un perodo. A diferencia de los valores de flujo de caja variables de VNA, los flujos de caja de VA deben ser fijos a lo largo de toda la inversin.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin VNA para que se devuelva el valor neto actual de una serie de flujos de caja incluidos en la matriz Values().RetRate representa la tasa interna de retorno fija. Dim Fmt, Guess, RetRate, NetPVal, Msg Static Values(5) As Double Fmt = "###,##0.00" Guess = .1 ' Set up array.
' Guess starts at 10 percent. ' Set fixed internal rate. ' Business start-up costs.
' Positive cash flows reflecting income ' for four successive years. Values(1) = 22000 : Values(2) = 25000 Values(3) = 28000 : Values(4) = 31000
Msg = "The net present value " & _ "of these cash flows is " Msg = Msg & Format(NetPVal, Fmt) & "."
Pago (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el pago de una anualidad basndose en pagos fijos peridicos y una tasa de inters fija. Sintaxis Pago(tasa, nper, va, [vf ], [tipo ] ) La sintaxis de la funcin Pago tiene estos argumentos:
Argumento Descripcin Requerido. Valor de tipo Double que especifica la tasa de inters por perodo. Por ejemplo, si obtiene un prstamo para un automvil a una tasa de inters anual del 10 por ciento y realiza pagos mensuales, la tasa por perodo es de 0,1/12 0,0083. Requerido. Valor de tipo Integer que especifica el nmero total de perodos de pago de la anualidad. Por ejemplo, si realiza pagos mensuales para el prstamo de un automvil de cuatro aos, el prstamo tiene un total de 4 x 12 ( 48) perodos de pago. Requerido. Valor de tipo Double que especifica el valor actual (o suma global) de una serie de pagos que se abonarn en el futuro. Por ejemplo, al pedir dinero prestado para comprar un automvil, el importe del prstamo es el valor actual para el prestamista de los pagos mensuales que se vayan a abonar. Opcional. Valor de tipo Variant que especifica el valor futuro o saldo en efectivo deseado tras realizar el pago final. Por ejemplo, el valor futuro de un prstamo es de 0 $ porque es el valor tras el pago final. Sin embargo, si se desea ahorrar 50.000 $ durante 18 aos para la educacin de un hijo, el valor futuro ser de 50.000 $. Si se omite, se supone que el valor es 0. Opcional. Valor de tipo Variant que especifica cundo se deben realizar los pagos. Utilice 0 si los pagos se deben realizar al final del perodo de pago 1 si se deben abonar al principio del perodo. Si se omite, se supone que el valor es 0.
tasa
nper
va
vf
tipo
Comentarios
Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un perodo de tiempo. Una anualidad puede ser un prstamo (como un prstamo hipotecario) o una inversin (como un plan de ahorro mensual). Los argumentos tasa y nper se deben calcular con los perodos de pago expresados en las mismas unidades. Por ejemplo, si tasa se calcula en meses, nper tambin se debe calcular en meses.
En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como cheques de dividendos) se representan con nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En este ejemplo, se utiliza la funcin Pago para que se devuelva el pago mensual de un prstamo a lo largo de un perodo fijo. Se proporcionan la tasa de inters por perodo (APR / 12), el nmero total de pagos (TotPmts), el valor actual o capital del prstamo ( PVal), el valor futuro del prstamo (FVal) y un nmero que indica si el pago vence al comienzo o al final del perodo de pago (PayType). Dim Fmt, FVal, PVal, APR, TotPmts, PayType, Payment
PVal = InputBox("How much do you want to borrow?") APR = InputBox("What is the annual " & _ "percentage rate of your loan?") If APR > 1 Then APR = APR / 100 ' Ensure proper form. TotPmts = InputBox("How many monthly " & _ "payments will you make?") PayType = MsgBox("Do you make payments " & _ "at the end of month?", vbYesNo)
MsgBox "Your payment will be " & _ Format(Payment, Fmt) & " per month."
PPago (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el pago de capital durante un perodo determinado de una anualidad basndose en pagos peridicos fijos y una tasa de inters fija.
Sintaxis
tasa
per nper
va
vf
tipo
Comentarios
Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un perodo de tiempo. Una anualidad puede ser un prstamo (como un prstamo hipotecario) o una inversin (como un plan de ahorro mensual).
Los argumentos tasa y nper se deben calcular con los perodos de pago expresados en las mismas unidades. Por ejemplo, si tasa se calcula en meses, nper tambin se debe calcular en meses.
En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como cheques de dividendos) se representan con nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin PPago para calcular qu parte de un pago para un perodo determinado representa el capital cuando todos los pagos tienen el mismo valor. Se proporcionan la tasa de inters por perodo (APR / 12), el perodo de pago para el cual se desea obtener la parte correspondiente al capital (Period), el nmero total de pagos (TotPmts), el valor actual o capital del prstamo (PVal), el valor futuro del prstamo (FVal) y un nmero que indica si el pago vence al principio o al final del perodo de pago ( PayType). Dim NL, TB, Fmt, FVal, PVal, APR, TotPmts, PayType, Payment, Msg, MakeChart, Period, P, I Const ENDPERIOD = 0, BEGINPERIOD = 1 NL = Chr(13) & Chr(10) TB = Chr(9) ' When payments are made.
PVal = InputBox("How much do you want to borrow?") APR = InputBox("What is the annual percentage rate of your loan?") If APR > 1 Then APR = APR / 100 ' Ensure proper form.
TotPmts = InputBox("How many monthly payments do you have to make?") PayType = MsgBox("Do you make payments at the end of month?", vbYesNo) If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD Payment = Abs(-Pmt(APR / 12, TotPmts, PVal, FVal, PayType)) Msg = "Your monthly payment is " & Format(Payment, Fmt) & ". " Msg = Msg & "Would you like a breakdown of your principal and " Msg = Msg & "interest per period?"
If TotPmts > 12 Then MsgBox "Only first year will be shown." Msg = "Month Payment Principal Interest" & NL
For Period = 1 To TotPmts If Period > 12 Then Exit For ' Show only first 12.
P = PPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType) P = (Int((P + .005) * 100) / 100) I = Payment - P I = (Int((I + .005) * 100) / 100) ' Round interest. ' Round principal.
Msg = Msg & Period & TB & Format(Payment, Fmt) Msg = Msg & TB & Format(P, Fmt) & TB & Format(I, Fmt) & NL Next Period MsgBox Msg End If ' Display amortization table.
VA (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el valor actual de una anualidad basndose en los pagos peridicos fijos que se van a realizar en el futuro y una tasa de inters fija.
Sintaxis
Argumento
Descripcin Requerido. Valor de tipo Double que especifica la tasa de inters por perodo. Por ejemplo, si obtiene un prstamo para un automvil a una tasa de inters anual del 10 por ciento y realiza pagos mensuales, la tasa por perodo es de 0,1/12 0,0083. Requerido. Valor de tipo Integer que especifica el nmero total de perodos de pago de la anualidad. Por ejemplo, si realiza pagos mensuales para el prstamo de un automvil de cuatro aos, el prstamo tiene un total de 4 x 12 ( 48) perodos de pago. Requerido. Valor de tipo Double que especifica el pago que se debe realizar en cada perodo. Los pagos suelen contener el capital y los intereses que no cambian durante la anualidad. Opcional. Valor de tipo Variant que especifica el valor futuro o saldo en efectivo deseado tras realizar el pago final. Por ejemplo, el valor futuro de un prstamo es de 0 $ porque es el valor tras el pago final. Sin embargo, si se desea ahorrar 50.000 $ durante 18 aos para la educacin de un hijo, el valor futuro ser de 50.000 $. Si se omite, se supone que el valor es 0. Opcional. Valor de tipo Variant que especifica cundo se deben realizar los pagos. Utilice 0 si los pagos se deben realizar al final del perodo de pago 1 si se deben abonar al principio del perodo. Si se omite, se supone que el valor es 0.
tasa
nper
pago
vf
tipo
Comentarios
Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un perodo de tiempo. Una anualidad puede ser un prstamo (como un prstamo hipotecario) o una inversin (como un plan de ahorro mensual).
Los argumentos tasa y nper se deben calcular con los perodos de pago expresados en las mismas unidades. Por ejemplo, si tasa se calcula en meses, nper tambin se debe calcular en meses.
En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como cheques de dividendos) se representan con nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, la funcin VA devuelve el valor actual de una anualidad de $1.000.000 que proporcionar $50.000 al ao durante los prximos 20 aos. Se proporcionan la tasa de inters anual prevista ( APR), el nmero total de pagos (TotPmts), el importe de cada pago (YrIncome), el valor futuro total de la inversin (FVal) y un nmero que indica si los pagos vencen al comienzo o al final del perodo de pago ( PayType). Observe que YrIncome es un nmero negativo ya que representa el importe desembolsada cada ao. Dim Fmt, APR, TotPmts, YrIncome, FVal, PayType, PVal Const ENDPERIOD = 0, BEGINPERIOD = 1
' Define money format. ' Annual percentage rate. ' Total number of payments. ' Yearly income. ' Future value.
MsgBox "The present value is " & Format(PVal, Fmt) & "."
Tasa (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la tasa de inters por perodo de una anualidad. Sintaxis Tasa(nper, pago, va, [vf ], [tipo ], [estimacin ] ) La sintaxis de la funcin Tasa consta de los siguientes argumentos:
Argumento Descripcin Requerido. Valor de tipo Double que especifica el nmero total de perodos de pago de la anualidad. Por ejemplo, si realiza pagos mensuales para el prstamo de un automvil de cuatro aos, el prstamo tiene un total de 4 x 12 ( 48) perodos de pago. Requerido. Valor de tipo Double que especifica el pago que se debe realizar en cada perodo. Los pagos suelen contener el capital y los intereses que no cambian durante la anualidad. Requerido. Valor de tipo Double que especifica el valor actual, o valor a fecha de hoy, de una serie de futuros pagos o cobros. Por ejemplo, al pedir dinero prestado para comprar un automvil, el importe del prstamo es el valor actual para el prestamista de los pagos mensuales que se van a realizar. Opcional. Valor de tipo Variant que especifica el valor futuro o saldo en efectivo deseado tras realizar el pago final. Por ejemplo, el valor futuro de un prstamo es de 0 $ porque es el valor tras el pago final. Sin embargo, si se desea ahorrar 50.000 $ durante 18 aos para la educacin de un hijo, el valor futuro ser de 50.000 $. Si se omite, se supone que el valor es 0. Opcional. Valor de tipo Variant que especifica cundo se deben realizar los pagos. Utilice 0 si los pagos se deben realizar al final del perodo de pago 1 si se deben abonar al principio del perodo. Si se omite, se supone que el valor es 0. Opcional. Valor de tipo Variant que especifica el valor que se calcula que sea devuelto por Tasa. Si se omite, estimacin tiene el valor 0,1 (10 por ciento).
nper
pago
va
vf
tipo
estimacin
Comentarios Una anualidad es una serie de pagos fijos en efectivo realizados a lo largo de un perodo de tiempo. Una anualidad puede ser un prstamo (como un prstamo hipotecario) o una inversin (como un plan de ahorro mensual). En todos los argumentos, los importes desembolsados (como los depsitos en una cuenta de ahorro) se representan con nmeros negativos; los importes cobrados (como los cheques de dividendos) se representan con nmeros positivos. Tasa se calcula por iteracin. Al comenzar por el valor de estimacin, Tasa repetir el clculo hasta que el resultado tenga una exactitud del 0,00001 por ciento. Si Tasa no logra un resultado tras 20 intentos, se produce un error. Si la estimacin es de un 10 por ciento y Tasa genera un error, pruebe otro valor para estimacin.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En este ejemplo, se utiliza la funcin Tasa para calcular la tasa de inters de un prstamo dados el nmero total de pagos (TotPmts), el importe de los pagos (Payment), el valor actual o capital del prstamo (PVal), el valor futuro del prstamo (FVal), un nmero que indica si los pagos vencen al comienzo o al final del perodo de pago (PayType) y una aproximacin de la tasa de inters prevista (Guess). Dim Fmt, FVal, Guess, PVal Dim Payment, TotPmts, PayType, APR ' When payments are made. Const ENDPERIOD = 0, BEGINPERIOD = 1
PVal = InputBox("How much did you borrow?") Payment = InputBox("What's your monthly payment?") TotPmts = InputBox("How many monthly payments do " & _ "you have to make?") PayType = MsgBox("Do you make payments at the end " & _ "of the month?", vbYesNo)
APR = (Rate(TotPmts, -Payment, PVal, _ FVal, PayType, Guess) * 12) * 100 MsgBox "Your interest rate is " & _ Format(CInt(APR), Fmt) & " percent."
SLN (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la depreciacin por mtodo directo de un bien en un nico perodo.
Sintaxis
Comentarios
El perodo de depreciacin debe expresarse en la misma unidad que el argumento vida. Todos los argumentos deben ser nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin SLN para que se devuelva la depreciacin por mtodo directo de un bien en un nico perodo, dados el costo inicial del bien ( InitCost), el valor residual al final de la vida til del bien (SalvageVal) y la vida til total del bien expresada en aos (LifeTime).
Dim Fmt, InitCost, SalvageVal Dim MonthLife, LifeTime, PDepr Const YEARMONTHS = 12 Fmt = "###,##0.00" ' Number of months in a year. ' Define money format.
InitCost = InputBox("What's the initial cost " & _ "of the asset?") SalvageVal = InputBox("What's the asset's value " & _ "at the end of its useful life?") MonthLife = InputBox("What's the asset's useful " & _ "life in months?") ' Ensure period is >= 1 year. Do While MonthLife < YEARMONTHS MsgBox "Asset life must be a year or more." MonthLife = InputBox("What's the asset's " & _ "useful life in months?") Loop ' Convert months to years. LifeTime = MonthLife / YEARMONTHS If LifeTime <> Int(MonthLife / YEARMONTHS) Then ' Round up to nearest year. LifeTime = Int(LifeTime + 1) End If PDepr = SLN(InitCost, SalvageVal, LifeTime) MsgBox "The depreciation is " & _ Format(PDepr, Fmt) & " per year."
SYD (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la depreciacin por mtodo de anualidades de un bien durante un perodo especfico.
Sintaxis
Comentarios
Los argumentos vida y perodo deben expresarse en las mismas unidades. Por ejemplo, si vida se expresa en meses, perodo tambin debe expresarse en meses. Todos los argumentos deben ser nmeros positivos.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin SYD para que se devuelva la depreciacin de un bien durante un perodo especificado dados el costo inicial del bien ( InitCost), el valor residual al final de la vida til del bien (SalvageVal) y la vida til total del bien expresada en aos ( LifeTime). El perodo, expresado en aos, para el cual se calcula la depreciacin es PDepr.
Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, PDepr Const YEARMONTHS = 12 Fmt = "###,##0.00" ' Number of months in a year. ' Define money format.
InitCost = InputBox("What's the initial cost of the asset?") SalvageVal = InputBox("What's the asset's value at the end of its life?") MonthLife = InputBox("What's the asset's useful life in months?") Do While MonthLife < YEARMONTHS ' Ensure period is >= 1 year.
MsgBox "Asset life must be a year or more." MonthLife = InputBox("What's the asset's useful life in months?") Loop LifeTime = MonthLife / YEARMONTHS ' Convert months to years.
If LifeTime <> Int(MonthLife / YEARMONTHS) Then LifeTime = Int(LifeTime + 1) End If DepYear = CInt(InputBox("For which year do you want depreciation?")) Do While DepYear < 1 Or DepYear > LifeTime MsgBox "You must enter at least 1 but not more than " & LifeTime DepYear = CInt(InputBox("For what year do you want depreciation?")) Loop PDepr = SYD(InitCost, SalvageVal, LifeTime, DepYear) MsgBox "The depreciation for year " & DepYear & " is " & Format(PDepr, Fmt) & "." ' Round up to nearest year.
Inspeccin
Entorno (funcin)
Entorno (funcin, Environ)
Devuelve el valor String asociado a una variable de entorno del sistema operativo. No est disponible en Macintosh.
Sintaxis
cadenaent nmero
Comentarios
Si cadenaent no se encuentra en la tabla de cadenas de entorno, se devuelve una cadena de longitud cero (""). De lo contrario, Entorno devuelve el texto asignado a la cadenaent especificada; es decir, el texto que sigue al signo igual (=) en la tabla de cadenas de entorno de esa variable de entorno.
Si se especifica nmero, se devuelve la cadena que ocupa dicha posicin numrica en la tabla de cadenas de entorno. En este caso, Entorno devuelve todo el texto, incluida cadenaent. Si no hay cadena de entorno en la posicin especificada, Entorno devuelve una cadena de longitud cero.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Entorno para proporcionar el nmero de entrada y la longitud de la instruccin PATH de la tabla de cadenas de entorno. No est disponible en Macintosh. Dim EnvString, Indx, Msg, PathLen Indx = 1 Do ' Get environment variable. EnvString = Environ(Indx) ' Check PATH entry. If Left(EnvString, 5) = "PATH=" Then ' Get length. PathLen = Len(Environ("PATH")) Msg = "PATH entry = " & Indx & " and length = " _ & PathLen Exit Do Else ' Not PATH entry, so increment. Indx = Indx + 1 End If Loop Until EnvString = "" If PathLen > 0 Then ' Display message. MsgBox Msg Else MsgBox "No PATH environment variable exists." End If ' Initialize index to 1. ' Declare variables.
ObtenerValores (funcin)
GetAllSettings (funcin)
Mostrar todo Devuelve una lista de configuraciones clave y sus respectivos valores (creados originalmente con SaveSetting) desde una entrada de una aplicacin en el Registro de Windows o desde informacin (en Macintosh) del archivo de inicializacin de la aplicacin.
Sintaxis
GetAllSettings(nombreaplic, seccin)
nombreaplic
seccin
Comentarios
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza primero la instruccin SaveSetting para crear entradas en el Registro de Windows para la aplicacin especificada como nombreaplic y, a continuacin, se utiliza la funcin ObtenerValores
para mostrar los valores. Observe que los nombres de la aplicacin y de la seccin no pueden recuperarse en ObtenerValores. Finalmente, la instruccin DeleteSetting quita las entradas de la aplicacin. ' Variant to hold 2-dimensional array returned by GetAllSettings ' Integer to hold counter. Dim MySettings As Variant, intSettings As Integer ' Place some settings in the registry. SaveSetting appname := "MyApp", section := "Startup", _ key := "Top", setting := 75 SaveSetting "MyApp","Startup", "Left", 50 ' Retrieve the settings. MySettings = GetAllSettings(appname := "MyApp", section := "Startup") For intSettings = LBound(MySettings, 1) To UBound(MySettings, 1) Debug.Print MySettings(intSettings, 0), MySettings(intSettings, 1) Next intSettings DeleteSetting "MyApp", "Startup"
ObtenerValor (funcin)
ObtenerValor (funcin, GetSetting)
Mostrar todo Devuelve un valor de configuracin clave desde una entrada de una aplicacin en el registro de Windows o informacin (en Macintosh) del archivo de inicializacin de la aplicacin. Sintaxis GetSetting(nombreaplic, seccin, clave [, predeterminado ] ) La sintaxis de la funcin ObtenerValor (GetSetting) tiene los siguientes argumentos:
Argumento
Descripcin Requerido. ">Expresin de cadena que contiene el nombre de la aplicacin o proyecto cuyas configuraciones clave se solicitan. En Macintosh, es el nombre de archivo del archivo de inicializacin de la carpeta Preferencias de la carpeta Sistema. Requerido. Expresin de cadena que contiene el nombre de la seccin donde se encuentra la configuracin clave. Requerido. Expresin de cadena que contiene el nombre de la configuracin clave que hay que devolver. Opcional. Expresin que contiene el valor que hay que devolver si no se ha establecido valor alguno en la configuracin clave. Si se omite, se supone que predeterminado es una cadena de longitud cero ("").
nombreaplic
seccin
clave predeterminado
Comentarios Si alguno de los elementos especificados en los argumentos de ObtenerValor no existe, ObtenerValor devuelve el valor de predeterminado.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En este ejemplo se utiliza primero la instruccin SaveSetting para realizar entradas en el Registro de Windows (o archivo .ini en las plataformas Windows de 16 bits) para la aplicacin que se especifica en nombreaplic y, a continuacin, se utiliza la funcin ObtenerValor para mostrar uno de los valores. Dado que se ha especificado el argumento predeterminado, se garantiza que se devuelve algn valor. Tenga en cuenta que los nombres de seccin no se pueden recuperar con ObtenerValor. Finalmente la instruccin DeleteSetting elimina todas las entradas de la aplicacin. ' Variant to hold 2-dimensional array returned ' by GetSetting. Dim MySettings As Variant ' Place some settings in the registry. SaveSetting "MyApp","Startup", "Top", 75 SaveSetting "MyApp","Startup", "Left", 50 Debug.Print GetSetting(appname := "MyApp", _ section := "Startup", _ key := "Left", default := "25") DeleteSetting "MyApp", "Startup"
IsArray (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si una variable es una matriz.
Sintaxis
IsArray(nombrevar)
Comentarios
IsArray devuelve Verdadero si la variable es una matriz; de lo contrario, devuelve Falso.IsArray es especialmente til con valores de tipo Variant que contienen matrices.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin IsArray para comprobar si una variable es una matriz. ' Declare array variables. Dim MyArray(1 To 5) As Integer, YourArray, MyCheck
' Use Array function. ' Returns True. ' Returns True.
EsFecha (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si una expresin puede convertirse en una fecha.
Sintaxis
EsFecha(expresin)
El argumento expresin requerido es un valor de tipo Variant que contiene una expresin de fecha o una ">expresin de cadena que se reconoce como fecha u hora.
Comentarios
EsFecha devuelve Verdadero si la expresin es una fecha o es reconocible como una fecha vlida. De lo contrario, devuelve Falso. En Microsoft Windows, el intervalo de fechas vlidas es del 1 de enero de 100 d.c. al 31 de diciembre de 9999 d.c.; el intervalo vara de un sistema operativo a otro.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin EsFecha para determinar si una expresin se puede convertir en una fecha. Dim MyDate, YourDate, NoDate, MyCheck
EsVaco (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si una variable se ha inicializado.
Sintaxis
EsVaco(expresin)
El argumento expresin requerido es un valor de tipo Variant que contiene una expresin numrica o expresin de cadena. Sin embargo, dado que EsVaco se utiliza para determinar si se han inicializado variables individuales, el argumento expresin suele ser un solo nombre de variable.
Comentarios
EsVaco devuelve Verdadero si la variable no se ha inicializado o se ha establecido explcitamente en Vaco; en caso contrario, devuelve Falso. Devuelve siempre Falso si el argumento expresin contiene varias variables. EsVaco slo devuelve informacin significativa para los valores de tipo Variant.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin EsVaco para determinar si se ha inicializado una variable. Dim MyVar, MyCheck MyCheck = IsEmpty(MyVar) ' Returns True.
MyVar = Null
MyCheck = IsEmpty(MyVar)
MyVar = Empty
MyCheck = IsEmpty(MyVar)
EsError (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si una expresin> es un valor de error.
Sintaxis
EsError(expresin)
Comentarios
Los valores de error se crean convirtiendo nmeros reales en valores de error mediante la funcin CVErr. La funcin EsError se utiliza para determinar si una expresin numrica representa un error. EsError devuelve Verdadero si el argumento expresin indica un error; en caso contrario, devuelve Falso.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin EsError para comprobar si una expresin numrica es un valor de error. Se utiliza la funcin CVErr para devolver un valor de error de tipo Variant de una funcin definida por el usuario. Supongamos que UserFunction es una funcin definida por el usuario que devuelve un valor de error; por ejemplo un valor devuelto asignado con la instruccin UserFunction = CVErr(32767), donde 32767 es un nmero definido por el usuario. Dim ReturnVal, MyCheck ReturnVal = UserFunction() MyCheck = IsError(ReturnVal) ' Returns True.
IsMissing (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si se ha pasado un argumento Variant opcional a un procedimiento.
Sintaxis
IsMissing(nombrearg)
Comentarios
Utilice la funcin IsMissing para detectar si se han proporcionado argumentos Variant opcionales al llamar a un procedimiento. IsMissing devuelve Verdadero si no se ha pasado ningn valor para el argumento especificado; de lo contrario, devuelve Falso. Si IsMissing devuelve Verdadero para un argumento, el uso del argumento que falta en otro cdigo puede causar un error definido por el usuario. Si IsMissing se utiliza en un argumento MatrizPar, siempre devuelve Falso. Para detectar un argumento MatrizPar vaco, compruebe si el lmite superior de la matriz es menor que el inferior.
NOTA
IsMissing no funciona en tipos de datos sencillos (como Integer o Double) porque, a diferencia de
los tipos de datos Variant, no proporcionan bits de identificador "falta". Como consecuencia, la sintaxis de los argumentos opcionales escritos permite especificar un valor predeterminado. Si se omite el argumento cuando se llama al procedimiento, el argumento tendr este valor predeterminado, como en el ejemplo siguiente:
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. Sub MySub(Optional MyVar As String = "specialvalue") If MyVar = "specialvalue" Then ' MyVar was omitted. Else ... End Sub
En muchos casos, se puede omitir totalmente la prueba If MyVar equiparando el valor predeterminado al valor que debe contener MyVar si el usuario lo omite al llamar a la funcin. De este modo, el cdigo ser ms conciso y ms eficaz.
Ejemplo
En este ejemplo se utiliza la funcin IsMissing para comprobar si se ha pasado un argumento opcional a un procedimiento definido por el usuario. Observe que los argumentos opcionales pueden tener ahora valores predeterminados y tipos que no sean Variant. Dim ReturnValue ' The following statements call the user-defined ' function procedure. ReturnValue = ReturnTwice() ReturnValue = ReturnTwice(2) ' Returns Null. ' Returns 4.
' Function procedure definition. Function ReturnTwice(Optional A) If IsMissing(A) Then ' If argument is missing, return a Null. ReturnTwice = Null Else ' If argument is present, return twice the value. ReturnTwice = A * 2 End If End Function
EsNulo (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si una expresin contiene datos no vlidos (Nulo).
Sintaxis
EsNulo(expresin)
El argumento expresin requerido es un valor de tipo Variant que contiene una expresin numrica o expresin de cadena.
Comentarios
EsNulo devuelve Verdadero si el valor de expresin es Nulo; en caso contrario, EsNulo devuelve Falso. Si expresin consta de ms de una variable, Nulo en cualquier variable constituyente hace que se devuelva Verdadero para toda la expresin.
El valor Nulo indica que Variant no contiene datos vlidos. Nulo no es lo mismo que Vaco, que indica que una variable an no se ha inicializado. Tampoco es lo mismo que una cadena de longitud cero (""), a la que a veces se hace referencia como cadena nula.
IMPORTANTE
Utilice la funcin EsNulo para determinar si una expresin contiene un valor Nulo. Las
expresiones de las que se espera que se evalen como Verdadero en algunas circunstancias, como If Var
= Null e If Var <> Null, tienen siempre el valor Falso, ya que cualquier expresin que contenga un valor
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin EsNulo para determinar si una variable contiene un valor Nulo.
EsNum (funcin)
Mostrar todo Devuelve un valor de tipo Boolean que indica si una expresin se puede evaluar como un nmero.
Sintaxis
EsNum(expresin)
El argumento expresin requerido es un valor de tipo Variant que contiene una expresin numrica o expresin de cadena.
Comentarios
EsNum devuelve Verdadero si la expresin completa se reconoce como un nmero; en caso contrario, devuelve Falso.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin EsNum para determinar si una variable se puede evaluar como un nmero. Dim MyVar, MyCheck MyVar = "53" ' Assign value. ' Returns True.
MyCheck = IsNumeric(MyVar)
MyVar = "459.95"
MyCheck = IsNumeric(MyVar)
MyCheck = IsNumeric(MyVar)
IsObject (funcin) Mostrar todo Devuelve un valor de tipo Boolean que indica si un identificador (Visual Basic) representa una variable de objeto.
Sintaxis
IsObject(identificador)
Comentarios
IsObject es til nicamente para determinar si un valor Variant es de VarType vbObject. Podra ser as si Variant hace realmente referencia (o ha hecho referencia) a un objeto o si contiene Nada.
IsObject devuelve Verdadero si identificador es una variable declarada con tipo de objeto o cualquier tipo de clase vlido, o bien, si identificador es un valor Variant de VarType vbObject o un objeto definido por el
usuario; en caso contrario, devuelve Falso.IsObject devuelve Verdadero aunque la variable est establecida en Nada.
Utilice la intercepcin de errores para asegurarse de que una referencia de objeto es vlida.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin IsObject para determinar si un identificador representa una variable de objeto. MyObject y YourObject son variables de objeto del mismo tipo. Son nombres genricos utilizados nicamente a ttulo ilustrativo. ' Declare variables. Dim MyInt As Integer, YourObject, MyCheck Dim MyObject As Object Set YourObject = MyObject ' Assign an object reference. ' Returns True.
TypeName (funcin)
Mostrar todo Devuelve una cadena que proporciona informacin sobre una variable.
Sintaxis
TypeName(nombrevar)
El argumento nombrevar requerido es un valor de tipo Variant que contiene cualquier variable, excepto las variables de un tipo definido por el usuario.
Comentarios
La cadena devuelta por TypeName puede ser cualquiera de las que figuran a continuacin:
Cadena devuelta Tipo de objeto Byte Integer Long Single Double Currency Decimal Date String Boolean Error Vaco Nulo Objeto Desconocido Nada Variable Objeto cuyo tipo es tipoDeObjeto Valor de byte Entero Entero largo Nmero de punto flotante de precisin simple Nmero de punto flotante de precisin doble Valor de moneda Valor decimal Valor de fecha Cadena Valor booleano Valor de error Sin inicializar Sin datos vlidos Objeto Objeto cuyo tipo se desconoce Variable de objeto que no hace referencia a ningn objeto
Si nombrevar es una matriz, la cadena devuelta puede ser cualquiera de las posibles cadenas devueltas (o Variant) seguida de parntesis vacos. Por ejemplo, si nombrevar es una matriz de enteros, TypeName devuelve "Integer()".
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin TypeName para que se devuelva informacin sobre una variable. Dim NullVar, MyType, StrVar As String Dim IntVar As Integer, CurVar As Currency Dim ArrayVar (1 To 5) As Integer NullVar = Null ' Assign Null value. ' Returns "String". ' Returns "Integer". ' Returns "Currency". ' Returns "Null". ' Returns "Integer()".
MyType = TypeName(StrVar) MyType = TypeName(IntVar) MyType = TypeName(CurVar) MyType = TypeName(NullVar) MyType = TypeName(ArrayVar)
VarType (funcin)
Mostrar todo Devuelve un valor de tipo Integer que indica el subtipo de una variable.
Sintaxis
VarType(nombrevar)
El argumento nombrevar requerido es un valor de tipo Variant que contiene cualquier variable, excepto las variables de un tipo definido por el usuario.
Valores devueltos
Constante vbEmpty vbNull vbInteger vbLong vbSingle vbDouble vbCurrency vbDate vbString vbObject vbError vbBoolean vbVariant vbDataObject vbDecimal vbByte vbUserDefinedType vbArray Valor 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 17 36 8192 Descripcin Vaco (sin inicializar) Nulo (datos no vlidos) Entero Entero largo Nmero de punto flotante de precisin simple Nmero de punto flotante de precisin doble Valor de moneda Valor de fecha Cadena Objeto Valor de error Valor booleano Valor de tipo Variant (se utiliza slo con matrices de valores de tipo Variant) Objeto de acceso a datos Valor decimal Valor de byte Valores de tipo Variant que contienen tipos definidos por el usuario Matriz
NOTA
Estas constantes las especifica Visual Basic para Aplicaciones. Los nombres se pueden utilizar en
Comentarios
La funcin VarType nunca devuelve, por s misma, el valor de vbArray. Siempre se agrega a algn otro valor para indicar una matriz de un tipo particular. La constante vbVariant slo se devuelve junto con vbArray para
indicar que el argumento de la funcin VarType es una matriz de tipo Variant. Por ejemplo, el valor devuelto para una matriz de enteros se calcula vbInteger + vbArray, o bien, 8194. Si un objeto tiene una propiedad predeterminada, VarType (objeto) devuelve el tipo de la propiedad predeterminada del objeto.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin VarType para determinar el subtipo de una variable. Dim IntVar, StrVar, DateVar, MyCheck ' Initialize variables. IntVar = 459 StrVar = "Hello World" DateVar = #2/12/69# MyCheck = VarType(IntVar) MyCheck = VarType(DateVar) MyCheck = VarType(StrVar) ' Returns 2. ' Returns 7. ' Returns 8.
Matemticas
Abs (funcin)
Mostrar todo Devuelve un valor del mismo tipo que se le ha pasado, especificando el valor absoluto de un nmero.
Sintaxis
Abs(nmero)
El argumento nmero necesario puede ser cualquier expresin numrica vlida. Si nmero contiene un valor Null, se devuelve Null; si es una variable no inicializada, devuelve cero.
Comentarios
El valor absoluto de un nmero es una magnitud sin signo. Por ejemplo, tanto ABS(-1) y ABS(1) devuelven 1.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Abs para calcular el valor absoluto de un nmero. Dim MyNumber MyNumber = Abs(50.3) MyNumber = Abs(-50.3) ' Returns 50.3. ' Returns 50.3.
ArcTg (funcin)
Atn (funcin)
Mostrar todo Devuelve un valor Double que especifica el arco tangente de un nmero.
Sintaxis
Atn(nmero)
El argumento nmero requerido es un tipo de dato Double o cualquier expresin numrica vlida.
Comentarios
La funcin Atn toma la relacin de dos lados de un tringulo rectngulo ( nmero) y devuelve el ngulo correspondiente en radianes. La relacin es la longitud del lado opuesto del ngulo dividida por la longitud del lado adyacente al ngulo.
Para convertir grados a radianes, se multiplican los grados por pi/180. Para convertir radianes a grados, se multiplican los radianes por 180/pi.
NOTA
Atn es la funcin trigonomtrica inversa de Tan, que toma un ngulo como argumento y devuelve la
relacin de dos lados de un tringulo rectngulo. No hay que confundir Atn con la cotangente, que es la inversa simple de una tangente (1/tangente).
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
Cos (funcin)
Mostrar todo Devuelve un tipo de dato Double que especifica el coseno de un ngulo.
Sintaxis
Cos(nmero)
El argumento nmero requerido es un valor de tipo Double o cualquier expresin numrica vlida que exprese un ngulo en radianes.
Comentarios
La funcin Cos toma un ngulo y devuelve la relacin de dos lados de un tringulo rectngulo. La relacin es la longitud del lado adyacente al ngulo dividida por la longitud de la hipotenusa.
Para convertir grados a radianes, se multiplican los grados por pi/180. Para convertir radianes a grados, se multiplican los radianes por 180/pi.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Cos para devolver el coseno de un ngulo. Dim MyAngle, MySecant MyAngle = 1.3 ' Define angle in radians. ' Calculate secant.
MySecant = 1 / Cos(MyAngle)
Exp (funcin)
Mostrar todo Devuelve un tipo de dato Double que especifica e (base de logaritmos neperianos) elevada a una potencia.
Sintaxis
Exp(nmero)
El argumento nmero requerido es un tipo de dato Double o cualquier expresin numrica vlida.
Comentarios
NOTA
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Exp para devolver la constante e elevada a una potencia. Dim MyAngle, MyHSin ' Define angle in radians. MyAngle = 1.3 ' Calculate hyperbolic sine. MyHSin = (Exp(MyAngle) - Exp(-1 * MyAngle)) / 2
Sintaxis
Ent(nmero)
SinDec(nmero)
El argumento nmero requerido es un valor de tipo Double o cualquier expresin numrica vlida. Si nmero contiene un valor Nulo, se devuelve Nulo.
Comentarios
Tanto Ent como SinDec eliminan la parte fraccionaria de nmero y devuelven el valor entero resultante.
La diferencia entre Ent y SinDec es que si nmero es negativo, Ent devuelve el primer entero negativo menor o igual que nmero, mientras que SinDec devuelve el primer entero negativo mayor o igual que nmero. Por ejemplo, Ent convierte -8,4 en -9 y SinDec convierte -8,4 en -8.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se muestra cmo las funciones Ent y SinDec devuelven la parte entera de los nmeros. En el caso de un argumento de nmero negativo, la funcin Ent devuelve el primer entero negativo menor o igual que el nmero; la funcin SinDec devuelve el primer entero negativo mayor o igual que el nmero.
Dim MyNumber MyNumber = Int(99.8) MyNumber = Fix(99.2) ' Returns 99. ' Returns 99.
Ln (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el logaritmo natural de un nmero.
Sintaxis
Ln(nmero)
El argumento nmero requerido es un valor de tipo Double o cualquier expresin numrica vlida que sea mayor que cero.
Comentarios
Se pueden calcular logaritmos de base n para cualquier nmero x dividiendo el logaritmo natural de x entre el logaritmo natural de n, tal y como se indica a continuacin:
En el ejemplo siguiente se muestra una funcin personalizada que calcula logaritmos de base 10:
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. Static Function Log10(X) Log10 = Log(X) / Log(10#) End Function
Ejemplo
En este ejemplo se utiliza la funcin Ln para que se devuelva el logaritmo natural de un nmero. Dim MyAngle, MyLog ' Define angle in radians. MyAngle = 1.3 ' Calculate inverse hyperbolic sine. MyLog = Log(MyAngle + Sqr(MyAngle * MyAngle + 1))
NmAleat (funcin)
Mostrar todo Devuelve un valor de tipo Single que contiene un nmero aleatorio.
Sintaxis
NmAleat[(nmero)]
El argumento nmero opcional es un valor de tipo Single o cualquier expresin numrica vlida.
Valores devueltos
Si el valor de nmero es Menor que cero Mayor que cero Igual que cero No se proporciona. NmAleat genera Cada vez el mismo nmero, utilizando nmero como inicializacin. El siguiente nmero aleatorio en la secuencia. El ltimo nmero generado. El siguiente nmero aleatorio en la secuencia.
Comentarios
La funcin NmAleat devuelve un valor menor que 1 pero mayor o igual que cero.
Para una inicializacin dada, se genera la misma secuencia de nmeros porque cada llamada sucesiva a la funcin NmAleat utiliza el nmero anterior como inicializacin para el siguiente nmero de la secuencia.
Antes de llamar a la funcin NmAleat, utilice la instruccin Randomize sin argumento para inicializar el generador de nmeros aleatorios con una inicializacin basada en el temporizador del sistema.
Para generar enteros aleatorios en un intervalo dado, utilice esta frmula: Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
Aqu, upperbound (lmite superior) es el nmero ms alto del intervalo y lowerbound (lmite inferior) es el nmero ms bajo del intervalo.
NOTA
Para repetir secuencias de nmeros aleatorios, llame a NmAleat con un argumento negativo
inmediatamente antes de utilizar Randomize con un argumento numrico. Al utilizar Randomize con el mismo valor de nmero, no se repetir la secuencia anterior.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin NmAleat para generar un valor entero aleatorio del 1 al 6. Dim MyValue ' Generate random value between 1 and 6. MyValue = Int((6 * Rnd) + 1)
Redondear (funcin)
Mostrar todo Devuelve un nmero redondeado a un nmero especificado de posiciones decimales.
Sintaxis
Redondear(expresin, [nmposicionesdecimales ] )
expresin nmposicionesdecimales
Signo (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que indica el signo de un nmero.
Sintaxis
Signo(nmero)
Valores devueltos
Si el valor de nmero es Mayor que cero Igual que cero Menor que cero Signo devuelve 1 0 -1
Comentarios
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas. En este ejemplo se utiliza la funcin Signo para determinar el signo de un nmero. Dim MyVar1, MyVar2, MyVar3, MySign MyVar1 = 12: MyVar2 = -2.4: MyVar3 = 0 MySign = Sgn(MyVar1) MySign = Sgn(MyVar2) MySign = Sgn(MyVar3) ' Returns 1. ' Returns -1. ' Returns 0.
Sen (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica el seno de un ngulo.
Sintaxis
Sen(nmero)
El argumento nmero requerido es un valor de tipo Double o cualquier expresin numrica vlida que exprese un ngulo en radianes.
Comentarios
La funcin Sen toma un ngulo y devuelve la relacin de dos lados de un tringulo rectngulo. La relacin es la longitud del lado opuesto al ngulo dividida por la longitud de la hipotenusa.
Para convertir grados a radianes, se multiplican los grados por pi/180. Para convertir radianes a grados, se multiplican los radianes por 180/pi.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Sen para que se devuelva el seno de un ngulo. Dim MyAngle, MyCosecant MyAngle = 1.3 ' Define angle in radians. ' Calculate cosecant.
MyCosecant = 1 / Sin(MyAngle)
Raz2 (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la raz cuadrada de un nmero.
Sintaxis
Raz2(nmero)
El argumento nmero requerido es un valor de tipo Double o cualquier expresin numrica vlida que sea mayor o igual que cero.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Raz2 para calcular la raz cuadrada de un nmero. Dim MySqr MySqr = Sqr(4) MySqr = Sqr(23) MySqr = Sqr(0) MySqr = Sqr(-4) ' Returns 2. ' Returns 4.79583152331272. ' Returns 0. ' Generates a run-time error.
Tan (funcin)
Tg (funcin)
Mostrar todo Devuelve un valor de tipo Double que especifica la tangente de un ngulo.
Sintaxis
Tg(nmero)
El argumento nmero requerido es un valor de tipo Double o cualquier expresin numrica vlida que exprese un ngulo en radianes.
Comentarios
Tg toma un ngulo y devuelve la relacin de dos lados de un tringulo rectngulo. La relacin es la longitud del lado opuesto al ngulo dividida por la longitud del lado adyacente al ngulo.
Para convertir grados a radianes, se multiplican los grados por pi/180. Para convertir radianes a grados, se multiplican los radianes por 180/pi.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Tg para que se devuelva la tangente de un ngulo. Dim MyAngle, MyCotangent MyAngle = 1.3 ' Define angle in radians. ' Calculate cotangent.
MyCotangent = 1 / Tan(MyAngle)
Mensajes
CuadroEntr (funcin)
Mostrar todo Muestra una pregunta en un cuadro de dilogo, espera a que el usuario escriba texto o haga clic en un botn, y devuelve una cadena que contiene el contenido del cuadro de texto.
Sintaxis CuadroEntr(pregunta, [ttulo ], [predeterminado ], [posicX ], [posicY ], [archivoDeAyuda ], [contexto ] ) La sintaxis de la funcin CuadroEntr tiene estos argumentos:
Argumento Descripcin Requerido. Expresin de cadena que aparece como mensaje en el cuadro de dilogo. El argumento pregunta puede tener como mximo unos 1024 caracteres, segn el ancho de los caracteres utilizados. Si pregunta consta de varias lneas, puede separarlas con un carcter de retorno de carro (Car(13)), un carcter de avance de lnea (Car(10)), o bien, una combinacin de carcter de retorno y avance de lnea (Car(13) & Car(10)) entre cada lnea. Opcional. Expresin de cadena que se muestra en la barra de ttulo del cuadro de dilogo. Si se omite ttulo, aparece el nombre de la aplicacin en la barra de ttulos. Opcional. Expresin de cadena que se muestra en el cuadro de texto como respuesta predeterminada si no se proporciona ninguna otra entrada. Si se omite predeterminado, el cuadro de texto aparece vaco. Opcional. Expresin numrica que especifica, en twips, la distancia horizontal entre el borde izquierdo del cuadro de dilogo y el borde izquierdo de la pantalla. Si se omite posicX, el cuadro de dilogo se centra horizontalmente. Opcional. Expresin numrica que especifica, en twips, la distancia vertical entre el borde superior del cuadro de dilogo y la parte superior de la pantalla. Si se omite posicY, el cuadro de dilogo se coloca aproximadamente a un tercio hacia abajo en la pantalla. Opcional. Expresin de cadena que identifica el archivo de Ayuda que hay que utilizar para obtener ayuda contextual del cuadro de dilogo. Si se proporciona archivoDeAyuda, tambin se debe proporcionar contexto. Opcional. Expresin numrica que es el nmero de contexto de Ayuda asignado al tema correspondiente de la Ayuda por el autor del mismo. Si se proporciona contexto, tambin se debe proporcionar archivoDeAyuda.
pregunta
ttulo
predeterminado
posicX
posicY
archivoDeAyuda
contexto
Comentarios
Cuando se proporcionan archivoDeAyuda y contexto, el usuario puede presionar F1 (Windows) o AYUDA (Macintosh) para ver el tema de Ayuda correspondiente al contexto. Algunas aplicaciones host, por ejemplo, Microsoft Office Excel 2007, tambin agregan automticamente un botn de Ayuda al cuadro de dilogo. Si el
usuario hace clic en Aceptar o presiona ENTRAR, la funcin CuadroEntr devuelve el contenido del cuadro de texto. Si el usuario hace clic en Cancelar, la funcin devuelve una cadena de longitud cero ("").
NOTA
Para especificar ms argumentos que el primer argumento con nombre, debe utilizar CuadroEntr en
una expresin. Para omitir algunos argumentos posicionales, debe incluir el correspondiente delimitador de coma.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se muestran varias formas de usar la funcin CuadroEntr para pedir al usuario que especifique un valor. Si se omiten las posiciones x e y, se centra automticamente el cuadro de dilogo para los respectivos ejes. La variable MyValue contiene el valor especificado por el usuario si hace clic en Aceptar o presiona la tecla ENTRAR. Si el usuario hace clic en Cancelar, se devuelve una cadena de longitud cero. Dim Message, Title, Default, MyValue Message = "Enter a value between 1 and 3" Title = "InputBox Demo" Default = "1" ' Set title. ' Set prompt.
' Display message, title, and default value. MyValue = InputBox(Message, Title, Default)
' Use Helpfile and context. ' The Help button is added automatically. MyValue = InputBox(Message, Title,,,,"DEMO.HLP", 10)
' Display dialog box at position 100, 100. MyValue = InputBox(Message, Title, Default, 100, 100)
CuadroMsj (funcin)
Mostrar todo Muestra un mensaje en un cuadro de dilogo, espera a que el usuario haga clic en un botn y devuelve un valor de tipo Integer que indica el botn en el que ha hecho clic el usuario.
Sintaxis
pregunta
botones
ttulo
archivoDeAyuda
contexto
Valores
vbSystemModal
4096
El primer grupo de valores (de 0 a 5) describe el nmero y el tipo de botones que aparecen en el cuadro de dilogo. El segundo grupo (16, 32, 48, 64) describe el estilo de icono. El tercer grupo (0, 256, 512) determina qu botn es el predeterminado y el cuarto grupo (0, 4096) determina la modalidad del cuadro de mensaje. Cuando agregue nmeros para crear un valor final para el argumento botones, utilice solamente un nmero de cada grupo.
NOTA
Estas constantes las especifica Visual Basic para Aplicaciones. Como resultado, se pueden utilizar los
Valores devueltos
Constante vbOK vbCancel vbAbort vbRetry vbIgnore vbYes vbNo Valor 1 2 3 4 5 6 7 Descripcin Aceptar Cancelar Anular Reintentar Omitir S No
Comentarios
Cuando se proporcionan archivoDeAyuda y contexto, el usuario puede presionar F1 (Windows) o AYUDA (Macintosh) para ver el tema de Ayuda correspondiente al contexto. Algunas aplicaciones host, por ejemplo, Microsoft Office Excel 2007, tambin agregan automticamente un botn Ayuda al cuadro de dilogo.
Cuando el cuadro de dilogo muestra un botn Cancelar, presionar la tecla ESC tiene el mismo efecto que hacer clic en Cancelar. Si el cuadro de dilogo contiene un botn Ayuda, se proporciona Ayuda contextual para el cuadro de dilogo. Sin embargo, no se devuelve ningn valor hasta que se haga clic en uno de los dems botones.
NOTA
Para especificar ms argumentos que el primer argumento con nombre, debe utilizar CuadroMsj en
una expresin. Para omitir algunos argumentos posicionales, debe incluir el correspondiente delimitador de coma.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin CuadroMsj para mostrar un mensaje de error grave en un cuadro de dilogo con los botones S y No. El botn No se ha especificado como respuesta predeterminada. El valor devuelto por la funcin CuadroMsj depende del botn elegido por el usuario. En este ejemplo, se supone que
DEMO.HLP es un archivo de Ayuda que contiene un tema con un nmero de contexto de Ayuda igual a 1000.
Msg = "Do you want to continue?" Style = vbYesNo + vbCritical + vbDefaultButton2 Title = "MsgBox Demonstration" Help = "DEMO.HLP" Ctxt = 1000
Varios
CallByName (funcin)
Mostrar todo Ejecuta un mtodo de un objeto, o establece o devuelve una propiedad de un objeto.
Sintaxis
objeto procname
calltype
args()
Comentarios
La funcin CallByName se utiliza para obtener o establecer una propiedad, o para llamar a un mtodo en tiempo de ejecucin mediante un nombre de cadena.
En el ejemplo siguiente, la primera lnea utiliza CallByName para establecer la propiedad MousePointer de un cuadro de texto, la segunda lnea obtiene el valor de la propiedad MousePointer y la tercera lnea llama al mtodo Move para mover el cuadro de texto: CallByName Text1, "MousePointer", vbLet, vbCrosshair Result = CallByName (Text1, "MousePointer", vbGet) CallByName Text1, "Move", vbMethod, 100, 100
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin CallByName para llamar al mtodo Move de un botn de comando.
En el ejemplo tambin se utiliza un formulario (Form1) con un botn (Command1) y una etiqueta (Label1). Cuando se carga el formulario, la propiedad Caption de la etiqueta se establece en el nombre del mtodo al que se va a llamar, en este caso, "Move". Cuando se hace clic en el botn, la funcin CallByName llama al mtodo para cambiar la ubicacin del botn. Option Explicit Private Sub Form_Load() Label1.Caption = "Move" ' Name of Move method. End Sub
Private Sub Command1_Click() If Command1.Left <> 0 Then CallByName Command1, Label1.Caption, vbMethod, 0, 0 Else CallByName Command1, Label1.Caption, vbMethod, 500, 500 End If
IMEStatus (funcin)
Mostrar todo Devuelve un entero que especifica el modo actual del Editor de mtodos de entrada (IME) de Microsoft Windows; disponible solamente en las versiones de Asia Oriental.
Sintaxis
IMEStatus
Valores devueltos
Los valores devueltos para la configuracin regional japonesa son los siguientes:
Constante vbIMEModeNoControl vbIMEModeOn vbIMEModeOff vbIMEModeDisable vbIMEModeHiragana vbIMEModeKatakana vbIMEModeKatakanaHalf vbIMEModeAlphaFull vbIMEModeAlpha Valor 0 1 2 3 4 5 6 7 8 Descripcin No controle IME (predeterminado) IME activado IME desactivado IME deshabilitado Modo Hiragana de ancho completo Modo katakana de ancho completo Modo de ancho medio katakana Modo alfanumrico de ancho completo Modo alfanumrico de ancho medio
Los valores devueltos para la configuracin regional coreana son los siguientes:
Constante vbIMEModeNoControl vbIMEModeAlphaFull vbIMEModeAlpha vbIMEModeHangulFull vbIMEModeHangul Valor 0 7 8 9 10 Descripcin No controle IME (predeterminado) Modo alfanumrico de ancho completo Modo alfanumrico de ancho medio Modo hangul de ancho completo Modo de ancho medio hangul
Los valores devueltos para la configuracin regional china son los siguientes:
Constante vbIMEModeNoControl vbIMEModeOn vbIMEModeOff Valor 0 1 2 Descripcin No controle IME (predeterminado) IME activado IME desactivado
MacID (funcin)
Mostrar todo Se utiliza en los equipos Macintosh para convertir una constante de cuatro caracteres en un valor que puedan utilizar Dir, Kill, Shell y AppActivate.
Sintaxis
MacID(constante)
El argumento constante requerido se compone de cuatro caracteres que se utilizan para especificar un tipo de recurso, tipo de archivo, firma de aplicacin o evento de Apple; por ejemplo, TEXT, OBIN, "XLS5" para archivos de Excel ("XLS8" para Excel 97), "W6BN" para Microsoft Word ("W8BN" para Word 97), etc.
Comentarios
MacID se utiliza con Dir y Kill para especificar un tipo de archivo de Macintosh. Dado que Macintosh no admite * ni ? como caracteres comodn, se puede usar una constante de cuatro caracteres para identificar los grupos de archivos. Por ejemplo, la siguiente instruccin devuelve los archivos de texto de la actual carpeta: Dir("SomePath", MacID("TEXT"))
MacID se utiliza con Shell y AppActivate para especificar una aplicacin mediante la firma nica de la aplicacin.
MacScript (funcin)
Mostrar todo Ejecuta una secuencia de comandos AppleScript y devuelve un valor devuelto por la secuencia de comandos si lo hay.
Sintaxis
MacScript(secuencia de comandos)
El argumento secuencia de comandos es una expresin de cadena, que puede ser una serie de comandos AppleScript, el nombre de una secuencia de comandos AppleScript o de un archivo de secuencias de comandos.
Comentarios
Se pueden crear secuencias de comandos de varias lneas incrustando caracteres de retorno de carro (Car(13)).
Ejemplo
En este ejemplo, se utiliza la funcin MacScript para abrir el cuadro de dilogo Elegir archivo (cuadro de dilogo de archivo estndar de Macintosh). Se devuelve la ruta de acceso completa al archivo elegido por el usuario. Si procede, la especificacin de la ruta de acceso va precedida del tipo de archivo. ThePath$ = Macscript("ChooseFile")
QBColor (funcin)
Mostrar todo Devuelve un valor de tipo Long que representa el cdigo de color RGB correspondiente al nmero de color especificado.
Sintaxis
QBColor(color)
Valores
Comentarios
El argumento color representa los valores de color utilizados por las versiones anteriores de Basic (como Microsoft Visual Basic para MS-DOS y Basic Compiler). Comenzando por el byte menos significativo, el valor devuelto especifica los valores de rojo, verde y azul que se utilizan para configurar el color apropiado en el sistema RGB que utiliza Visual Basic para Aplicaciones.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin QBColor para cambiar la propiedad ColorDelFondo (BackColor) del formulario que se pasa como MyForm al color indicado por ColorCode.QBColor acepta valores enteros del 0 al 15.
MyForm.BackColor = QBColor(ColorCode)
End Sub
RGB (funcin)
Mostrar todo Devuelve un valor de tipo Long que representa un valor de color RGB.
Sintaxis
rojo
verde
azul
Comentarios
Los mtodos y propiedades de la aplicacin que aceptan una especificacin de color esperan que sta sea un nmero que representa un valor de color RGB. Un valor de color RGB especifica la intensidad relativa del rojo, verde y azul para que se muestre un color especfico.
Si el valor de cualquier argumento de RGB es mayor que 255, se da por supuesto que su valor es igual a 255.
Las siguientes listas recogen algunos colores estndar as como los valores de rojo, verde y azul que incluyen:
Color Negro Azul Verde Cian Rojo Magenta Amarillo Blanco Valor de rojo 0 0 0 0 255 255 255 255 Valor de verde 0 0 255 255 0 0 255 255 Valor de azul 0 255 0 255 0 255 0 255
Los valores de color RGB que devuelve esta funcin son incompatibles con los que utiliza el sistema operativo Macintosh. Se pueden utilizar en el contexto de aplicaciones de Microsoft para Macintosh, pero no deben utilizarse cuando se comunican cambios de color directamente al sistema operativo Macintosh.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se muestra cmo la funcin RGB devuelve un nmero entero que representa un valor de color RGB. Se utiliza para los mtodos y propiedades de la aplicacin que acepten una especificacin de color. El objeto MyObject y su propiedad se utilizan slo a ttulo ilustrativo. Si no existe MyObject o si no tiene una propiedad Color, se genera un error.
Dim RED, I, RGBValue, MyObject ' Return the value for Red. Red = RGB(255, 0, 0) ' Initialize offset. I = 75
Spc (funcin)
Mostrar todo Se utiliza con la instruccin Print # o el mtodo Print para colocar los resultados.
Sintaxis
Spc(n)
El argumento n requerido es el nmero de espacios que se van a insertar antes de mostrar o imprimir la siguiente expresin en una lista.
Comentarios
Si el valor de n es menor que el ancho de lnea de salida, la siguiente posicin de impresin sigue inmediatamente al nmero de espacios impresos. Si el valor de n es mayor que el ancho de lnea de salida, Spc calcula la siguiente posicin de impresin mediante esta frmula:
Por ejemplo, si la actual posicin de impresin es 24, el ancho de lnea de salida es 80 y se especifica Spc(90), la siguiente impresin comenzar en la posicin 34 (actual posicin de impresin + el resto de 90/80). Si la diferencia entre la actual posicin de impresin y el ancho de lnea de salida es menor que n (o bien, n Mod ancho), la funcin Spc salta al principio de la siguiente lnea y genera un nmero de espacios igual a n (ancho posicinDeImpresinActual).
NOTA
Asegrese de que las columnas de la tabla son lo bastante anchas para que quepan letras anchas.
Cuando se utiliza el mtodo Print con una fuente de espaciado proporcional, el ancho de los caracteres de espacio que se imprimen mediante la funcin Spc es siempre un promedio del ancho de todos los caracteres con el tamao de la fuente elegida. Sin embargo, no hay correlacin entre el nmero de caracteres impresos y el nmero de columnas de ancho fijo que ocupan esos caracteres. Por ejemplo, la mayscula W ocupa ms de una columna de ancho fijo y la minscula i ocupa menos de una columna de ancho fijo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Spc para colocar la salida en un archivo y en la ventana Inmediato. ' The Spc function can be used with ' the Print # statement. Open "TESTFILE" For Output As #1 ' Open file for output. Print #1, "10 spaces between here"; Spc(10); "and here." Close #1 ' Close file.
Con la siguiente instruccin, el texto se va a imprimir en la ventana Inmediato (mediante el mtodo Print), precedido de 30 espacios. Debug.Print Spc(30); "Thirty spaces later..."
Tab (funcin)
Mostrar todo Se utiliza con la instruccin Print # o el mtodo Print para colocar los resultados.
Sintaxis
Tab[(n)]
El argumento n opcional es el nmero de la columna a la que se va a mover antes de que se muestre o se imprima la siguiente expresin en una lista. Si se omite, Tab mueve el punto de insercin al comienzo de la siguiente zona de impresin. Esto permite utilizar Tab en lugar de una coma en las configuraciones locales donde se utiliza la coma como separador decimal.
Comentarios
Si la actual posicin de impresin en la actual lnea es mayor que n, Tab salta a la columna n en la siguiente lnea. Si n es menor que 1, Tab mueve la posicin de impresin a la columna 1. Si n es mayor que el ancho de lnea de salida, Tab calcula la siguiente posicin de impresin mediante esta frmula:
n Mod ancho
Por ejemplo, si el valor de ancho es 80 y se especifica Tab(90), la siguiente impresin comenzar en la columna 10 (el resto de 90/80). Si el valor de n es menor que la actual posicin de impresin, la impresin comenzar en la siguiente lnea en la posicin de impresin calculada. Si sta es mayor que la actual posicin de impresin, la impresin comenzar en la posicin de impresin calculada en la misma lnea.
La posicin de impresin situada ms a la izquierda en una lnea de salida es siempre 1. Cuando se utiliza la instruccin Print # para imprimir en archivos, la posicin de impresin ms a la derecha es el actual ancho del archivo de salida, que se puede configurar mediante la instruccin Width #.
NOTA
Asegrese de que las columnas de la tabla son lo bastante anchas para que quepan letras anchas.
Cuando se utiliza la funcin Tab con el mtodo Print, la superficie de impresin est dividida en columnas uniformes de ancho fijo. El ancho de cada columna es un promedio del ancho de todos los caracteres con el tamao de la fuente elegida. Sin embargo, no hay correlacin entre el nmero de caracteres impresos y el
nmero de columnas de ancho fijo que ocupan esos caracteres. Por ejemplo, la mayscula W ocupa ms de una columna de ancho fijo y la minscula i ocupa menos de una columna de ancho fijo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Tab para colocar la salida en un archivo y en la ventana Inmediato. ' The Tab function can be used ' with the Print # statement. Open "TESTFILE" For Output As #1 ' Open file for output. ' The second word prints at column 20. Print #1, "Hello"; Tab(20); "World." ' If the argument is omitted, cursor is moved ' to the next print zone. Print #1, "Hello"; Tab; "World" Close #1 ' Close file.
La funcin Tab tambin se puede utilizar con el mtodo Print. La siguiente instruccin imprime texto empezando en la columna 10. Debug.Print Tab(10); "10 columns from start."
Flujo de programas
Elegir (funcin)
Choose (funcin)
Mostrar todo Selecciona y devuelve un valor desde una lista de argumentos.
Sintaxis
ndice opcin
Comentarios
Choose devuelve un valor de una lista de opciones basado en el valor de ndice. Si ndice es 1, Choose devuelve la primera opcin de la lista; si ndice es 2, devuelve la segunda opcin, y as sucesivamente.
Puede utilizar Choose para buscar un valor en una lista de posibilidades. Por ejemplo, si ndice da como resultado 3 y opcin-1 = "uno", opcin-2 = "dos" y opcin-3 = "tres", Choose devuelve "tres". Esta capacidad es particularmente til si ndice representa el valor en un grupo de opciones.
Choose evala cada opcin de la lista, aunque slo devuelve una. Por esta razn, tenga cuidado con los efectos secundarios no deseados. Por ejemplo, si utiliza la funcin CuadroMsj como parte de una expresin en todas las opciones, se mostrar un cuadro de mensaje por cada opcin cuando se evala, aunque Choose devuelva nicamente el valor de una de ellas.
La funcin Choose devuelve un valor Null si ndice es menor que 1 o mayor que el nmero de opciones mostradas.
Si ndice no es un nmero entero, se redondea hasta el nmero entero ms prximo antes de evaluarse.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Choose para mostrar un nombre en respuesta a un ndice pasado al procedimiento en el parmetro Ind. Function GetChoice(Ind As Integer) GetChoice = Choose(Ind, "Speedy", "United", "Federal") End Function
DoEvents (funcin)
Mostrar todo Cede la ejecucin para que el sistema operativo pueda procesar otros eventos.
Sintaxis
DoEvents( )
Comentarios
La funcin DoEvents devuelve un Entero que representa el nmero de formularios abiertos en versiones independientes de Microsoft Visual Basic, como Visual Basic Professional Edition. DoEvents devuelve cero en todas las otras aplicaciones.
DoEvents pasa el control al sistema operativo. El control se devuelve despus de que el sistema operativo haya finalizado de procesar los eventos de la cola y todas las claves de la cola EnviarTeclas (SendKeys) se hayan enviado.
DoEvents resulta ms til para procesos sencillos como permitir a un usuario la cancelacin de un proceso cuando ya ha empezado, por ejemplo la bsqueda de un archivo. Para procesos de larga ejecucin, la cesin del procesador es mejor al utilizar un temporizador o delegar la tarea a un componente ActiveX EXE. En el ltimo caso, la tarea puede continuar de forma completamente independiente de la aplicacin y el sistema operativo se encarga de las tareas mltiples y el reparto del tiempo.
PRECAUCIN
de que el procedimiento no se vuelve a ejecutar desde una parte diferente del cdigo antes de que vuelva la primera llamada. Esto podra producir resultados impredecibles. Adems, no utilice DoEvents si es posible que otras aplicaciones interacten con el procedimiento de forma imprevista durante el tiempo en el que ha cedido el control.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin DoEvents para hacer que la ejecucin ceda al sistema operativo una vez cada 1.000 iteraciones del bucle. DoEvents devuelve el nmero de formularios de Visual Basic, pero slo cuando la aplicacin host es Visual Basic. ' Create a variable to hold number of ' Visual Basic forms loaded and visible. Dim I, OpenForms For I = 1 To 150000 ' Start loop. ' If loop has repeated ' 1000 times. OpenForms = DoEvents End If Next I ' Increment loop counter. ' Yield to operating system.
Silnm (funcin)
Mostrar todo Devuelve una de dos partes, dependiendo de la evaluacin de una expresin.
Puede usar Silnm siempre que pueda usar una expresin. Silnm tambin sirve para determinar si otra expresin es verdadera o falsa. Si la expresin es verdadera, Silnm devuelve un valor; si es falsa, Silnm devuelve otro. Puede especificar los valores que devuelve Silnm.
Comentarios
Silnm evala siempre parteverdadera y partefalsa, aunque slo devuelve una de ellas. Por este motivo, debera tener cuidado con los efectos secundarios no deseados. Por ejemplo, si la evaluacin de partefalsa tiene como resultado una divisin por error cero, se produce un error, aunque el valor de expresin sea Verdadero.
Ejemplos
Usar Silnm en un formulario o informe Supongamos que tiene una tabla Clientes que contiene un campo denominado ReginPas. En un formulario, desea indicar que el italiano es el primer idioma del contacto. Puede agregar un control y usar Silnm en la propiedad Origen del control (Control Source), por ejemplo:
Al abrir el formulario en la vista Formulario, el control muestra "Italiano" siempre que el valor ReginPas sea Italia y "Algn otro idioma" si ReginPas tiene cualquier otro valor.
Usar Silnm en expresiones complejas Puede utilizar cualquier expresin como parte de una instruccin Silnm. Tambin puede anidar expresiones Silnm, lo que le permite evaluar una serie de expresiones dependientes.
Por ejemplo, supongamos que trabaja en una biblioteca. La base de datos de la biblioteca tiene una tabla llamada Salidas que contiene un campo llamado Fecha de devolucin, que incluye la fecha en que se debe devolver un libro en particular. Puede crear una formulario que indique el estado de un elemento que haya salido en un control mediante la funcin Silnm en la propiedad Origen del control (Control Source) de dicho control, por ejemplo:
Al abrir el formulario en la vista Formulario, el control muestra "VENCIDO" si el valor de Fecha de devolucin es inferior a la fecha actual, "Se debe" si es igual a la fecha actual y "Por entregar" en el caso restante.
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza SiInm para evaluar el parmetro TestMe del procedimiento CheckIt y se devuelve la palabra "Large" si la cantidad es mayor que 1000; en caso contrario, se devuelve la palabra "Small". Function CheckIt (TestMe As Integer) CheckIt = IIf(TestMe > 1000, "Large", "Small") End Function
Conmutador (funcin)
Mostrar todo Evala una lista de expresiones y devuelve un valor de tipo Variant o una expresin asociada a la primera expresin de la lista que sea Verdadero.
expresin valor
Comentarios
La lista de argumentos de la funcin Conmutador consta de pares de expresiones y valores. Las expresiones se evalan de izquierda a derecha, y se devuelve el valor asociado a la primera expresin que sea Verdadero. Si los elementos no estn correctamente emparejados, se genera un error en tiempo de ejecucin. Por ejemplo, si expr-1 es Verdadero, Conmutador devuelve valor-1. Si expr-1 es Falso, pero expr-2 es Verdadero, Conmutador devuelve valor-2, y as sucesivamente.
La funcin Conmutador evala todas las expresiones, aunque solamente devuelva una de ellas. Por esta razn, tenga cuidado con los efectos secundarios no deseados. Por ejemplo, si la evaluacin de cualquier expresin tiene como resultado una divisin por error cero, se generar un error.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Conmutador para que se devuelva el nombre de un idioma que se corresponda con el nombre de una ciudad. Function MatchUp (CityName As String) Matchup = Switch(CityName = "London", "English", _ CityName = "Rome", "Italian", _ CityName = "Paris", "French") End Function
Texto
Formato (funcin)
Formato (funcin, Format)
Mostrar todo Devuelve un tipo de dato Variant (String) que contiene una expresin con formato conforme a las indicaciones incluidas en una expresin de formato.
Valores
El argumento formato puede usar varios valores, en funcin del tipo de datos del argumento expresin. Consulte los artculos que aparecen en la tabla siguiente para obtener ms informacin sobre expresiones de formato vlidas.
Para expresiones que usan este tipo de datos... De cualquier tipo Fecha/Hora Numrico Texto y memo S/No
Ver el artculo Format (propiedad) Format (propiedad) - Tipo de datos Fecha/Hora Format (propiedad) - Tipos de datos Numrico y Moneda Format (propiedad) - Tipos de datos Texto y Memo Format (propiedad) - Tipo de datos S/No
Comentarios
Para dar formato Nmeros Haga esto Utilice formatos numricos predefinidos con nombre o cree formatos numricos definidos por el usuario. Utilice formatos predefinidos de fecha y hora con nombre o cree formatos de fecha y hora definidos por el usuario. Utilice formatos de fecha y hora o formatos numricos.
Fechas y horas
Si intenta dar formato a un nmero sin especificar el argumento formato, Formato ofrece una funcionalidad similar a la de la funcin Cad (Str), aunque depender de la configuracin regional. Sin embargo, los nmeros positivos con formato de cadena que usan Formato no incluyen un espacio inicial reservado para el signo del valor, aquellos convertidos mediante Cad conservan el espacio inicial.
Si est dando formato a una cadena numrica no localizada, debera usar un formato numrico definido por el usuario para garantizar que obtiene el aspecto que desea.
NOTA
fecha, la expresin proporcionada debe ser gregoriana. Si el valor de la propiedad Calendario (Calendar) de Visual Basic es Hijri, la expresin proporcionada debe ser Hijri.
Si el calendario es gregoriano, el significado de los smbolos de la expresin formato no cambia. Si el calendario es Hijri, todos los smbolos de formato de fecha (por ejemplo, dddd, mmmm, yyyy) tienen el mismo significado pero se aplican al calendario Hijri. Los smbolos de formato se quedan en ingls. Los smbolos que presentan texto (por ejemplo, a.m. y p.m.) muestran la cadena (ingls o arbiga) asociada con dicho smbolo. El intervalo de determinados smbolos cambia cuando el calendario es Hijri.
Smbolo Intervalo 1-30 1-30 1-51 Muestra nombres de mes completos (los nombres de los meses Hijri no tienen abreviaturas). 1-355 100-9666
d dd ww mmm y yyyy
Ejemplos
Usar la funcin Formato en una expresin Puede usar Formato siempre que utilice expresiones. Por ejemplo, puede usarlo en una consulta como parte de un alias de campo o en la propiedad Origen del control (Control Source) de un cuadro de texto de un formulario o informe. En el siguiente ejemplo se muestra una expresin que se puede usar en la propiedad Filtro (Filter) de un informe para limitar el resultado a los registros de la semana anterior.
Formato([Fecha],"ww")=Formato(Ahora(),"ww")-1
En este ejemplo, el origen del registro del informe tiene un campo llamado Fecha que contiene la fecha en la que se modific cada registro en particular y que se usa en el informe. Al ejecutar el informe, sus resultados se filtran para mostrar slo aquellos registros en los que la semana para el valor del campo Fecha (Formato([Fecha],"ww")) es igual a la semana anterior (Formato(Ahora(),"ww")-1).
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se muestran distintos usos de la funcin Formato para dar formato a valores utilizando tanto formatos guardados como formatos definidos por el usuario. En el caso del separador de fechas ( /), separador de hora (:) y literal de a.m./p.m., el resultado con formato real mostrado por el sistema depende de la configuracin regional del equipo en el que se est ejecutando el cdigo. Cuando se muestran la fecha y la hora en el entorno de desarrollo, se utilizan los formatos de fecha y hora cortas de la configuracin regional del cdigo. Cuando se muestran en el cdigo en ejecucin, se utilizan los formatos de fecha y hora cortas de la configuracin regional del sistema, que puede ser diferente de la configuracin regional del cdigo. En este ejemplo, se supone que es ingls de EE.UU.
MyTime y MyDate se muestran en el entorno de desarrollo utilizando la configuracin de fecha y hora cortas del
sistema actual.
Dim MyTime, MyDate, MyStr MyTime = #17:04:23# MyDate = #January 27, 1993#
' Returns current system time in the system-defined long time format. MyStr = Format(Time, "Long Time")
' Returns current system date in the system-defined long date format. MyStr = Format(Date, "Long Date")
' Returns "17:4:23". ' Returns "05:04:23 PM". ' Returns "Wednesday,
MyStr = Format(MyTime, "hh:mm:ss AMPM") MyStr = Format(MyDate, "dddd, mmm d yyyy") ' Jan 27 1993".
' If format is not supplied, a string is returned. MyStr = Format(23) ' Returns "23".
' User-defined formats. MyStr = Format(5459.4, "##,##0.00") MyStr = Format(334.9, "###0.00") MyStr = Format(5, "0.00%") MyStr = Format("HELLO", "<") ' Returns "5,459.40". ' Returns "334.90".
' Returns "500.00%". ' Returns "hello". ' Returns "THIS IS IT".
En la versin 2.0 y anteriores de Microsoft Access, se poda utilizar la funcin Formato para devolver un valor para una cadena de longitud cero y otro para un valor Null. Por ejemplo, poda usar una expresin de formato como la siguiente con la funcin Formato para devolver mediante cdigo el valor apropiado de la cadena:
' Assign some value to varStrX and pass to Format function. varX = Format(varStrX, "@;ZLS;Null")
En las versiones 97 y posteriores de Microsoft Access, es necesario comprobar por separado la existencia del caso Null y luego devolver el valor apropiado basado en el resultado. Por ejemplo, puede utilizar la funcin SiInm (IIf) en una expresin con la funcin Formato como la siguiente: varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS")) Este cambio slo se aplica cuando se utiliza la funcin Formato para dar formato a una cadena, dependiendo de si es una cadena de longitud cero o un valor Null. Otras expresiones de formato utilizadas con la funcin Formato continan funcionando como en las versiones anteriores.
Si se convierte una base de datos desde Microsoft Access versin 2.0 o anterior a Microsoft Access 2002 o posterior, deber cambiar el cdigo para comprobar por separado la existencia del caso Null.
EnCad (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Long) que especifica la posicin de la primera aparicin de una cadena dentro de otra.
Argumento
Descripcin Opcional. Expresin numrica que establece la posicin inicial para cada bsqueda. Si se omite, la bsqueda comienza en la posicin del primer carcter. Si iniciar contiene el valor Nulo, se produce un error. El argumento iniciar es necesario si se especifica comparar. Requerido. Expresin de cadena que se busca. Requerido. Expresin de cadena buscada. Opcional. Especifica el tipo de comparacin de cadenas. Si comparar es un valor Nulo, se produce un error. Si se omite comparar, el valor de Option Compare determina el tipo de comparacin. Especifique un LCID (identificador de configuracin regional) para utilizar reglas especficas de la configuracin local en la comparacin.
iniciar
Valores
Valores devueltos
Si EnCad devuelve 0 Nulo
cadena1 tiene una longitud cero cadena1 es Nulo cadena2 tiene una longitud cero cadena2 es Nulo cadena2 no se ha encontrado cadena2 se encuentra en cadena1 iniciar > cadena2
iniciar
Nulo 0 Posicin en la que se encuentra la coincidencia 0
Comentarios
La funcin EnCad se utiliza con datos byte incluidos en una cadena. En lugar de devolver la posicin del carcter de la primera aparicin de una cadena en otra, EnCad devuelve la posicin de byte.
Ejemplos
Usar la funcin EnCad en una expresin Puede usar EnCad siempre que pueda utilizar expresiones. Por ejemplo, si desea encontrar la posicin del primer punto ( .) en un campo que contiene direcciones IP (llamado Direccin IP), puede utilizar EnCad para buscarla, por ejemplo:
EnCad(1,[Direccin IP],".")
La funcin EnCad examina cada valor del campo Direccin IP y devuelve la posicin del primer punto. Por lo tanto, si la primera parte de la direccin IP es 10., la funcin devuelve el valor 3.
Puede luego utilizar otras funciones, que operen en el resultado de la funcin EnCad, para extraer la parte de la direccin IP que precede al primer punto, por ejemplo:
En este ejemplo, EnCad(1,[Direccin IP],".") devuelve la posicin del primer punto. Si se resta 1, se determina cuntos caracteres preceden al primer punto, en este caso, 2. La funcin Izq extrae luego estos caracteres de la parte izquierda del campo Direccin IP y devuelve el valor 10.
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin EnCad para devolver la posicin de la primera aparicin de una cadena dentro de otra.
Dim SearchString, SearchChar, MyPos SearchString ="XXpXXpXXPXXP" SearchChar = "P" ' String to search in.
' A textual comparison starting at position 4. Returns 6. MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9. MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default ' (last argument is omitted). MyPos = Instr(SearchString, SearchChar) ' Returns 9.
' Returns 0.
InStrRev (funcin) Mostrar todo Devuelve la posicin de una aparicin de una cadena en otra, desde el final de la cadena.
Sintaxis
comparar
Valores
Valores devueltos
Si
comprobarcadena tiene una longitud cero comprobarcadena es Nulo coincidircadena tiene una longitud cero coincidircadena es Nulo coincidircadena no se ha encontrado coincidircadena se ha encontrado en comprobarcadena iniciar > Longitud(coincidircadena)
iniciar
Nulo 0 Posicin en la que se encuentra la coincidencia 0
Comentarios
Tenga en cuenta que la sintaxis de la funcin InStrRev no es la misma que la sintaxis de la funcin EnCad.
Mins (funcin)
Mostrar todo Devuelve una cadena que se ha convertido en minsculas.
Sintaxis
Mins(cadena) El argumento cadena requerido es cualquier expresin de cadena vlida. Si cadena contiene el valor Nulo, se devuelve Nulo. Comentarios Slo las letras maysculas se convierten en minsculas; todas las letras minsculas y los caracteres que no sean letras se mantendrn sin cambios.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione
Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Mins para devolver una versin en minsculas de una cadena. Dim UpperCase, LowerCase Uppercase = "Hello World 1234" ' String to convert.
Izq. (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que contiene un nmero especfico de caracteres a partir del lado izquierdo de una cadena.
Sintaxis
Izq(cadena, longitud)
cadena
longitud
Comentarios
NOTA
Utilice la funcin IzqB con datos byte incluidos en una cadena. En vez de especificar el nmero de
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Izq para devolver un nmero especificado de los caracteres situados ms a la izquierda de una cadena. Dim AnyString, MyStr AnyString = "Hello World" MyStr = Left(AnyString, 1) MyStr = Left(AnyString, 7) MyStr = Left(AnyString, 20) ' Define string. ' Returns "H". ' Returns "Hello W". ' Returns "Hello World".
Longitud (funcin)
Mostrar todo Devuelve un valor de tipo Long que contiene el nmero de caracteres de una cadena o el nmero de bytes necesarios para almacenar una variable.
Sintaxis
Longitud(cadena | nombrevar)
cadena nombrevar
Comentarios
Se debe especificar uno (y solamente uno) de los dos posibles argumentos. Con tipos definidos por el usuario, Longitud devuelve el tamao tal y como se va a escribir en el archivo.
NOTA
Utilice la funcin LongitudB con datos byte incluidos en una cadena, como en los lenguajes de
juegos de caracteres de doble byte (DBCS). En vez de devolver el nmero de caracteres de una cadena, LongitudB devuelve el nmero de bytes utilizados para representar dicha cadena. Con tipos definidos por el usuario, LongitudB devuelve el tamao en memoria, incluido cualquier relleno entre los elementos. Para obtener un cdigo de ejemplo en el que se utiliza LongitudB, vea el segundo ejemplo en el tema de ejemplo.
NOTA
Es posible que Longitud no pueda determinar el nmero real de bytes de almacenamiento necesarios
cuando se utiliza con cadenas de longitud variable en tipos de datos definidos por el usuario.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el primer ejemplo se utiliza Longitud para devolver el nmero de caracteres de una cadena o el nmero de bytes necesarios para almacenar una variable. El bloque Type...End Type que define CustomerRecord debe ir precedido de la palabra clave Private si aparece en un mdulo de clase. En un mdulo estndar, una instruccin Type puede ser Public. Type CustomerRecord ID As Integer ' Define user-defined type. ' Place this definition in a ' standard module.
MyString = "Hello World" MyLen = Len(MyInt) MyLen = Len(Customer) MyLen = Len(MyString) MyLen = Len(MyCur)
' Returns 2. ' Returns 42. ' Returns 11. ' Returns 8.
En el segundo ejemplo se utiliza LongitudB y una funcin definida por el usuario (LenMbcs) para devolver el nmero de caracteres de byte de una cadena si se utiliza ANSI para representar la cadena. Function LenMbcs (ByVal str as String) LenMbcs = LenB(StrConv(str, vbFromUnicode)) End Function
Dim MyString, MyLen MyString = "ABc" ' Where "A" and "B" are DBCS and "c" is SBCS. MyLen = Len(MyString) ' Returns 3 - 3 characters in the string. MyLen = LenB(MyString) ' Returns 6 - 6 bytes used for Unicode. MyLen = LenMbcs(MyString) ' Returns 5 - 5 bytes used for ANSI.
Sintaxis
RecortarIzq(cadena)
RecortarDer(cadena)
Recortar(cadena)
El argumento cadena requerido es cualquier ">expresin de cadena vlida. Si cadena contiene el valor Nulo, se devuelve Nulo.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utilizan la funcin RecortarIzq para quitar los espacios iniciales y la funcin RecortarDer para quitar los espacios finales de una variable de cadena. Se utiliza la funcin Recortar para quitar ambos tipos de espacios. Dim MyString, TrimString
MyString = "
<-Trim->
"
TrimString = RTrim(MyString)
<-Trim->".
' Using the Trim function alone ' achieves the same result. TrimString = Trim(MyString) ' TrimString = "<-Trim->".
Medio (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que contiene un nmero especificado de caracteres de una cadena.
Sintaxis
cadena
iniciar
longitud
Comentarios
NOTA
Utilice la funcin MedioB con datos byte incluidos en una cadena, como en los lenguajes de juegos
de caracteres de doble byte. En vez de especificar el nmero de caracteres, los argumentos especifican los nmeros de bytes. Para obtener un cdigo de ejemplo en el que se utiliza MedioB, vea el segundo ejemplo del tema de ayuda.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En el primer ejemplo, se utiliza la funcin Medio para que se devuelva un nmero especificado de caracteres de una cadena. Dim MyString, FirstWord, LastWord, MidWords
' Returns "Mid". ' Returns "Demo". ' Returns "Function Demo".
En el segundo ejemplo, se utilizan la funcin MedioB y una funcin definida por el usuario (MidMbcs) para que tambin se devuelvan caracteres de la cadena. La diferencia reside en que, en este caso, la cadena de entrada est escrita en ANSI y la longitud se expresa en bytes. Function MidMbcs(ByVal str as String, start, length) MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), _ start, length), vbUnicode) End Function
Dim MyString
MyString = "AbCdEfG" ' Where "A", "C", "E", and "G" are DBCS and "b", "d", ' and "f" are SBCS.
Reemplazar (funcin)
Mostrar todo Devuelve un valor de tipo String donde la subcadena especificada se ha reemplazado el nmero de veces especificado con otra subcadena.
Sintaxis
contar
comparar
Valores
Valores devueltos
expresin tiene longitud cero expresin es Nulo buscar tiene longitud cero reemplazar tiene longitud cero iniciar > Longitud(expresin) contar es 0
Comentarios
El valor devuelto de la funcin Reemplazar es una cadena, con las sustituciones realizadas, que comienza en la posicin especificada por iniciar y concluye al final de la cadena expresin. No es una copia de la cadena original del principio al fin.
Der (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que contiene un nmero especificado de caracteres del lado derecho de una cadena.
Sintaxis
Der(cadena, longitud)
Argumento
Descripcin Requerido. ">Expresin de cadena cuyos caracteres situados ms a la derecha se devuelven. Si cadena contiene un valor Nulo, se devuelve Nulo. Requerido. Valor de tipo Variant (Long). Expresin numrica que indica cuntos caracteres se van a devolver. Si su valor es 0, se devuelve una cadena de longitud cero (""). Si su valor es mayor o igual que el nmero de caracteres de cadena, se devuelve toda la cadena.
cadena
longitud
Comentarios
NOTA
Utilice la funcin DerB con datos byte incluidos en una cadena. En vez de especificar el nmero de
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Der para devolver un nmero especificado de los caracteres situados ms a la derecha de una cadena. Dim AnyString, MyStr AnyString = "Hello World" MyStr = Right(AnyString, 1) MyStr = Right(AnyString, 6) MyStr = Right(AnyString, 20) ' Define string. ' Returns "d". ' Returns " World". ' Returns "Hello World".
Espacio (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que se compone del nmero especificado de espacios.
Sintaxis
Espacio(nmero)
Comentarios
La funcin Espacio es til para dar formato a los resultados y eliminar datos de cadenas de longitud fija.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Espacio para que se devuelva una cadena que consta de un nmero especificado de espacios. Dim MyString ' Returns a string with 10 spaces. MyString = Space(10)
' Insert 10 spaces between two strings. MyString = "Hello" & Space(10) & "World"
CompCadena (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que indica el resultado de una expresin de cadena.
Sintaxis
Valores
Valores devueltos
cadena1 es menor que cadena2 cadena1 es igual que cadena2 cadena1 es mayor que cadena2 cadena1 o cadena2 es Nulo
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin CompCadena para que se devuelvan los resultados de una comparacin de cadenas. Si el tercer argumento es 1, se realiza una comparacin textual; si el tercer argumento es 0 o se omite, se realiza una comparacin binaria. Dim MyStr1, MyStr2, MyComp MyStr1 = "ABCD": MyStr2 = "abcd" MyComp = StrComp(MyStr1, MyStr2, 1) MyComp = StrComp(MyStr1, MyStr2, 0) MyComp = StrComp(MyStr2, MyStr1) ' Define variables. ' Returns 0. ' Returns -1. ' Returns 1.
ConvCadena (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que se ha convertido segn lo especificado.
Sintaxis
cadena conversin
cdigo_idioma
Valores
vbFromUnicode
128
NOTA
Estas constantes las especifica Visual Basic para Aplicaciones (VBA). Como resultado, se pueden
utilizar en cualquier parte del cdigo en lugar de los valores reales. La mayora se puede combinar, como vbUpperCase + vbWide, excepto cuando se excluyen mutuamente, como vbUnicode + vbFromUnicode. Las constantes vbWide, vbNarrow, vbKatakana y vbHiragana generan errores en tiempo de ejecucin cuando se utilizan en configuraciones regionales en las que no se apliquen.
stos son los separadores de palabras vlidos para el uso adecuado de maysculas y minsculas: Nulo (Car$(0)), tabulacin horizontal (Car$(9)), avance de lnea (Car$(10)), tabulacin vertical (Car$(11)), alimentacin (Car$(12)), retorno de carro (Car$(13)), espacio (SBCS) (Car$(32)). El valor real de un espacio vara para DBCS segn el pas o la regin.
Comentarios
Cuando se convierte una matriz de bytes con formato ANSI en una cadena, se debe usar la funcin ConvCadena. Cuando se convierte esa matriz con formato Unicode, se debe utilizar una instruccin de asignacin.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin ConvCadena para convertir una cadena Unicode en una cadena ANSI. Dim i As Long Dim x() As Byte x = StrConv("ABCDEFG", vbFromUnicode) ' Convert string. For i = 0 To UBound(x) Debug.Print x(i) Next
Cadena (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que contiene una cadena de caracteres repetidos con la longitud especificada. Sintaxis Cadena(nmero, carcter) La sintaxis de la funcin Cadena tiene estos argumentos:
Argumento Descripcin Requerido. Valor de tipo Long. Longitud de la cadena que se va a devolver. Si nmero contiene Nulo, se devuelve Nulo. Requerido. Valor de tipo Variant.Cdigo de carcter que especifica el carcter o ">expresin de cadena cuyo primer carcter se utiliza para generar la cadena devuelta. Si carcter contiene Nulo, se devuelve Nulo.
nmero
carcter
Comentarios
Si se especifica un nmero para carcter mayor que 255, la funcin Cadena convierte el nmero en un cdigo de carcter vlido mediante la frmula: carcter Mod 256
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo se utiliza la funcin Cadena para que se devuelvan cadenas de caracteres repetidos con la longitud especificada. Dim MyString MyString = String(5, "*") MyString = String(5, 42) MyString = String(10, "ABC") ' Returns "*****" ' Returns "*****" ' Returns "AAAAAAAAAA"
StrReverse (funcin)
Devuelve una cadena en la que se ha invertido el orden de los caracteres de una cadena especificada.
Sintaxis
StrReverse(expresin)
El argumento expresin requerido es la cadena cuyos caracteres se van a invertir. Si expresin es una cadena de longitud cero (""), se devuelve una cadena de longitud cero. Si expresin es un valor Nulo, se genera un error.
Mays (funcin)
Mostrar todo Devuelve un valor de tipo Variant (String) que contiene la cadena especificada, convertida en maysculas.
Sintaxis
Mays(cadena)
El argumento cadena requerido es cualquier expresin de cadena vlida. Si cadena contiene el valor Nulo, se devuelve Nulo.
Comentarios
Slo las letras minsculas se convierten en maysculas; todas las letras maysculas y los caracteres que no sean letras se mantendrn sin cambios.
Ejemplo
NOTA
Los ejemplos que vienen a continuacin demuestran el uso de esta funcin en un mdulo de Visual
Basic para Aplicaciones (VBA). Para obtener informacin acerca de cmo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o ms trminos en el cuadro de bsquedas.
En este ejemplo, se utiliza la funcin Mays para que se devuelva una versin en maysculas de una cadena.
Dim LowerCase, UpperCase LowerCase = "Hello World 1234" UpperCase = UCase(LowerCase) ' Returns "HELLO WORLD 1234". ' String to convert.
Acciones de macro
Temas en "Acciones de macro" 71 elementos
Propiedades
Temas en "Propiedades" 83 elementos
About (propiedad)
ActiveForm (propiedad)
Address (propiedad)
PermitirAgregar (propiedad)
AllowBuiltInToolbars (propiedad)
AllowBypassKey (propiedad)
PerimitirEdiciones (propiedad)
AllowFullMenus (propiedad)
AutoResize (propiedad)
AutoTab (propiedad)
BackColor (propiedad)
BoundColumn (propiedad)
ControlSource (propiedad)
Ciclo (propiedad)
DataChange (propiedad)
DataEntry (propiedad)
Default (propiedad)
DefaultValue (propiedad)
Dirty (propiedad)
EmailSubject (propiedad)
Enabled (propiedad)
EventProcPrefix (propiedad)
FileDialog (propiedad)
Filter (propiedad)
FilterOn (propiedad)
FontBold (propiedad)
Format (propiedad)
Guid (propiedad)
Height (propiedad)
HelpContextId (propiedad)
CVent (propiedad,Hwnd)
InputParameters (propiedad)
IsVisible (propiedad)
ListIndex (propiedad)
Locked (propiedad)
Modal (propiedad)
MultiRow (propiedad)
MultiSelect (propiedad)
Name (propiedad)
NewRecord (propiedad)
NextRecord (propiedad)
OnChange (propiedad)
OnClick (propiedad)
OnClose (propiedad)
OnCurrent (propiedad)
OnDeactivate (propiedad)
OnDirty (propiedad)
OnEnter (propiedad)
OnNotInList (propiedad)
OnOpen (propiedad)
OpenArgs (propiedad)
OptionValue (propiedad)
OrderBy (propiedad)
OrderByOn (propiedad)
PageHeader (propiedad)
PaperBin (propiedad)
PaperSize (propiedad)
Printer (propiedad)
PrintSection (propiedad)
Properties (propiedad)
PrtDevMode (propiedad)
RecordLocks (propiedad)
RecordSelectors (propiedad)
Recordset (propiedad)
RecordsetType (propiedad)
RecordSource (propiedad)
Report (propiedad)
Section (propiedad)
SortOrder (propiedad)
SourceItem (propiedad)
Tag (propiedad)
TimerInterval (propiedad)
Top (propiedad)
TopValues (propiedad)
TripleState (propiedad)
UniqueRecords (propiedad)
UniqueValues (propiedad)
Visible (propiedad)