You are on page 1of 275

INDICE ActiveX ........................................................................................

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

Base de datos ............................................................................ 57


DDE (funcin) ........................................................................................ 57 DDEIniciar (funcin) ............................................................................. 59 DDEPedido (f uncin) .............................................................................. 60 DDEEnviar (funcin) ............................................................................. 62 Eval (funcin) ........................................................................................ 65 Particin (funcin) ................................................................................. 68

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

Agregado de dominio ................................................................. 98


DProm (funcin) .................................................................................... 98 DCuenta (funcin) ............................................................................... 101 DPrim, Dltimo (funciones) ................................................................. 105 DBsq (funcin) ................................................................................... 106 DMn, DMx (funciones) ....................................................................... 109 DDesvEst, DDesvEstP (funciones) ........................................................ 113 DSuma (funcin) .................................................................................. 116 DVar, DVarP (funciones) ...................................................................... 119

Tratamiento de errores ............................................................ 123


CVErr (funcin) ................................................................................... 123 Error (funcin) .................................................................................... 124

Entrada y salida de archivos ..................................................... 126


EOF (funcin) ...................................................................................... 126 FreeFile (funcin) ................................................................................ 127 Entrada (funcin) ................................................................................ 128 Loc (funcin) ....................................................................................... 130 LOF (funcin) ...................................................................................... 131 Seek (funcin) ..................................................................................... 132

Administracin de archivos ...................................................... 135


DirAct (funcin) ................................................................................... 135 Dir (funcin) ........................................................................................ 136 FileAttr (funcin) ................................................................................ 139 HoraFechArch (funcin) ....................................................................... 140 FileLen (funcin) ................................................................................. 141

ObtenerAtributo (funcin) .................................................................... 142

Financieras .............................................................................. 144


Amortiz (funcin) ................................................................................. 144 VF (funcin) ........................................................................................ 146 Inters (funcin) .................................................................................. 148 TIR (funcin) ....................................................................................... 150 TIRM (funcin) .................................................................................... 152 NPer (funcin) ..................................................................................... 154 VNA (f uncin) ....................................................................................... 156 Pago (funcin) ..................................................................................... 158 PPago (funcin) ................................................................................... 160 VA (funcin) ........................................................................................ 162 Tasa (funcin) ..................................................................................... 165 SLN (funcin) ...................................................................................... 167 SYD (funcin) ...................................................................................... 169

Inspeccin ............................................................................... 171


Entorno (funcin) ................................................................................. 171 ObtenerValores (funcin) ..................................................................... 174 ObtenerValor (funcin) ........................................................................ 175 IsArray (funcin) ................................................................................. 177 EsFecha (funcin) ................................................................................ 178 EsVaco (funcin) ................................................................................. 179 EsError (funcin) ................................................................................. 180 IsMissing (funcin) .............................................................................. 181 EsNulo (funcin) .................................................................................. 183 EsNum (funcin) .................................................................................. 184 IsObject (f uncin) ................................................................................. 185 TypeName (funcin) ............................................................................. 186 VarType (funcin) ................................................................................ 188

Matemticas ............................................................................ 191


Abs (funcin) ....................................................................................... 191 ArcTg (funcin) .................................................................................... 192 Cos (funcin) ....................................................................................... 193 Exp (funcin) ....................................................................................... 194 Int, Fix (funcione s) .............................................................................. 195 Ln (funcin) ........................................................................................ 196 NmAleat (funcin) .............................................................................. 197 Redondear (f uncin) ............................................................................. 199 Signo (funcin) .................................................................................... 200 Sen (funcin) ....................................................................................... 201 Raz2 (funcin) .................................................................................... 202 Tan (funcin) ....................................................................................... 203

Mensajes ................................................................................. 204

CuadroEntr (funcin) ........................................................................... 204 CuadroMsj (funcin) ............................................................................ 206

Varios ...................................................................................... 210


CallByName (funcin) .......................................................................... 210 IMEStatus (funcin) ............................................................................ 212 MacID (funcin) ................................................................................... 213 MacScript (funcin) ............................................................................. 214 QBColor (fun cin) ................................................................................ 214 RGB (funcin) ...................................................................................... 216 Spc (funcin) ....................................................................................... 218 Tab (funcin) ....................................................................................... 220

Flujo de programas .................................................................. 222


Elegir (funcin) ................................................................................... 222 DoEvents (funcin) .............................................................................. 223 Silnm (funcin) .................................................................................... 225 Conmutador (func in) .......................................................................... 227

Texto ....................................................................................... 229


Formato (funcin) ................................................................................ 229 EnCad (funcin) ................................................................................... 234 InStrRev (f uncin) ................................................................................. 238 Mins (funcin) ................................................................................... 239 Izq. (funcin) ....................................................................................... 240 Longitud (funcin) ............................................................................... 241 RecortarIzq, RecortarDer y Recortar (funciones) ................................... 244 Medio (funcin) .................................................................................... 245 Reemplazar (func in) ........................................................................... 248 Der (funcin) ....................................................................................... 249 Espacio (funcin) ................................................................................. 251 CompCadena (funcin) ......................................................................... 252 ConvCadena (funcin) .......................................................................... 254 Cadena (funcin) ................................................................................. 256 StrReverse (funcin) ............................................................................ 257 Mays (funcin) ................................................................................... 257

ActiveX
CreateObject (funcin)
Crea y devuelve una referencia a un objeto ActiveX.

Sintaxis

CreateObject(clase [, nombreservidor] )

La sintaxis de la funcin CreateObject tiene los siguientes argumentos:


Argumento Descripcin Requerido. Variant (String). El nombre y la clase de aplicacin del objeto que se va a crear. Opcional. Variant (String). El nombre del servidor de red donde se crear el objeto. Si nombreservidor es una cadena vaca (""), se utiliza el equipo local.

clase nombreservidor

El argumento clase utiliza la sintaxis de nombreaplic.tipodeobjeto y consta de estas partes:


Parte Descripcin Requerido. Variant (String). El nombre de la aplicacin que proporciona el objeto. Requerido. Variant (String). El tipo o la clase de objeto que se va a crear.

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:

Call MySub (CreateObject("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

Si el servidor remoto no existe o no est disponible, se produce un error en tiempo de ejecucin.

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.

Set xlApp = Nothing

GetObject (funcin)
Mostrar todo Devuelve una referencia a un objeto proporcionado por un componente ActiveX.

Sintaxis

GetObject([nombreruta ] [ , clase ] )

La sintaxis de la funcin GetObject tiene los siguientes argumentos:


Argumento Descripcin Opcional. Variant (String). La ruta completa y el nombre del archivo que contienen el objeto que se va a recuperar. Si se omite nombreruta, se requiere clase. Opcional. Variant (String). Una cadena que representa la clase del objeto.

nombreruta

clase

El argumento clase utiliza la sintaxis de nombreaplic.tipodeobjeto y consta de estas partes:


Parte Descripcin Requerido. Variant (String). El nombre de la aplicacin que proporciona el objeto. Requerido. Variant (String). Tipo o clase del objeto que se va a crear.

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.

Por ejemplo: MyObject.Line 9, 90 MyObject.InsertText 9, 100, "Hello, world." MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW"

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.

Set MyXL = Nothing

' Release reference to the ' application and spreadsheet.

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.

En el men Archivo, haga clic en Opciones de Access.

2.

En el cuadro de dilogo Configuracin de la aplicacin, haga clic en Avanzadas.

3.

Introduzca un nuevo argumento en el cuadro Argumentos de la lnea de comandos.

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 ] )

La sintaxis de la funcin Ejecutar tiene estos argumentos:

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.

El argumento estiloVentana tiene estos valores:

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.

vbNormalFocus vbMinimizedFocus vbMaximizedFocus vbNormalNoFocus

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)

Devuelve un tipo de dato Variant que contiene una matriz.

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

Filter(matrizorigen, coincidencia [, incluir ] [, comparar ] )

La sintaxis de la funcin Filtro (Filter) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Matriz unidimensional de cadenas en la que se va a buscar. Requerido. Cadena que se va a buscar. Opcional. Valor Boolean que indica si se devuelven subcadenas que incluyan o excluyan la coincidencia. Si incluir es True, la funcin Filtro devuelve el subconjunto de la matriz que contiene la coincidencia como una subcadena. Si include es False, Filtro devuelve el subconjunto de la matriz que no contiene la coincidencia como una subcadena. Opcional. Valor numrico que indica la case de comparacin de cadena que se va a utilizar. Para los valores, vea la seccin Valores.

matrizorigen coincidencia incluir

comparar

Valores

El argumento comparar puede tener los siguientes valores:


Constante vbUseCompareOption vbBinaryCompare vbTextCompare vbDatabaseCompare Valor -1 0 1 2 Descripcin Realiza la comparacin utilizando el valor de la instruccin Option Compare. Realiza una comparacin binaria. Realiza una comparacin textual. Slo Microsoft Office Access 2007. Realiza una comparacin basndose en informacin de la base de datos.

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 ] )

La sintaxis de la funcin Join tiene estos argumentos:


Argumento Descripcin Requerido. Matriz unidimensional que contiene las subcadenas que se van a combinar. Opcional. Carcter de cadena que se utiliza para separar las subcadenas en la cadena devuelta. Si se omite, se utiliza el carcter de espacio (" "). Si delimitador es una cadena de longitud cero (""), se concatenan todos los elementos de la lista sin delimitadores.

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 ] )

La sintaxis de la funcin LBound consta de los siguientes argumentos:


Argumento Descripcin Requerido. Nombre de la variable de matriz; sigue las convenciones de nomenclatura estndar de las variables. Opcional. Valor de tipo Variant (Long). Nmero entero que indica el lmite inferior de la dimensin que se va a devolver. Utilice 1 para la primera dimensin, 2 para la segunda, etc. Si se omite dimensin, se supone que es 1.

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

Split(expresin, [delimitador ], [lmite ], [comparar ] )

La sintaxis de la funcin Split tiene estos argumentos:


Argumento Descripcin Requerido. Expresin de cadena que contiene subcadenas y delimitadores. Si expresin es una cadena de longitud cero (""), Split devuelve una matriz vaca; es decir, una matriz sin elementos ni datos. Opcional. Carcter de tipo String que se utiliza para identificar los lmites de las subcadenas. Si se omite, se supone que el carcter de espacio (" ") es el delimitador. Si delimitador es una cadena de longitud cero, se devuelve una matriz de un solo elemento que contiene toda la cadena de expresin. Opcional. Nmero de subcadenas que se van a devolver; 1 indica que se van a devolver todas las subcadenas. Opcional. Valor numrico que indica el tipo de comparacin que se va a usar al evaluar las subcadenas. Vea la seccin Valores para obtener informacin sobre los valores.

expresin

delimitador

lmite comparar

Valores

El argumento comparar puede tener los valores siguientes:


Constante vbUseCompareOption vbBinaryCompare vbTextCompare vbDatabaseCompare Valor -1 0 1 2 Descripcin Realiza la comparacin mediante el valor de la instruccin Option Compare. Realiza una comparacin binaria. Realiza una comparacin textual. Slo Microsoft Office Access 2007. Realiza una comparacin basndose en la informacin de la base de datos.

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 ] )

La sintaxis de la funcin UBound consta de los siguientes argumentos:


Argumento Descripcin Requerido. Nombre de la variable de matriz; sigue las convenciones de nomenclatura estndar de las variables. Opcional. Valor de tipo Variant (Long). Nmero entero que indica el lmite superior de la dimensin que se va a devolver. Utilice 1 para la primera dimensin, 2 para la segunda, etc. Si se omite dimensin, se supone que es 1.

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)

Valor devuelto 100 3 4

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)

El argumento cdcar es un valor Long que identifica un carcter.

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

Si el valor de la propiedad Calendar es gregoriano, el entero devuelto representa el da gregoriano del

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.

' MyDay contains 12.

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] )

La sintaxis de la funcin EuroConvert tiene los siguientes argumentos:


Argumento Descripcin Nmero que desea convertir o referencia a un campo que contiene el nmero.

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 Corona danesa Dracma Corona sueca Libra esterlina

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.

Esta funcin no aplica ningn formato.

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 ] )

La sintaxis de la funcin FormatoMoneda (FormatCurrency) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin a la que se va a dar formato. Opcional. Valor numrico que indica cuntos lugares se muestran a la derecha del decimal. El valor predeterminado es 1, que indica que se utiliza la configuracin regional del equipo. Opcional. Constante de triple estado que indica si los valores fraccionarios han de llevar cero inicial. Vea la seccin Valores para obtener informacin sobre los valores. Opcional. Constante de triple estado que indica si los valores negativos han de situarse entre parntesis. Vea la seccin Valores para obtener informacin sobre los valores. Opcional. Constante de triple estado que indica si los nmeros se agrupan mediante el delimitador de grupos especificado en la configuracin regional del equipo. Vea la seccin Valores para obtener informacin sobre los valores.

Expresin NmDgitosTrasDecimal

IncluirDgitoInicial

UsarParntesisParaNmerosNegativos

AgruparDgitos

Valores

Los argumentos IncluirDgitoInicial, UsarParntesisParaNmerosNegativos y AgruparDgitos tienen los siguientes valores:


Constante vbTrue vbFalse vbUseDefault Valor -1 0 -2 Descripcin True False Usa el valor de la configuracin regional del equipo.

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

Toda la informacin de configuracin procede de la ficha Moneda de la configuracin regional,

excepto el cero inicial, que procede de la ficha Nmero.

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

Valores El argumento FormatoconNombre tiene los siguientes valores:


Constante vbGeneralDate vbLongDate vbShortDate vbLongTime vbShortTime Valor 0 1 2 3 4 Descripcin Muestra una hora o fecha. Si hay una parte de fecha, la muestra como fecha corta. Si hay una parte de hora, la muestra como hora larga. Si existen, se muestran ambas partes. Muestra una fecha mediante el formato de fecha largo especificado en la configuracin regional del equipo. Muestra una fecha mediante el formato de fecha corto especificado en la configuracin regional del equipo. Muestra una hora mediante el formato de hora especificado en la configuracin regional del equipo. Muestra una hora mediante el formato de 24 horas (hh:mm).

FormatoNmero (funcin)
FormatoNmero (funcin, FormatNumber)
Devuelve una expresin con formato numrico.

Sintaxis

FormatNumber(Expresin

[,

NmDgitosTrasDecimal

[,

IncluirDgitoInicial

[,

UsarParntesisParaNmerosNegativos ] [, AgruparDgitos ] )

La sintaxis de la funcin FormatoNmero (FormatNumber) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin a la que se va a dar formato. Opcional. Valor numrico que indica cuntos lugares se muestran a la derecha del decimal. El valor predeterminado es 1, que indica que se utiliza la configuracin regional del equipo. Opcional. Constante de triple estado que indica si los valores fraccionarios han de llevar cero inicial. Vea la seccin Valores para obtener informacin sobre los valores. Opcional. Constante de triple estado que indica si los valores negativos han de situarse entre parntesis. Vea la seccin Valores para obtener informacin sobre los valores. Opcional. Constante de triple estado que indica si los nmeros se agrupan mediante el delimitador de grupos especificado en la configuracin regional del equipo. Vea la seccin Valores para obtener informacin sobre los valores.

Expresin NmDgitosTrasDecimal

IncluirDgitoInicial

UsarParntesisParaNmerosNegativos

AgruparDgitos

Valores

Los argumentos IncluirDgitoInicial, UsarParntesisParaNmerosNegativos y AgruparDgitos tienen los siguientes valores:


Constante vbTrue vbFalse vbUseDefault Valor -1 0 -2 Descripcin True False Usa el valor de la configuracin regional del equipo.

Comentarios

Cuando se omiten uno o ms argumentos opcionales, la configuracin regional del equipo proporciona los valores de los argumentos omitidos.

NOTA

Toda la informacin de configuracin procede de la ficha Nmero de la configuracin regional.

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 ] )

La sintaxis de la funcin FormatoPorcentaje (FormatPercent) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin a la que se va a dar formato. Opcional. Valor numrico que indica cuntos lugares se muestran a la derecha del decimal. El valor predeterminado es 1, que indica que se utiliza la configuracin regional del equipo. Opcional. Constante de triple estado que indica si los valores fraccionarios han de llevar cero inicial. Vea la seccin Valores para obtener informacin sobre los valores. Opcional. Constante de triple estado que indica si los valores negativos han de situarse entre parntesis. Vea la seccin Valores para obtener informacin sobre los valores. Opcional. Constante de triple estado que indica si los nmeros se agrupan mediante el delimitador de grupos especificado en la configuracin regional del equipo. Vea la seccin Valores para obtener informacin sobre los valores.

Expresin NmDgitosTrasDecimal

IncluirDgitoInicial

UsarParntesisParaNmerosNegativos

AgruparDgitos

Valores

Los argumentos IncluirDgitoInicial, UsarParntesisParaNmerosNegativos y AgruparDgitos tienen los siguientes valores:


Constante vbTrue vbFalse vbUseDefault Valor -1 0 -2 Descripcin True False Usa el valor de la configuracin regional del equipo.

Comentarios

Cuando se omiten uno o ms argumentos opcionales, la configuracin regional del equipo proporciona los valores de los argumentos omitidos.

NOTA

Toda la informacin de configuracin procede de la ficha Nmero de la configuracin regional.

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)

El argumento nmero requerido es cualquier expresin numrica o expresin de cadena vlida.

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 ] )

La sintaxis de la funcin Nz consta de los siguientes argumentos:


Argumento Descripcin Requerido. Variable del tipo de datos Variant. Opcional (a menos que se use en una consulta). Valor de tipo Variant que proporciona el valor que se va a devolver si el argumento variant es Nulo. Este argumento permite devolver un valor que no sea cero o una cadena de longitud cero.
NOTA Si utiliza la funcin Nz en una expresin de una consulta sin utilizar el argumento valorsiesnulo, el resultado ser una cadena de longitud cero en los campos que contengan valores nulos.

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.

Si el valor de variant no es Nulo, la funcin Nz devolver el valor de variant.

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)

En el siguiente ejemplo, el argumento opcional de la funcin Nz proporciona la cadena que se va a devolver si


varFreight es Nulo.

varResult = Nz(varFreight, "No Freight Charge")

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)

El argumento nmero requerido es cualquier expresin numrica o ">expresin de cadena vlida.

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)

' Returns " 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.

Public Sub StringValueOfGUID()

Dim ctl As Control Dim strGUID As String

' Get the GUID. Set ctl = Forms!Employees!s_GUID Debug.Print TypeName(ctl.Value)

' Convert the GUID to a string. strGUID = StringFromGUID(ctl.Value) Debug.Print TypeName(strGUID)

End Sub

Funciones de conversin de tipo


Mostrar todo Cada funcin convierte una expresin en un tipo de datos especfico.

Sintaxis

CBool(expr)

CByte(expr)

CMoneda(expr)

CFecha(expr)

CDoble(expr)

CDec(expr)

CEntero(expr)

CLargo(expr)

CSimple(expr)

CCadena(expr)

CVariante(expr)

El argumento expr requerido es cualquier ">expresin de cadena o expresin numrica.

Tipos de valores devueltos

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

Funcin CBool CByte CMoneda CFecha CDoble

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.

CEntero CLargo CSimple

Integer Long Single

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

convertido en un subtipo Decimal.

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

' Define variable. ' Check contains False.

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.

MyString = CStr(MyDouble) ' MyString contains "437.324".

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)

El argumento cadena requerido es cualquier ">expresin de cadena vlida.

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

DDE(aplicacin, tema, elemento)

La sintaxis de la funcin DDE tiene los siguientes argumentos:


Argumento Descripcin Expresin de cadena que identifica una aplicacin que puede participar en una comunicacin DDE. Normalmente, aplicacin es el nombre de un archivo .exe (sin la extensin .exe) de una aplicacin basada en Microsoft Windows, como Excel. Por ejemplo, para iniciar una comunicacin DDE con Excel, escriba "Excel" en el argumento aplicacin. Expresin de cadena que es el nombre de un tema que reconoce la aplicacin. El argumento tema con frecuencia es un documento o un archivo de datos. Busque en la documentacin de la aplicacin una lista de temas posibles. Expresin de cadena que es el nombre de un elemento de datos que reconoce la aplicacin. Busque en la documentacin de la aplicacin una lista de elementos posibles.

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.

Control Cuadro texto de

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)

La sintaxis de la funcin DDEIniciar tiene los siguientes argumentos:

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)

La sintaxis de la funcin DDEPedido (DDERequest) tiene los siguientes argumentos:


Argumento Descripcin Nmero de canal, valor entero devuelto por la funcin DDEIniciar (DDEInitiate). Expresin de cadena que es el nombre de un elemento de datos reconocido por la aplicacin especificada por la funcin DDEIniciar. Busque en la documentacin de la aplicacin una lista de temas posibles.

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

DDEEnviar(aplicacin, tema, elemento, datos)

La sintaxis de la funcin DDEEnviar tiene los siguientes argumentos:


Argumento Descripcin Expresin de cadena que identifica una aplicacin que puede participar en una comunicacin DDE. Normalmente, aplicacin es el nombre de un archivo .exe (sin la extensin .exe) para una aplicacin basada en Microsoft Windows, como Excel. Por ejemplo, para iniciar una comunicacin DDE con Excel, escriba "Excel" en el argumento aplicacin. Expresin de cadena que es el nombre de un tema que reconoce aplicacin. El argumento tema suele ser un documento o un archivo de datos. Busque en la documentacin de la aplicacin una lista de temas posibles. Expresin de cadena que es el nombre de un elemento de datos que reconoce la aplicacin. Busque en la documentacin de la aplicacin una lista de elementos posibles. Cadena o expresin que contiene los datos que se van a enviar a aplicacin.

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

Si necesita manipular objetos de otra aplicacin desde Access, considere la posibilidad de

utilizar automatizacin.

En la tabla siguiente se muestra cmo se comporta la funcin DDEEnviar cuando la utiliza con cada uno de los controles.

Control Cuadro de texto o cuadro combinado

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:

=DDESend("Excel", "Sheet1", "R1C1", [LastName])

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

Particin(nmero, iniciar, detener, intervalo)

La sintaxis de la funcin Particin tiene estos argumentos:


Argumento Descripcin Requerido. Nmero entero que se desea evaluar con los intervalos. Requerido. Nmero entero que es el inicio del intervalo global de nmeros. El nmero no puede ser menor que 0. Requerido. Nmero entero que es el fin del intervalo global de nmeros. El nmero no puede ser igual ni menor que el valor de iniciar. Requerido. Nmero entero que especifica el tamao de las particiones en el intervalo global de nmeros (entre iniciar y detener).

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

Para establecer la fecha de sistema, utilice la instruccin Fecha (Date).

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.

Usar la funcin Fecha en cdigo VBA

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

Valores El argumento intervalo tiene los siguientes valores:


Valor yyyy q m y d w ww h n s Descripcin Ao Trimestre Mes Da del ao Da Da de la semana Semana Hora Minutos Segundos

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

por el formato que se pasa en el argumento fecha.

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.

Dim IntervalType As String Dim Number As Integer Dim Msg

IntervalType = "m"

' "m" specifies months as interval.

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.

Vea algunos ejemplos Sintaxis

DateDiff(intervalo, fecha1, fecha2 [, primerdasemana] [, primerasemanaao] )

La sintaxis de la funcin DateDiff tiene los siguientes argumentos:

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

fecha1, fecha2 primerdasemana

primerasemanaao

Valores

El argumento intervalo tiene los siguientes valores:


Valor yyyy q m y d w ww h n s Descripcin Ao Trimestre Mes Da del ao Da Da de la semana Semana Hora Minutos Segundos

El argumento primerdasemana tiene los siguientes valores:


Constante vbUseSystem vbSunday vbMonday vbTuesday vbWednesday vbThursday vbFriday vbSaturday Valor 0 1 2 3 4 5 6 7 Descripcin Se utiliza la configuracin NLS API. Domingo (valor predeterminado) Lunes Martes Mircoles Jueves Viernes Sbado

Constante vbUseSystem vbFirstJan1 vbFirstFourDays vbFirstFullWeek

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

Para fecha1 y fecha2, 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.

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.

Usar la funcin DateDiff en cdigo VBA

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

DatePart(intervalo, fecha [, primerdasemana] [, primerasemanaao] )

La sintaxis de la funcin ParcFecha (DatePart) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin de cadena que es el intervalo de tiempo que desea devolver. Requerido. Valor Variant (Date) que se desea evaluar. 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 fecha primerdasemana

primerasemanaao

Valores

El argumento intervalo tiene los siguientes valores:


Valor yyyy q m y d w ww h n s Descripcin Ao Trimestre Mes Da del ao Da Da de la semana Semana Hora Minutos Segundos

El argumento primerdasemana tiene los siguientes valores:


Constante vbUseSystem vbSunday vbMonday vbTuesday vbWednesday vbThursday vbFriday vbSaturday Valor 0 1 2 3 4 5 6 7 Descripcin Se utiliza la configuracin NLS API. Domingo (valor predeterminado) Lunes Martes Mircoles Jueves Viernes Sbado

El argumento primerasemanaao tiene los siguientes valores:


Constante vbUseSystem vbFirstJan1 vbFirstFourDays vbFirstFullWeek 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 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

gregoriana. Si el calendario es Hijri, la fecha proporcionada debe ser Hijri.

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.

Dim TheDate As Date Dim Msg

' Declare variables.

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

DateSerial(ao, mes, da)

La sintaxis de la funcin SerieFecha (DateSerial) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Entero. Nmero entre 100 y 9999, ambos inclusive, o una expresin numrica. Requerido. Entero. Cualquier expresin numrica. Requerido. Entero. Cualquier expresin numrica.

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

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 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.

' MyMonth contains 2.

NombreMes (funcin)
Devuelve una cadena que indica el mes especificado.

Sintaxis

NombreMes(mes, [abreviar ] )

La sintaxis de la funcin NombreMes consta de los siguientes argumentos:


Argumento Descripcin Requerido. Designacin numrica del mes. Por ejemplo, enero es 1, febrero es 2, etc. Opcional. Valor de tipo Boolean que indica si se va a abreviar el nombre del mes. Si se omite, el valor predeterminado es Falso, lo que significa que el nombre del mes no se abrevia.

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

Para configurar la hora del sistema, utilice la instruccin Time.

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.

TotalTime = Finish - Start

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

SerieHora(hora, minuto, segundo)

La sintaxis de la funcin SerieHora tiene estos argumentos:


Argumento Descripcin Requerido. Valor de tipo Variant (Integer). Un nmero entre 0 (12:00 a.m.) y 23 (11:00 p.m.), ambos inclusive, o bien, una expresin numrica. Requerido. Valor de tipo Variant (Integer). Cualquier expresin numrica. Requerido. Valor de tipo Variant (Integer). Cualquier expresin numrica.

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 ] )

La sintaxis de la funcin DaSemana tiene estos argumentos:


Argumento Descripcin Requerido. Valor de tipo Variant, expresin numrica, ">expresin de cadena o cualquier combinacin de stos que represente una fecha. Si fecha contiene un valor Nulo, se devuelve Nulo. Opcional. Constante que especifica el primer da de la semana. Si no se especifica, se supone que es vbSunday.

fecha

primer_da_semana

Valores

El argumento primer_da_semana tiene los siguientes valores:


Constante vbUseSystem vbSunday vbMonday vbTuesday vbWednesday vbThursday vbFriday vbSaturday Valor 0 1 2 3 4 5 6 7 Descripcin Se utiliza la configuracin NLS API (Compatibilidad con el idioma nacional). Domingo (valor predeterminado) Lunes Martes Mircoles Jueves Viernes Sbado

Valores devueltos

La funcin DaSemana puede devolver cualquiera de estos valores:


Constante vbSunday vbMonday vbTuesday vbWednesday vbThursday vbFriday vbSaturday Valor 1 2 3 4 5 6 7 Descripcin Domingo Lunes Martes Mircoles Jueves Viernes Sbado

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

NombreDaDeLaSemana(daSemana, [abreviar ], [primerDaSemana ] )

La sintaxis de la funcin NombreDaDeLaSemana tiene estos argumentos:


Argumento Descripcin Requerido. Designacin numrica del da de la semana. El valor numrico de cada da depende del valor de primerDaSemana. Opcional. Valor de tipo Boolean que indica si se va a abreviar el nombre del da de la semana. Si se omite, el valor predeterminado es Falso, lo que significa que el nombre del da de la semana no se va a abreviar. Opcional. Valor numrico que indica el primer da de la semana. Vea la seccin Valores para obtener informacin sobre los valores.

daSemana

abreviar

primerDaSemana

Valores

El argumento primerDaSemana puede tener los valores siguientes:


Constante vbUseSystem vbSunday vbMonday vbTuesday vbWednesday vbThursday vbFriday vbSaturday Valor 0 1 2 3 4 5 6 7 Descripcin Se utiliza la configuracin NLS API (Compatibilidad con el idioma nacional). Domingo (valor predeterminado) Lunes Martes Mircoles Jueves Viernes Sbado

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

Si el valor de la propiedad Calendario es gregoriano, el entero devuelto representa el ao gregoriano

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.

' MyYear contains 1969.

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

DAvg(expr, dominio [, criterios] )

La sintaxis de la funcin DProm tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo que contiene los datos numricos de los que desea obtener el promedio. 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 DProm. 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 DProm 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 DProm devuelve un valor Null.

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

DCont(expr, dominio [, criterios] )

La sintaxis de la funcin DCont tiene los siguientes argumentos:

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

El signo de Y comercial (&) es el operador preferido para realizar la concatenacin de cadenas.

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#

DPrim, Dltimo (funciones)


Funciones DPrim (DFirst), Dltimo (DLast)
Mostrar todo Puede usar las funciones DPrim (DFirst) y Dltimo (DLast) para devolver un registro aleatorio de un campo particular de una tabla o consulta cuando necesite tan slo un valor de ese campo. Use las funciones DPrim y Dltimo en una macro, en un mdulo, en una expresin de consulta o en un control calculado de un formulario o informe.

Sintaxis

DFirst(expr, dominio [, criterios] )

DLast(expr, dominio [, criterios] )

Las funciones DPrim y Dltimo tienen estos argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo desde el que desea encontrar el primer o el ltimo valor. 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 del campo de la 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. Opcional. Expresin de cadena que se utiliza para restringir el intervalo de datos sobre el que se ejecuta la funcin DPrim o Dltimo. Por ejemplo, criterios con frecuencia es equivalente a la clusula WHERE en una expresin SQL, sin la palabra WHERE. Si se omite criterios, las funciones DPrim y Dltimo evalan expr para todo el dominio. Cualquier campo que se incluya en criterios debe ser tambin un campo de dominio; de lo contrario, las funciones DPrim y Dltimo devuelven el valor Null.

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

DBsq(expr, dominio [, criterios] )

La sintaxis de la funcin DBsq tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo cuyo valor desea devolver. 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 DBsq. 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 DBsq evala expr para todo el dominio. Cualquier campo que se incluya en criterios debe ser tambin un campo de dominio; de lo contrario, la funcin DBsq devuelve el valor Null.

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)

DMn, DMx (funciones)


Funciones DMn (DMin) y DMx (DMax)
Mostrar todo Puede usar las funciones DMn (DMin) y DMx (DMax) para calcular los valores mnimo y mximo de un grupo de registros especificado (un dominio). Utilice las funciones DMn y DMx 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 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

DMin(expr, dominio [, criterios] )

DMax(expr, dominio [, criterios] )

Las funciones DMn y DMx tienen estos argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo para el que desea encontrar el valor mximo y mnimo. 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 que se utiliza para restringir el intervalo de datos sobre el que se ejecuta la funcin DMn o DMx. Por ejemplo, criterios con frecuencia es equivalente a la clusula WHERE en una expresin SQL, sin la palabra WHERE. Si se omite criterios, las funciones DMn y DMx evalan expr para todo el dominio. Cualquier campo que se incluya en criterios debe ser tambin un campo de dominio; de lo contrario, las funciones DMn y DMx devuelven el valor Null.

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 & "#")

DDesvEst, DDesvEstP (funciones)


Funciones DDesvEst (DStDev), DDesvEstP (DStDevP)
Mostrar todo Puede usar las funciones DDesvEst (DStDev) y DDesvEstP (DStDevP) para calcular la desviacin estndar de un conjunto de valores de un grupo de registros especificado (un dominio). Utilice las funciones DDesvEst y DDesvEstP en un mdulo de Visual Basic para Aplicaciones (VBA), en una macro, en una expresin de consulta o en un control calculado de un formulario o informe.

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

DStDev(expr, dominio [, criterios] )

DStDevP(expr, dominio [, criterios] )

Las funciones DDesvEst y DDesvEstP tienen estos argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo numrico en el que se desea encontrar la desviacin estndar. 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 que se utiliza para restringir el intervalo de datos sobre el que se ejecuta la funcin DDesvEst o DDesvEstP. Por ejemplo, criterios con frecuencia es equivalente a la clusula WHERE en una expresin SQL, sin la palabra WHERE. Si se omite criterios, las funciones DDesvEst y DDesvEstP evalan expr para todo el dominio. Cualquier campo que se incluya en criterios debe ser tambin un campo de dominio; de lo contrario, las funciones DDesvEst y DDesvEstP devuelven el valor Null.

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

' Sample estimate. dblX = DStDev("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'")

' Population estimate. dblY = DStDevP("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'")

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"

dblX = DStDev("[Freight]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & "'")

dblY = DStDevP("[Freight]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & "'")

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

DSuma(expr, dominio [, criterios] )

La sintaxis de la funcin DSuma tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo numrico cuyos valores desea calcular. 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 DSuma. 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 DSuma 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 DSuma devuelve un valor Null.

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.

Usar DSuma en cdigo VBA

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#")

DVar, DVarP (funciones)


Mostrar todo Puede usar las funciones DVar y DVarP para calcular la varianza de un conjunto de valores de un grupo de registros especificado (un dominio). Utilice las funciones DVar y DVarP en un mdulo de Visual Basic para Aplicaciones (VBA), en una macro, en una expresin de consulta o en un control calculado de un formulario o informe.

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

DVar(expr, dominio [, criterios] )

DVarP(expr, dominio [, criterios] )

Las funciones DVar y DVarP tienen estos argumentos:


Argumento Descripcin Requerido. Expresin que identifica el campo numrico en el que se desea encontrar la varianza. 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. Cualquier campo incluido en expr debe ser un campo numrico. 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 que se utiliza para restringir el intervalo de datos sobre el que se ejecuta la funcin DVar o DVarP. Por ejemplo, criterios con frecuencia es equivalente a la clusula WHERE en una expresin SQL, sin la palabra WHERE. Si se omite criterios, las funciones DVar y DVarP evalan expr para todo el dominio. Cualquier campo que se incluya en criterios debe ser tambin un campo de dominio; de lo contrario, las funciones DVar y DVarP devuelven el valor Null.

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"

dblX = DVar("[Freight]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & "'")

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)

El argumento nmerodeerror es cualquier nmero de error vlido.

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

Entrada y salida de archivos


EOF (funcin)
Mostrar todo Devuelve un Entero que contiene el valor Boolean True cuando se ha alcanzado el final de un archivo abierto para el valor Aleatorio o Entrada secuencial.

Sintaxis

EOF(nmeroarchivo )

El argumento nmeroarchivo es un Entero que contiene un nmero de archivo vlido.

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

Utilice FreeFile para proporcionar un nmero de archivo que ya no se est utilizando.

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)

La sintaxis de la funcin Entrada consta de los siguientes argumentos:


Argumento Descripcin Requerido. Cualquier expresin numrica vlida que especifique el nmero de caracteres que se van a devolver. Requerido. Cualquier nmero de archivo vlido.

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.

' Loop until end of file. ' Get one character.

MyChar = Input(1, #1) Debug.Print MyChar Loop Close #1 ' Close file.

' Print to the Immediate window.

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)

El argumento nmeroDeArchivo requerido es cualquier nmero de archivo de tipo Integer.

Comentarios

A continuacin se describe el valor devuelto para cada modo de acceso a archivos:


Modo Aleatorio Secuencial Valor devuelto Nmero del ltimo registro ledo del archivo o escrito en l. Actual posicin de byte en el archivo dividida entre 128. Sin embargo, la informacin devuelta por Loc para archivos secuenciales no se utiliza ni se requiere. Posicin del ltimo byte ledo o escrito.

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)

El argumento nmeroDeArchivo requerido es un entero que contiene un nmero de archivo vlido.

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.

' Get length of file.

' Close 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)

El argumento nmeroDeArchivo requerido es un entero que contiene un nmero de archivo vlido.

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.

Modo Aleatorio Binario, Salida, Datos anexados, Entrada

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".

MyPath = CurDir("C") MyPath = CurDir("D")

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] )]

La sintaxis de la funcin Dir tiene los siguientes argumentos:


Argumento Descripcin Opcional. Expresin de cadena que especifica un nombre de archivo; puede incluir un directorio o carpeta, y una unidad. Se devuelve una cadena de longitud cero ("") si no se encuentra nombreruta. Opcional. Constante o expresin numrica, cuya suma especifica los atributos del archivo. Si se omite, devuelve los archivos que coinciden con nombreruta pero sin atributos.

nombreruta

atributos

Valores

Los valores del argumento atributos son los siguientes:


Constante vbNormal vbReadOnly vbHidden VbSystem vbVolume Valor 0 1 2 4 8 Descripcin (Predeterminado) Especifica archivos sin atributos. Especifica archivos de slo lectura adems de archivos sin atributos. Especifica archivos ocultos adems de archivos sin atributos. Especifica archivos de sistema adems de archivos sin atributos. No est disponible en Macintosh. Especifica una etiqueta de volumen; si se especifica algn otro atributo, se omite vbVolume. No est disponible en Macintosh. Especifica directorios o carpetas adems de archivos sin atributos. El nombre de archivo especificado es un alias. Disponible slo en Macintosh.

vbDirectory vbAlias

16 64

NOTA

Estas constantes las especifica Visual Basic para Aplicaciones (VBA) y se pueden utilizar en

cualquier parte del cdigo en lugar de los valores reales.

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.

Cualquier valor de atributos mayor de 256 se considera un valor de MacID.

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)

La sintaxis de la funcin FileAttr tiene los siguientes argumentos:


Argumento Descripcin Requerido. Entero. Cualquier nmero de archivo vlido. Requerido. Entero. Nmero que indica el tipo de informacin que hay que devolver. Especifique 1 para devolver un valor que indique el modo de archivo. En sistemas de solamente 16 bits, especifique 2 para recuperar un identificador de archivos del sistema operativo. tipodevuelto 2 no se admite en sistemas de 32 bits y causa un error.

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.

Open "TESTFILE" For Append As FileNum

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

Para obtener la longitud de un archivo abierto, utilice la funcin LOF.

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

cualquier parte del cdigo en lugar de los valores reales. 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. 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

DDB(costo, valor_residual, vida, perodo [, factor] )

La sintaxis de la funcin Amortiz (DDB) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Valor de tipo Double que especifica el costo inicial del bien. Requerido. Valor de tipo Double que especifica el valor del bien al final de su vida til. Requerido. Valor de tipo Double que especifica la duracin de la vida til del bien. Requerido. Valor de tipo Double que especifica el perodo para el que se calcula la depreciacin del bien. Opcional. Variant que especifica la tasa de disminucin de saldo. Si se omite, se supone que se utiliza 2 (mtodo de doble disminucin).

costo valor_residual vida perodo factor

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:

Depreciacin / perodo = ((costo valor_residual) * factor) / vida

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

FV(tasa, nper, pago [, va ] [, tipo ] )

La sintaxis de la funcin VF (FV) tiene los siguientes 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 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 Variant 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 del coche que se vayan a abonar. Si se omite, se supone 0. Opcional. Valor Variant que especifica cundo vencen los plazos. Utilice 0 si los pagos vencen al final del perodo de pago o 1 si los pagos vencen al comienzo del perodo. Si se omite, se supone 0.

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.

' Define money format.

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)

If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If

For Period = 1 To TotPmts

' Total all interest.

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 ] )

La sintaxis de la funcin TIR tiene estos argumentos:


Argumento Descripcin Requerido. Matriz de valores de tipo Double que especifican valores de flujo de caja. La matriz debe contener como mnimo un valor negativo (un pago) y un valor positivo (un cobro). Opcional. Valor de tipo Variant que especifica el valor que se calcula que sea devuelto por TIR. Si se omite, estimacin tiene el valor 0,1 (10 por ciento).

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

' Calculate internal rate. RetRate = IRR(Values(), Guess) * 100

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

TIRM(valores(), tasa_financiamiento, tasa_reinversin)

La sintaxis de la funcin TIRM tiene estos argumentos:


Argumento Descripcin Requerido. Matriz de valores de tipo Double que especifican valores de flujo de caja. La matriz debe contener como mnimo un valor negativo (un pago) y un valor positivo (un cobro). Requerido. Valor de tipo Double que especifica la tasa de inters pagada como costo de financiacin. Requerido. Valor de tipo Double que especifica la tasa de inters obtenida de las ganancias por reinversin de efectivo.

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

' Calculate internal rate. RetRate = MIRR(Values(), LoanAPR, InvAPR)

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

' Usually 0 for a loan.

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)

If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If

TotPmts = NPer(APR / 12, -Payment, PVal, FVal, PayType)

If Int(TotPmts) <> TotPmts Then TotPmts = Int(TotPmts) + 1 End If

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())

La sintaxis de la funcin VNA tiene estos argumentos:


Argumento Descripcin Requerido. Valor de tipo Double que especifica la tasa de descuento a lo largo del perodo, que se especifica como un decimal. Requerido. Matriz de valores de tipo Double que especifican valores de flujo de caja. La matriz debe contener como mnimo un valor negativo (un pago) y un valor positivo (un cobro).

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.

' Define money format.

' Guess starts at 10 percent. ' Set fixed internal rate. ' Business start-up costs.

RetRate = .0625 Values(0) = -70000

' Positive cash flows reflecting income ' for four successive years. Values(1) = 22000 : Values(2) = 25000 Values(3) = 28000 : Values(4) = 31000

' Calculate net present value. NetPVal = NPV(RetRate, Values())

Msg = "The net present value " & _ "of these cash flows is " Msg = Msg & Format(NetPVal, Fmt) & "."

' Display net present value. MsgBox Msg

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

' When payments are made. Const ENDPERIOD = 0, BEGINPERIOD = 1

Fmt = "###,###,##0.00" FVal = 0

' Define money format.

' Usually 0 for a loan.

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)

If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If

Payment = Pmt(APR / 12, TotPmts, -PVal, FVal, PayType)

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

PPago(tasa, per, nper, va, [vf ], [tipo ] )

La sintaxis de la funcin PPago 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 perodo de pago en el intervalo 1 mediante nper. 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 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 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.

' Define newline.

' Define tab. ' Define money format.

Fmt = "###,###,##0.00" FVal = 0

' Usually 0 for a loan.

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?"

MakeChart = MsgBox(Msg, vbYesNo) If MakeChart <> vbNo Then

' See if chart is desired.

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

VA(tasa, nper, pago, [vf ], [tipo ] )

La sintaxis de la funcin VA 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 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

Fmt = "###,##0.00" APR = .0825 TotPmts = 20 YrIncome = 50000 FVal = 1000000

' Define money format. ' Annual percentage rate. ' Total number of payments. ' Yearly income. ' Future value.

PayType = BEGINPERIOD ' Payment at beginning of month.

PVal = PV(APR, TotPmts, -YrIncome, FVal, PayType)

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

Fmt = "##0.00" FVal = 0 Guess = .1

' Define percentage format.

' Usually 0 for a loan. ' Guess of 10 percent.

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)

If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If

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

SLN(costo, valor_residual, vida)

La funcin SLN tiene estos argumentos:


Argumento Descripcin Requerido. Valor de tipo Double que especifica el costo inicial del bien. Requerido. Valor de tipo Double que especifica el valor del bien al final de su vida til. Requerido. Valor de tipo Double que especifica la duracin de la vida til del bien.

costo valor_residual vida

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

SYD(costo, valor_residual, vida, perodo)

La sintaxis de la funcin SYD tiene estos argumentos:


Argumento Descripcin Requerido. Valor de tipo Double que especifica el costo inicial del bien. Requerido. Valor de tipo Double que especifica el valor del bien al final de su vida til. Requerido. Valor de tipo Double que especifica la duracin de la vida til del bien. Requerido. Valor de tipo Double que especifica el perodo para el que se calcula la depreciacin del bien.

costo valor_residual vida perodo

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

Environ( { cadenaent | nmero } )

La sintaxis de la funcin Entorno (Environ) tiene los siguientes argumentos:


Argumento Descripcin Opcional. Expresin de cadena que contiene el nombre de una variable de entorno. Opcional. Expresin numrica que corresponde al orden numrico de la cadena de entorno de la tabla de cadenas de entorno. El argumento nmero puede ser cualquier expresin numrica, pero se redondea a un nmero entero antes de ser evaluado.

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)

La sintaxis de la funcin ObtenerValores (GetAllSettings) 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 cuyas configuraciones clave se solicitan. La funcin ObtenerValores devuelve un tipo de dato Variant cuyo contenido es una matriz bidimensional de cadenas que contiene todas las configuraciones clave de la seccin determinada y sus valores correspondientes.

nombreaplic

seccin

Comentarios

ObtenerValores devuelve un tipo de dato Variant no inicializado si nombreaplic o seccin no existen.

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)

El argumento nombrevar requerido es un identificador que especifica una variable.

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

YourArray = Array(1, 2, 3) MyCheck = IsArray(MyArray) MyCheck = IsArray(YourArray)

' 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

MyDate = "February 12, 1969" YourDate = #2/12/69# NoDate = "Hello"

MyCheck = IsDate(MyDate) MyCheck = IsDate(YourDate) MyCheck = IsDate(NoDate)

' Returns True. ' Returns True. ' Returns False.

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

' Assign Null. ' Returns False.

MyCheck = IsEmpty(MyVar)

MyVar = Empty

' Assign Empty. ' Returns True.

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)

El argumento expresin requerido puede ser cualquier expresin vlida.

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)

El argumento nombrearg requerido contiene el nombre de un argumento de procedimiento Variant opcional.

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

Nulo es en s misma Nula y, por lo tanto, es Falsa.

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.

Dim MyVar, MyCheck MyCheck = IsNull(MyVar) ' Returns False.

MyVar = "" MyCheck = IsNull(MyVar) ' Returns False.

MyVar = Null MyCheck = IsNull(MyVar) ' Returns True.

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.

EsNum devuelve Falso si expresin es una expresin de 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 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"

' Assign value. ' Returns True.

MyCheck = IsNumeric(MyVar)

MyVar = "45 Help"

' Assign value. ' Returns False.

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)

El argumento identificador requerido es un nombre de variable.

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.

MyCheck = IsObject(YourObject) MyCheck = IsObject(MyInt)

' Returns False.

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

cualquier parte del cdigo en lugar de los valores reales.

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.

El intervalo del resultado es pi/2 a pi/2 radianes.

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.

En este ejemplo se utiliza la funcin Atn para calcular el valor de pi.

Dim pi pi = 4 * Atn(1) ' Calculate the value of pi.

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.

El resultado se encuentra en el intervalo de -1 a 1.

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

Si el valor de nmero es mayor de 709,782712893, se produce un error. La constante e es aproximadamente 2,718282.

NOTA

La funcin Exp complementa la accin de la funcin Ln y a veces se denomina antilogaritmo.

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

Int, Fix (funciones)


Funciones Ent y SinDec
Mostrar todo Devuelve la parte correspondiente al entero de un nmero.

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.

SinDec(nmero) es equivalente a: Sgn(number) * Int(Abs(number))

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.

MyNumber = Int(-99.8) MyNumber = Fix(-99.8)

' Returns -100. ' Returns -99.

MyNumber = Int(-99.2) MyNumber = Fix(-99.2)

' Returns -100. ' 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

El logaritmo natural es el logaritmo de base e. La constante e es aproximadamente 2,718282.

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:

Lnn(x) = Ln(x) / Ln(n)

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.

El valor de nmero determina cmo NmAleat genera un nmero aleatorio:

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 ] )

La sintaxis de la funcin Redondear consta de los argumentos siguientes:


Argumento Descripcin Requerido. Expresin numrica que se va a redondear. Opcional. Nmero que indica cuntas posiciones decimales se incluyen a la derecha del separador decimal en el nmero redondeado. Si se omite, la funcin redondea al nmero entero ms prximo.

expresin nmposicionesdecimales

Signo (funcin)
Mostrar todo Devuelve un valor de tipo Variant (Integer) que indica el signo de un nmero.

Sintaxis

Signo(nmero)

El argumento nmero requerido puede ser cualquier expresin numrica vlida.

Valores devueltos
Si el valor de nmero es Mayor que cero Igual que cero Menor que cero Signo devuelve 1 0 -1

Comentarios

El signo del argumento nmero determina el valor devuelto de la funcin Signo.

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.

El resultado se encuentra en el intervalo de -1 a 1.

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.

' Set default.

' 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

CuadroMsj(pregunta, [botones ], [ttulo ], [archivoDeAyuda ], [contexto ] )

La sintaxis de la funcin CuadroMsj 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 numrica que es la suma de valores que especifica el nmero y tipo de botones que se van a mostrar, el estilo de icono que se va a utilizar, la identidad del botn predeterminado y la modalidad del cuadro de mensaje. Si se omite, el valor predeterminado de botones es 0. 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 identifica el archivo de Ayuda que hay que utilizar para proporcionar ayuda contextual para el 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

botones

ttulo

archivoDeAyuda

contexto

Valores

Los valores del argumento botones son:


Constante vbOKOnly vbOKCancel vbAbortRetryIgnore vbYesNoCancel vbYesNo vbRetryCancel vbCritical vbQuestion vbExclamation vbInformation vbDefaultButton1 vbDefaultButton2 vbDefaultButton3 vbDefaultButton4 vbApplicationModal Valor 0 1 2 3 4 5 16 32 48 64 0 256 512 768 0 Descripcin Se muestra slo el botn Aceptar. Se muestran los botones Aceptar y Cancelar. Se muestran los botones Anular, Reintentar y Omitir. Se muestran los botones S, No y Cancelar. Se muestran los botones S y No. Se muestran los botones Reintentar y Cancelar. Se muestra el icono Mensaje crtico. Se muestra el icono Consulta de advertencia . Se muestra el icono Mensaje de advertencia . Se muestra el icono Mensaje de informacin. El primer botn es el predeterminado. El segundo botn es el predeterminado. El tercer botn es el predeterminado. El cuarto botn es el predeterminado. Aplicacin modal; el usuario debe responder al cuadro de mensaje antes de continuar con el trabajo en la aplicacin activa. Sistema modal; se suspenden todas las aplicaciones hasta que el usuario responda al cuadro de mensaje. Agrega el botn Ayuda al cuadro de mensaje. Especifica la ventana del cuadro de mensaje como ventana de primer plano. El texto se alinea a derecha. Especifica que el texto debe aparecer para ser ledo de derecha a izquierda en los sistemas hebreo y rabe.

vbSystemModal

4096

vbMsgBoxHelpButton VbMsgBoxSetForeground vbMsgBoxRight vbMsgBoxRtlReading

16384 65536 524288 1048576

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

nombres en cualquier parte del cdigo en lugar de los valores reales.

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.

Dim Msg, Style, Title, Help, Ctxt, Response, MyString

Msg = "Do you want to continue?" Style = vbYesNo + vbCritical + vbDefaultButton2 Title = "MsgBox Demonstration" Help = "DEMO.HLP" Ctxt = 1000

Response = MsgBox(Msg, Style, Title, Help, Ctxt)

If Response = vbYes Then MyString = "Yes" Else

' User chose Yes.

' Perform some action.

' User chose No. ' Perform some action.

MyString = "No" End If

Varios
CallByName (funcin)
Mostrar todo Ejecuta un mtodo de un objeto, o establece o devuelve una propiedad de un objeto.

Sintaxis

CallByName(objeto, procname, calltype [, args()])

La sintaxis de la funcin CallByName tiene los siguientes argumentos:


Argumento Descripcin Requerido. Variant (Object). Nombre del objeto en el que se ejecutar la funcin. Requerido. Variant (String). Expresin de cadena que contiene el nombre de una propiedad o mtodo del objeto. Requerido. Constante. Constante de tipo vbCallType que representa el tipo de procedimiento que se est llamando. Opcional. Variant (Array).

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)

El argumento color es un nmero entero del 0 al 15.

Valores

El argumento color tiene los siguientes valores:


Nmero 0 1 2 3 4 5 6 7 Color Negro Azul Verde Cian Rojo Magenta Amarillo Blanco Nmero 8 9 10 11 12 13 14 15 Color Gris Azul claro Verde claro Cian claro Rojo claro Magenta claro Amarillo claro Blanco brillante

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.

Sub ChangeBackColor (ColorCode As Integer, _ MyForm As Form)

MyForm.BackColor = QBColor(ColorCode)

End Sub

RGB (funcin)
Mostrar todo Devuelve un valor de tipo Long que representa un valor de color RGB.

Sintaxis

RGB(rojo, verde, azul)

La sintaxis de la funcin RGB tiene estos argumentos:


Argumento Descripcin Requerido. Valor de tipo Variant (Integer). Nmero del 0 al 255, ambos inclusive, que representa el componente rojo del color. Requerido. Valor de tipo Variant (Integer). Nmero del 0 al 255, ambos inclusive, que representa el componente verde del color. Requerido. Valor de tipo Variant (Integer). Nmero del 0 al 255, ambos inclusive, que representa el componente azul del color.

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

RGBValue = RGB(I, 64 + I, 128 + I) ' Same as RGB(75, 139, 203).

' Set the Color property of MyObject to Red. MyObject.Color = RGB(255, 0, 0)

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:

posicinDeImpresinActual + (n Mod ancho)

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

Choose(ndice, opcin-1 [, opcin-2] ... [, opcin-n] )

La sintaxis de la funcin Choose tiene los siguientes argumentos:


Argumento Descripcin Requerido. Expresin numrica o campo que devuelve un valor entre 1 y el nmero de opciones disponibles. Requerido. Expresin Variant que contiene una de las opciones posibles.

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

Cada vez que ceda temporalmente el procesador en un procedimiento de evento, asegrese

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.

If I Mod 1000 = 0 Then

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.

Vea algunos ejemplos Sintaxis

SiInm(expresin, parteverdadera, partefalsa)

La sintaxis de la funcin Silnm consta de los siguientes argumentos:


Argumento Descripcin Requerido. Expresin que se desea evaluar. Requerido. Valor o expresin que se devuelve si el valor de expresin es Verdadero. Requerido. Valor o expresin que se devuelve si el valor de expresin es Falso.

expresin parteverdadera partefalsa

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:

=Silnm([ReginPas]="Italia", "Italiano", "Algn otro idioma")

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:

=Silnm([Fecha de devolucin]<Fecha(),"VENCIDO",Silnm([Fecha de devolucin]=Fecha(),"Se debe","Por entregar"))

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.

Usar Silnm en cdigo VBA

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.

Sintaxis Conmutador(expr-1, valor-1, [ expr-2, valor-2 ], [expr-n, valor-n ] )

La sintaxis de la funcin Conmutador consta de los siguientes argumentos:


Argumento Descripcin Requerido. Expresin de tipo Variant que se va a evaluar. Requerido. Valor o expresin que se va a devolver si la correspondiente expresin es 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 devuelve un valor Nulo si:

Ninguna de las expresiones es Verdadero.

La primera expresin que es Verdadero tiene un valor correspondiente que es Nulo.

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.

Vea algunos ejemplos Sintaxis

Format(expresin [, formato ] [, primerdasemana ] [, primerasemanaao ] )

La sintaxis de la funcin Formato (Format) tiene los siguientes argumentos:


Argumento Descripcin Requerido. Cualquier expresin vlida. Opcional. Expresin de formato con nombre o definida por el usuario vlida. Opcional. Constante que especifica el primer da de la semana. Opcional. Constante que especifica la primera semana del ao.

expresin formato primerdasemana primerasemanaao

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

El argumento primerdasemana tiene los siguientes valores:


Constante vbUseSystem VbSunday vbMonday vbTuesday vbWednesday vbThursday vbFriday vbSaturday Valor 0 1 2 3 4 5 6 7 Descripcin Se utiliza la configuracin NLS API. Domingo (valor predeterminado) Lunes Martes Mircoles Jueves Viernes Sbado

El argumento primerasemanaao tiene los siguientes valores:


Constante vbUseSystem vbFirstJan1 vbFirstFourDays vbFirstFullWeek 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. Se comienza con la primera semana completa del ao.

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

Nmeros de serie de fecha y hora Cadenas

Cree sus propios formatos de cadena definidos por el usuario.

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

Si el valor de la propiedad Calendario (Calendar) es gregoriano y formato especifica el formato de

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).

Usar la funcin Formato en cdigo VBA

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")

MyStr = Format(MyTime, "h:m:s")

' 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".

MyStr = Format("This is it", ">")

Utilizar Formato con cadenas de longitud cero

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:

Dim varX As Variant Dim varStrX As Variant

' 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.

Vea algunos ejemplos Sintaxis

EnCad([iniciar ], cadena1, cadena2, [comparar ] )

La sintaxis de la funcin EnCad tiene estos argumentos:

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

cadena1 cadena2 comparar

Valores

Los valores del argumento comparar son:


Constante vbUseCompareOption vbBinaryCompare vbTextCompare vbDatabaseCompare Valor -1 0 1 2 Descripcin Realiza la comparacin mediante el valor de la instruccin Option Compare. Realiza una comparacin binaria. Realiza una comparacin textual. Slo Microsoft Office Access 2007. Realiza una comparacin basndose en la informacin de la base de datos.

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:

Izq([Direccin IP],(EnCad(1,[Direccin IP],".")-1))

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.

Usar EnCad en cdigo VBA

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.

' Search for "P".

' 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.

MyPos = Instr(1, SearchString, "W")

' Returns 0.

InStrRev (funcin) Mostrar todo Devuelve la posicin de una aparicin de una cadena en otra, desde el final de la cadena.

Sintaxis

InStrRev(comprobarcadena, coincidircadena, [iniciar ], [ comparar ] )

La sintaxis de la funcin InStrRev tiene estos argumentos:


Argumento Descripcin Requerido. Expresin de cadena que se busca. Requerido. Expresin de cadena que se busca. Opcional. Expresin numrica que establece la posicin inicial para cada bsqueda. Si se omite, se utiliza 1, lo que significa que la bsqueda comienza en la posicin del ltimo carcter. Si iniciar contiene un valor Nulo, se produce un error. Opcional. Valor numrico que indica el tipo de comparacin que se va a usar al evaluar subcadenas. Si se omite, se realiza una comparacin binaria. Vea la seccin Valores para obtener informacin sobre los valores.

comprobarcadena coincidircadena iniciar

comparar

Valores

El argumento comparar puede tener los valores siguientes:


Constante vbUseCompareOption vbBinaryCompare vbTextCompare vbDatabaseCompare Valor -1 0 1 2 Descripcin Realiza la comparacin mediante el valor de la instruccin Option Compare. Realiza una comparacin binaria. Realiza una comparacin textual. Slo Microsoft Office Access 2007. Realiza una comparacin basndose en la informacin de la base de datos.

Valores devueltos

InStrRev devuelve los siguientes valores:

Si

InStrRev devuelve 0 Nulo

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.

Lowercase = Lcase(UpperCase) ' Returns "hello world 1234"

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)

La sintaxis de la funcin Izq tiene estos argumentos:


Argumento Descripcin Requerido. Expresin de cadena cuyos caracteres situados ms a la izquierda se devuelven. Si cadena contiene el 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

Para determinar el nmero de caracteres de cadena, utilice la funcin Longitud.

NOTA

Utilice la funcin IzqB con datos byte incluidos en una cadena. En vez de especificar el nmero de

caracteres que se van a devolver, longitud especifica el nmero de bytes.

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)

La sintaxis de la funcin Longitud consta de los argumentos siguientes:


Argumento Descripcin Cualquier expresin de cadena vlida. Si cadena contiene el valor Nulo, se devuelve Nulo. Cualquier nombre de variable vlido. Si nombrevar contiene el valor Nulo, se devuelve Nulo. Si nombrevar es un valor de tipo Variant, Longitud lo trata de la misma manera que una cadena y siempre devuelve el nmero de caracteres que contiene.

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.

Name As String * 10 Address As String * 30 End Type

Dim Customer As CustomerRecord

' Declare variables.

Dim MyInt As Integer, MyCur As Currency Dim MyString, MyLen

MyString = "Hello World" MyLen = Len(MyInt) MyLen = Len(Customer) MyLen = Len(MyString) MyLen = Len(MyCur)

' Initialize variable.

' 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.

RecortarIzq, RecortarDer y Recortar (funciones)


Mostrar todo Devuelven un valor de tipo Variant (String) que contiene una copia de una cadena especificada sin espacios iniciales (RecortarIzq), sin espacios finales (RecortarDer) o sin ambos (Recortar).

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->

"

' Initialize string.

TrimString = LTrim(MyString) ' TrimString = "<-Trim-> ".

TrimString = RTrim(MyString)

' TrimString = "

<-Trim->".

TrimString = LTrim(RTrim(MyString)) ' TrimString = "<-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

Medio(cadena, iniciar, [longitud ] )

La sintaxis de la funcin Medio tiene estos argumentos:


Argumento Descripcin Requerido. ">Expresin de cadena de la que se devuelven caracteres. Si cadena contiene un valor Nulo, se devuelve Nulo. Requerido. Valor de tipo Long. Posicin de carcter en la cadena donde comienza la parte que se va a devolver. Si el valor de iniciar es mayor que el nmero de caracteres de cadena, Medio devuelve una cadena de longitud cero (""). Opcional. Valor de tipo Variant (Long). Nmero de caracteres que se van a devolver. Si se omite o el texto contiene menos caracteres que el valor de longitud (incluido el carcter de iniciar), se devuelven todos los caracteres desde la posicin iniciar hasta el final de la cadena.

cadena

iniciar

longitud

Comentarios

Para determinar el nmero de caracteres de cadena, utilice la funcin Longitud.

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

MyString = "Mid Function Demo"

' Create text string.

FirstWord = Mid(MyString, 1, 3) LastWord = Mid(MyString, 14, 4) MidWords = Mid(MyString, 5)

' 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.

MyNewString = Mid(MyString, 3, 4) ' Returns ""CdEf"

MyNewString = MidB(MyString, 3, 4) ' Returns ""bC"

MyNewString = MidMbcs(MyString, 3, 4) ' Returns "bCd"

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

Reemplazar(expresin, buscar, reemplazar, [iniciar], [contar], [comparar])

La sintaxis de la funcin Reemplazar tiene estos argumentos:


Argumento Descripcin Requerido. Expresin de cadena que contiene la subcadena que se va a reemplazar. Requerido. Subcadena que se busca. Requerido. Subcadena de reemplazo. Opcional. Posicin en expresin donde va a comenzar la bsqueda de la subcadena. Si se omite, se supone que el valor es 1. Opcional. Nmero de sustituciones de subcadena que se van a realizar. Si se omite, el valor predeterminado es 1, que significa que se van a realizar todas las sustituciones posibles. Opcional. Valor numrico que indica el tipo de comparacin que se va a usar al evaluar las subcadenas. Vea la seccin Valores para obtener informacin sobre los valores.

expresin buscar reemplazar iniciar

contar

comparar

Valores

El argumento comparar puede tener los valores siguientes:


Constante vbUseCompareOption vbBinaryCompare vbTextCompare vbDatabaseCompare Valor 1 0 1 2 Descripcin Realiza la comparacin mediante el valor de la instruccin Option Compare. Realiza una comparacin binaria. Realiza una comparacin textual. Slo Microsoft Office Access 2007. Realiza una comparacin basndose en la informacin de la base de datos.

Valores devueltos

Reemplazar devuelve los siguientes valores:


Si Reemplazar devuelve Cadena de longitud cero (""). Un error. Copia de expresin. Copia de expresin con todas las apariciones de buscar eliminadas. Cadena de longitud cero. Copia de expresin.

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)

La sintaxis de la funcin Der tiene estos argumentos:

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

Para determinar el nmero de caracteres de cadena, utilice la funcin Longitud.

NOTA

Utilice la funcin DerB con datos byte incluidos en una cadena. En vez de especificar el nmero de

caracteres que se devuelven, longitud especifica el nmero de bytes.

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)

El argumento nmero requerido es el nmero de espacios que se van a incluir en la cadena.

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

CompCadena(cadena1, cadena2, [comparar ] )

La sintaxis de la funcin CompCadena tiene estos argumentos:


Argumento Descripcin Requerido. Cualquier expresin de cadena vlida. Requerido. Cualquier expresin de cadena vlida. Opcional. Especifica el tipo de comparacin de cadenas. Si el argumento comparar es Nulo, se genera un error. Si se omite comparar, el valor de Option Compare determina el tipo de comparacin.

cadena1 cadena2 comparar

Valores

Los valores del argumento comparar son:


Constante vbUseCompareOption vbBinaryCompare vbTextCompare vbDatabaseCompare Valor -1 0 1 2 Descripcin Realiza la comparacin mediante el valor de la instruccin Option Compare. Realiza una comparacin binaria. Realiza una comparacin textual. Slo Microsoft Office Access 2007. Realiza una comparacin basndose en la informacin de la base de datos.

Valores devueltos

La funcin CompCadena tiene los siguientes valores devueltos:


Si CompCadena devuelve -1 0 1 Nulo

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

ConvCadena(cadena, conversin, [cdigo_idioma ] )

La sintaxis de la funcin ConvCadena tiene estos argumentos:


Argumento Descripcin Requerido. Expresin de cadena que se va a convertir. Requerido. Valor de tipo Integer. Suma de los valores que especifican el tipo de conversin que se va a llevar a cabo. Opcional. Identificador de configuracin regional si es distinto del identificador de configuracin regional del sistema, que es el predeterminado.

cadena conversin

cdigo_idioma

Valores

Los valores del argumento conversin son:


Constante vbUpperCase vbLowerCase vbProperCase vbWide* vbNarrow* vbKatakana** vbHiragana** vbUnicode Valor 1 2 3 4* 8* 16** 32** 64 Descripcin Convierte la cadena en maysculas. Convierte la cadena en minsculas. Convierte la primera letra de cada palabra de la cadena en maysculas. Convierte los caracteres estrechos (un solo bit) de la cadena en caracteres anchos (doble bit). Convierte los caracteres anchos (doble bit) de la cadena en caracteres estrechos (un solo bit). Convierte los caracteres Hiragana de la cadena en caracteres Katakana. Convierte los caracteres Katakana de la cadena en caracteres Hiragana. Convierte la cadena en Unicode mediante la pgina de cdigos predeterminada del sistema. (No est disponible en sistemas Macintosh.) Convierte la cadena Unicode en la pgina de cdigos predeterminada del sistema. (No est disponible en sistemas Macintosh.)

vbFromUnicode

128

*Se aplica a las configuraciones regionales de Asia Oriental.

**Se aplica slo a Japn.

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.

Access > Automatizacin y programabilidad

Acciones de macro
Temas en "Acciones de macro" 71 elementos

Accin de macro AgregarMen

Accin de macro AplicarFiltro

Bip (accin de macro)

CancelarEvento (accin de macro)

BorrarErrorDeMacro (accin de macro)

Accin de macro Cerrar

CerrarBaseDeDatos (accin de macro)

CopiarArchivoDeBaseDeDatos (accin de macro)

CopiarObjeto (accin de macro)

EliminarObjeto (accin de macro)

Eco (accin de macro)

BuscarSiguiente (accin de macro)

Accin de macro BuscarRegistro

IrAControl (accin de macro)

IrAPgina (accin de macro)

IrARegistro (accin de macro)

Elemento de lenguaje oculto

RelojDeArena (accin de macro)

BloquearPanelDeExploracin (accin de macro)

Maximizar (accin de macro)

Minimizar (accin de macro)

DesplazarTamao (accin de macro)

CuadroMsj (accin de macro)

DesplazarseA (accin de macro)

AlOcurrirError (accin de macro)

AbrirPginaAccesoADatos (accin de macro)

AbrirDiagrama (accin de macro)

AbrirFormulario (accin de macro)

AbrirFuncin (accin de macro)

AbrirMdulo (accin de macro)

Accin de macro AbrirConsulta

Accin de macro AbrirInforme

Accin de macro AbrirProcedimientoAlmacenado

Accin de macro AbrirTabla

Accin de macro AbrirVista

Accin de macro SalidaHacia

Accin de macro Imprimir

Accin de macro Salir

QuitarTodasLasVariablesTemporales (accin de macro)

QuitarVariableTemporal (accin de macro)

Accin de macro CambiarNombre

Accin de macro RepintarObjeto

Accin de macro NuevaConsulta

Accin de macro Restaurar

Accin de macro EjecutarAplicacin

Accin de macro EjecutarCdigo

Accin de macro EjecutarComando

Accin de macro EjecutarMacro

EjecutarImportacinExportacinGuardada (accin de macro)

Accin de macro EjecutarSQL

Accin de macro Guardar

EncontrarRegistro (accin de macro)

Accin de macro SeleccionarObjeto

Accin de macro EnviarTeclas

Accin de macro EnviarObjeto

DefinirCategorasMostradas (accin de macro)

Accin de macro EstablecerElementoDelMen

DefinirPropiedad (accin de macro)

DefinirVariableTemporal (accin de macro)

Accin de macro EstablecerValor

Accin de macro EstablecerAdvertencias

Accin de macro MostrarTodosRegistros

Accin de macro MostrarBarraDeHerramientas

PasoAPaso (accin de macro)

Accin de macro DetenerTodasMacros

Accin de macro DetenerMacro

Accin de macro TransferirBaseDatos

TransferirListaDeSharePoint (accin de macro)

Accin de macro TransferirHojaClculo

Accin de macro TransferirBaseDeDatosSQL

Accin de macro TransferirTexto

Access > Automatizacin y programabilidad

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)

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

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)

Imagen (Picture) (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)

You might also like