Anda di halaman 1dari 57

Mtodo GetHiddenAttribute

Vea tambin Se aplica a Ejemplo Especficos


El mtodo GetHiddenAttribute devuelve el valor de atributo oculto de un objeto de
Microsoft Access en el cuadro de dilogo Propiedades del objeto, que est disponible al
seleccionar el objeto en la ventana Base de datos y hacer clic en Propiedades en el men
Ver.
object.GetHiddenAttribute(objecttype, objectname)
El mtodo GetHiddenAttribute tiene los siguientes argumentos.
Argumento

Descripcin (Description)

objeto

Opcional. El objeto Application.

tipoobjeto

Una de las siguientes constantes intrnsecas:


acDataAccessPage
acDiagram
acForm
acMacro
acModule
acQuery
acReport
acServerView
acStoredProcedure
acTable
Es necesario especificar una constante para el argumento objecttype;
acDefault no es una entrada vlida.

nombreobjeto

Una expresin de cadena que identifica el nombre del objeto de


Access.

Comentarios
El mtodo GetHiddenAttribute (junto con el mtodo SetHiddenAttribute) ofrece una
forma de cambiar el atributo oculto de un objeto desde cdigo de Visual Basic. Con estos
mtodos, se puede establecer o leer la opcin de oculto disponible en el cuadro de dilogo
Propiedades del objeto.
Si el usuario establece los atributos de oculto mediante una casilla de verificacin, el
mtodo GetHiddenAttribute devuelve Verdadero si el valor de la opcin es S (la casilla
de verificacin est activada) o Falso si es No (la casilla de verificacin est desactivada).

Pgina

338

Por ejemplo, para establecer una opcin de esta clase con el mtodo SetHiddenAttribute,
especifique Verdadero o Falso en el argumento de valor, como se muestra a continuacin:
Application.SetHiddenAttribute acTable,"Customers", True

Mtodo GetOption
El mtodo GetOption devuelve el valor actual de una opcin del cuadro de dilogo
Opciones (comando Opciones del men Herramientas). Variant.
expresin.GetOption(OptionName)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
OptionName String requerida. El nombre de la opcin. Si desea ver una lista completa de
los valores posibles del argumento nombreOpcin, vea Establecer opciones desde Visual
Basic.

Comentarios
Los mtodos GetOption y SetOption proporcionan una forma de cambiar opciones del
entorno desde el cdigo de Visual Basic. Con estos mtodos se puede establecer o leer
cualquier opcin disponible en el cuadro de dilogo Opciones, excepto las opciones de la
ficha Mdulos.
El valor disponible de la opcin a asignar depende del tipo de opcin. Hay tres tipos
generales de opciones:

Opciones S/No que se establecen activando o desactivando una casilla de


verificacin.

Opciones que se establecen escribiendo una cadena o un valor numrico.

Opciones predefinidas que se eligen de un cuadro de lista, cuadro combinado o


grupo de opciones.

En el caso de las opciones que el usuario establece mediante una casilla de verificacin, el
mtodo GetOption devuelve True (-1) si el valor de la opcin es S (la casilla de
verificacin est activada) o False (0) si es No (la casilla de verificacin est desactivada).
Para establecer una opcin de este tipo mediante el mtodo SetOption, especifique
Verdadero o Falso en el argumento valor, como muestra este ejemplo:
Application.SetOption "Show Status Bar", True

Pgina

339

Para las opciones que el usuario establece escribiendo una cadena o valor numrico, el
mtodo GetOption devuelve el valor tal y como aparece en el cuadro de dilogo. Este
ejemplo devuelve una cadena que contiene el valor del margen izquierdo.
Dim varSetting As Variant
varSetting = Application.GetOption("Left Margin")
Par establecer este tipo de opcin mediante el mtodo SetOption, especifique la cadena o
valor numrico que se escribira en el cuadro de dilogo. Este ejemplo establece el modelo
de formulario predeterminado a ModeloPedidos:
Application.SetOption "Form Template", "OrderTemplate"
En el caso de opciones cuyos valores se eligen en cuadros de lista o cuadros combinados, el
mtodo GetOption devuelve un nmero que corresponde a la posicin del valor en la lista.
La indizacin empieza desde el cero y, por tanto, el mtodo GetOption devuelve cero para
el primer elemento, 1 para el segundo, y as sucesivamente. Por ejemplo, si la opcin Tipo
predeterminado de campo de la ficha Tablas/Consultas se establece en Autonumrico,
para el sexto elemento de la lista el mtodo GetOption devuelve 5.
Para establecer este tipo de opcin, especifique la posicin numrica de la opcin dentro de
la lista como el argumento valor para el mtodo SetOption. Este ejemplo establece la
opcin Tipo predeterminado de campo a AutoNumrico:
Application.SetOption "Default Field Type", 5
Para establecer las opciones restantes, se hace clic en un botn de opcin en un grupo de
opciones del cuadro de dilogo Opciones. En Visual Basic, para establecer estas opciones,
tambin se puede especificar la posicin de una opcin determinada del grupo de opciones.
A la primera opcin del grupo se le asigna el nmero cero, a la segunda el 1, y as
sucesivamente. Por ejemplo, si la opcin Comportamiento de la seleccin de la ficha
Formularios/Informes se establece en Parcialmente encuadrados, el mtodo GetOption
devuelve cero, como se muestra en el siguiente ejemplo:
Debug.Print Application.GetOption("Selection Behavior")
Para establecer una opcin que es miembro de un grupo de opciones, especifique el nmero
de ndice de la opcin dentro del grupo. Este ejemplo establece Comportamiento de la
seleccin a Totalmente encuadrados.
Application.SetOption "Selection Behavior", 1

Notas

Al usar el mtodo GetOption o SetOption para establecer una opcin del cuadro de
dilogo Opciones, no es necesario especificar la ficha en la que se encuentra.

Pgina

340

Con el mtodo GetOption o SetOption no se puede leer ni establecer ninguna


opcin de la ficha Mdulo del cuadro de dilogo Opciones.

Si se asigna el valor que devuelva el mtodo GetOption a una variable, sta debe
ser declarada como Variant.

Si su base de datos puede ejecutarse en una versin de Microsoft Access para un


lenguaje distinto al que us para crearlo, deber escribir en ingls los argumentos
los mtodos GetOption y SetOption.

Al salir de Microsoft Access, puede devolver las opciones a sus valores originales con el
mtodo SetOption. Podra usar variables pblicas que almacenaran los valores originales.
De este modo, se podra incluir cdigo para restablecer las opciones en el procedimiento
del evento Close de un formulario, o en un procedimiento de salida personalizado que el
usuario hubiera de ejecutar para salir de la aplicacin.

Mtodo GoToControl
El mtodo GoToControl lleva a cabo la accin IrAControl en Visual Basic.
expresin.GoToControl(ControlName)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
ControlName Variant requerida. Una expresin de cadena que es el nombre de un control
en el formulario u hoja de datos activa.

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
Use slo el nombre del control en el argumento nombrecontrol, no la sintaxis completa.
Para este argumento tambin puede usar una variable declarada como un tipo de datos
Control.
Dim ctl As Control
Set ctl = Forms!Form1!Field3
DoCmd.GoToControl ctl.Name
Tambin puede usar el mtodo SetFocus para trasladar el enfoque a un control en un
formulario o a cualquiera de sus subformularios, o a un campo de una tabla, consulta u hoja
de datos abierta del formulario. Este es el mtodo preferido para trasladar el enfoque en
Visual Basic, especialmente a los controles de los subformularios y los subformularios

Pgina

341

anidados, porque puede usar la sintaxis completa para especificar el control al que desea
trasladarse.

Ejemplo
El siguiente ejemplo utiliza el mtodo GoToControl para trasladar el enfoque al campo
IdEmpleado:
DoCmd.GoToControl "EmployeeID"

Mtodo GoToPage
Mtodo GoToPage aplicable al objeto Formulario.
El mtodo GoToPage lleva el enfoque al primer control de la pgina especificada del
formulario activo.
expresin.GoToPage(PageNumber, Right, Down)
expresin Requerida. Expresin que devuelve uno de los objetos arriba mencionados.
PageNumber Long requerido. Una expresin numrica que es un nmero de pgina vlido
para el formulario activo.
Right Long opcional. Una expresin numrica que es un valor vlido de desplazamiento
horizontal (en twips) desde el margen izquierdo de la ventana a la parte de la pgina que se
ha de mostrar.
Down Long opcional. Una expresin numrica que es un valor vlido de desplazamiento
vertical desde la parte superior de la ventana a la parte de la pgina que se ha de mostrar.
Mtodo GoToPage aplicable al objeto DoCmd.
El mtodo GoToPage del objeto DoCmd lleva a cabo la accin IrAPgina en Visual Basic.
Para obtener ms informacin acerca de cmo funcionan la accin y sus argumentos,
consulte el tema de la accin.
expresin.GoToPage(PageNumber, Right, Down)

Pgina

342

expresin Requerida. Expresin que devuelve uno de los objetos arriba mencionados.
PageNumber Variant requerida. Una expresin numrica que es un nmero de pgina
vlida para el formulario activo. Si deja en blanco este argumento, el enfoque permanece en
la pgina actual. Puede usar los argumentos derecho y abajo para mostrar la parte de la
pgina que desea ver.
Right Variant opcional. Una expresin numrica que es una compensacin horizontal
vlida para la pgina.
Down Variant opcional. Una expresin numrica que es una compensacin vertical vlida
para la pgina.

Comentarios
Comentarios aplicables al objeto Formulario.
Cuando use este mtodo para desplazarse a la pgina especificada de un formulario, el
enfoque lo recibir el primer control de la pgina, como se ha definido en el orden de
tabulacin del formulario. Para desplazarse a un control determinado del campo, use el
mtodo SetFocus.
Puede usar el mtodo GoToPage si ha creado saltos de pgina en un formulario para
agrupar informacin relacionada. Por ejemplo, podra haber un formulario Empleados con
informacin personal en la primera pgina, informacin laboral en la segunda pgina e
informacin de ventas en la tercera pgina. Con el mtodo GoToPage podra desplazarse a
la pgina deseada.
Puede usar los argumentos derecha y abajo para formularios con pginas ms grandes que
la ventana de Microsoft Access. Utilice el argumento nmeroPgina para desplazarse a la
pgina deseada y los argumentos derecha y abajo para mostrar la parte de la pgina que
desea ver. Microsoft Access muestra la parte de la pgina que es el desplazamiento desde la
esquina superior izquierda de la ventana indicado en los argumentos derecha y abajo.
Comentarios aplicables al objeto DoCmd.
Las unidades de los argumentos derecho y abajo se expresan en twips.
Si especifica los argumentos derecho y abajo y deja en blanco el argumento pginanmero,
debe incluir la coma del argumento pginanmero. Si no especifica los argumentos
derecho y abajo, no use una coma a continuacin del argumento pginanmero.

Pgina

343

El mtodo GoToPage del objeto DoCmd se agreg para proporcionar compatibilidad hacia
atrs para ejecutar la accin GoToPage en el cdigo Visual Basic en Microsoft Access 95.
Se recomienda que en su lugar utilice el mtodo GoToPage existente del objeto Form.

Ejemplo
Ejemplo aplicable al objeto Formulario.
Este ejemplo usa el mtodo GoToPage para desplazar el enfoque de la segunda pgina del
formulario Clientes a la posicin especificada en los argumentos derecha y abajo.
Forms!Customer.GoToPage 2, 1440, 600
Ejemplo aplicable al objeto DoCmd.
El siguiente ejemplo utiliza el mtodo GoToPage para trasladar el enfoque a la posicin
especificada por las compensaciones horizontal y vertical de la segunda pgina del
formulario activo:
DoCmd.GoToPage 2, 1440, 567

Mtodo GoToRecord
El mtodo GoToRecord lleva a cabo la accin IrARegistro en Visual Basic.
expresin.GoToRecord(ObjectType, ObjectName, Record, Offset)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
ObjectType AcDataObjectType opcional.
AcDataObjectType puede ser una de estas constantes AcDataObjectType.
acActiveDataObject valor predeterminado
acDataForm
acDataFunction
acDataQuery
acDataServerView
acDataStoredProcedure
acDataTable

Pgina

344

ObjectName Variant opcional. Una expresin de cadena que es el nombre vlido de un


objeto del tipo seleccionado por el argumento tipoobjeto.
Record AcRecord opcional.
AcRecord puede ser una de estas constantes AcRecord.
acFirst
acGoTo
acLast
acNewRec
acNext valor predeterminado
acPrevious
Si deja en blanco este argumento, se asume la constante predeterminada (acNext).
Offset Variant opcional. Una expresin numrica que representa el nmero de registros
hacia adelante o hacia atrs al que trasladarse si se especifica acNext o acPrevious en el
argumento registro o el registro al que trasladarse si especifica acGoTo en el argumento
registro. La expresin debe dar como resultado un nmero de registro vlido.

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
Si deja en blanco los argumentos tipoobjeto y nombreobjeto (se asume la constante
predeterminada, acActiveDataObject, para tipoobjeto), se asume el objeto activo.
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la
coma del argumento. Si deja en blanco uno o ms argumentos de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo utiliza el mtodo GoToRecord para hacer activo al sptimo registro
del formulario Empleados:
DoCmd.GoToRecord acDataForm, "Employees", acGoTo, 7

Mtodo GUIDFromString
Pgina

345

La funcin GUIDFromString convierte una cadena a un GUID, que es una matriz de tipo
Byte. Variant.
expresin.GUIDFromString(String)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
String Variant requerida. Una expresin de cadena que da como resultado un GUID en
forma de cadena.

Comentarios
La mquina de la base de datos Microsoft Jet almacena GUID como matrices de tipo Byte.
No obstante, Microsoft Access no puede devolver datos Byte desde un control de un
formulario o un informe. Para devolver el valor de un GUID desde un control, debe
convertirlo a una cadena. Para convertir un GUID a una cadena, utilice la funcin
StringFromGUID. Para convertir una cadena a un GUID, utilice la funcin
GUIDFromString.

Mtodo Hourglass
El mtodo Hourglass lleva a cabo la accin RelojDeArena en Visual Basic.
expresin.Hourglass(HourglassOn)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
HourglassOn Variant requerida. Use True (-1) para mostrar el icono del reloj de arena (u
otro icono que haya elegido). Use False (0) para mostrar el puntero normal del mouse.

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.

Ejemplo
El siguiente ejemplo utiliza el mtodo Hourglass para mostrar un icono reloj de arena (o
cualquier otro icono que haya elegido) mientras se ejecuta el cdigo Visual Basic:
DoCmd.Hourglass True

Pgina

346

Mtodo hWndAccessApp
El mtodo hWndAccessApp se puede usar para determinar el controlador asignado por
Microsoft Windows a la ventana principal de Microsoft Access.
expresin.hWndAccessApp
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.

Comentarios
El mtodo hWndAccessApp devuelve un valor Entero largo establecido por Microsoft
Access y es de slo lectura.
Puede utilizar este mtodo en Visual Basic cuando efecte llamadas a las funciones de
interfaz de programacin de la aplicacin (API) de Windows o a otros procedimientos
externos que requieran un controlador de ventanas como argumento.
Para obtener el controlador para una ventana que contiene un objeto de Microsoft Access
como un formulario o informe, utilice la propiedad CVent (hWnd

Mtodo HyperlinkPart
El mtodo HyperlinkPart devuelve informacin acerca de los datos almacenados como
tipo de datos Hipervnculo. String.
expresin.HyperlinkPart(Hyperlink, Part)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
Hyperlink Variant requerida. Un Variant que representa los datos almacenados en un
campo Hipervnculo.
Part AcHyperlinkPart opcional. El valor del argumento part es una constante intrnseca
que representa la informacin que desea que sea devuelta por el mtodo HyperlinkPart.
AcHyperlinkPart puede ser una de estas constantes AcHyperlinkPart.
acAddress. La parte direccin de un campo Hipervnculo.
acDisplayedValue valor predeterminado. El texto subrayado que se muestra en un
hipervnculo.
acDisplayText. La parte textopresentacin de un campo Hipervnculo.
acFullAddress. Las partes address y subaddress de un campo Hipervnculo delimitado por
un carcter "#".

Pgina

347

acScreenTip. La parte de sugerencia de un campo Hipervnculo.


acSubAddress. La parte subdireccin de un campo Hipervnculo.

Comentarios
El mtodo HyperlinkPart se utiliza para devolver uno de los tres valores de un campo
Hipervnculo o el valor mostrado. El valor devuelto depende del valor del argumento parte.
El argumento parte es opcional. Si no se utiliza, la funcin devuelve el valor que Microsoft
Access muestra para el hipervnculo (que se corresponde al valor acDisplayedValue del
argumento parte). Los valores devueltos pueden ser una de las cuatros partes del campo
Hipervnculo (textopresentacin, direccin, subdireccin o sugerencia), la direccin
completa, direccin#subdireccin, o el valor que muestra Microsoft Access para el
hipervnculo.
Nota Si utiliza el mtodo HyperlinkPart en una consulta, el argumento part es
obligatorio y no se puede usar las constantes enumeradas anteriormente, sino que el valor
real.
Cuando se proporciona un valor en la parte textopresentacin de un campo Hipervnculo, el
valor mostrado por Microsoft Access ser el del valor textopresentacin. Cuando no hay
ningn valor en la parte textopresentacin de un campo Hipervnculo, el valor mostrado
ser la parte direccin o subdireccin del campo Hipervnculo, dependiendo del valor que
se presenta primero en el campo.
La siguiente tabla muestra los valores devueltos por el mtodo HyperlinkPart para los
datos almacenados en un campo Hipervnculo.
Datos del campo Hipervnculo

Valores devueltos
HyperlinkPart

por

#http://www.microsoft.com#

acDisplayedValue:
http://www.microsoft.com

el

mtodo

acDisplayText:
acAddress: http://www.microsoft.com
acSubAddress:
acScreenTip:
acFullAddress:
http://www.microsoft.com
Microsoft#http://www.microsoft.com#

acDisplayedValue: Microsoft

Pgina

348

acDisplayText: Microsoft
acAddress: http://www.microsoft.com
acSubAddress:
acScreenTip:
acFullAddress:
http://www.microsoft.com
Clientes#http://www.microsoft.com#Formulario acDisplayedValue: Clientes
Clientes
acDisplayText: Clientes
acAddress: http://www.microsoft.com
acSubAddress: Formulario Clientes
acScreenTip:
acFullAddress:
http://www.microsoft.com#Formulario
Cliente
##Formulario Cliente#Escribir informacin

acDisplayedValue: Formulario Clientes


acDisplayText:
acAddress:
acSubAddress: Formulario Clientes
acScreenTip: Escribir informacin
acFullAddress: #Formulario Cliente

Cuando se agrega una parte direccin a un campo Hipervnculo usando el cuadro de


dilogo Insertar hipervnculo (disponible al hacer clic en Hipervnculo en el men
Insertar) o escribiendo una direccin directamente en un campo Hipervnculo, Microsoft
Access agrega los dos smbolos # que delimitan las partes de los datos del hipervnculo.
Puede agregar o modificar la parte textopresentacin de un campo hipervnculo haciendo
clic con el botn secundario en un hipervnculo de una tabla, formulario o informe, apuntar

Pgina

349

a Hipervnculo en el men contextual, y luego escribir el texto de presentacin en el


cuadro Texto para mostrar.
Cuando se agregan datos directamente a un campo hipervnculo, debe incluir los dos
smbolos # para delimitar las partes de los datos del hipervnculo.

Ejemplo
El siguiente ejemplo utiliza las cuatro constantes del argumento parte para mostrar la
informacin devuelta por el mtodo HyperlinkPart para cada registro de una tabla que
contenga un campo Hipervnculo. Para probar este ejemplo, pegue el procedimiento
MostrarPartesDeHipervnculo en la seccin de Declaraciones de un mdulo. Puede llamar
al procedimiento MostrarPartesDeHipervnculo desde la ventana Depuracin, pasando al
mismo el nombre de una tabla que contenga hipervnculos y el nombre del campo que
contenga los datos del Hipervnculo. Por ejemplo:
:DisplayHyperlinkParts "MyHyperlinkTableName", "MyHyperlinkFieldName"
Public Sub DisplayHyperlinkParts(ByVal strTable As String, _
ByVal strField As String)
Dim rst As New ADODB.Recordset
Dim strMsg As String

rst.Open strTable, CurrentProject.Connection, _


adOpenForwardOnly, adLockReadOnly
' For each record in table.
Do Until rst.EOF
strMsg = "DisplayValue = " _
& HyperlinkPart(rst(strField), acDisplayedValue) _
& vbCrLf & "DisplayText = " _
& HyperlinkPart(rst(strField), acDisplayText) _
& vbCrLf & "Address = " _
& HyperlinkPart(rst(strField), acAddress) _
& vbCrLf & "SubAddress = " _
& HyperlinkPart(rst(strField), acSubAddress) _
& vbCrLf & "ScreenTip = " _
& HyperlinkPart(rst(strField), acScreenTip) _
& vbCrLf & "Full Address = " _
& HyperlinkPart(rst(strField), acFullAddress)
' Show parts returned by HyperlinkPart function.
MsgBox strMsg
rst.MoveNext

Pgina

350

Loop
End Sub
Cuando el mtodo HyperlinkPart se utiliza en una consulta, el argumento parte es
obligatorio. Por ejemplo, la siguiente instruccin SQL utiliza el mtodo HyperlinkPart
para devolver informacin acerca de los datos almacenados como tipo de datos
Hipervnculo en un campo de direccin URL de la tabla Vnculos:
SELECT Links.URL, HyperlinkPart([URL],0)
AS Display, HyperlinkPart([URL],1)
AS Name, HyperlinkPart([URL],2)
AS Addr, HyperlinkPart([URL],3)
AS SubAddr, HyperlinkPart([URL],4)
AS ScreenTip
FROM Links

Mtodo ImportXML
Importa datos y/o informacin de presentacin para objetos de Microsoft Access desde
archivos XML.
expresin.ImportXML(OrigenDatos, TransformarDatos, OtrasMarcas)
expresin Requerida. Expresin que devuelve un objeto Application.
OrigenDatos String requerida. El nombre y la ruta de acceso al archivo XML que se va a
importar.
TransformarDatos String opcional. El nombre del archivo XSL que se aplicar a los datos
XML de entrada.
OtrasMarcas Long opcional. Mscara de bit que especifica otros comportamientos
asociados con la importacin de XML. La tabla siguiente describe el comportamiento que
resulta de los valores especficos; se pueden agregar valores para especificar una
combinacin de comportamientos.
Valor

Descripcin

Sobrescribir El archivo de importacin sobrescribe sin preguntar el destino si es que ya existe.

No crear estructura De manera predeterminada, se crean nuevas estructuras. Si Sobrescribir no est


establecido, un aviso solicita al usuario el permiso para sobrescribir.

No importar datos De manera predeterminada, los datos se importan cuando se utiliza un documento de
datos para crear un esquema.

Pgina

351

Ejemplo
El ejemplo siguiente importa un archivo XML que representa una tabla denominada
Facturas en la base de datos actual. Access sobrescribe la tabla Facturas si es que existe.
Application.ImportXML _
DataSource:="C:\XMLData\Invoices.xml", _
OtherFlags:=1

Mtodo InsertLines
El mtodo InsertLines inserta una lnea o un grupo de lneas en el cdigo en un mdulo
estndar o un mdulo de clase.
expresin.InsertLines(Line, String)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
Line Long requerido. El nmero de la lnea en la que debe comenzar la insercin.
String String requerida. El texto que va a insertarse en el mdulo.

Comentarios
Al utilizar el mtodo InsertLines, todo el cdigo existente en la lnea especificada por el
argumento lnea se desplaza hacia abajo.
Para agregar varias lneas, incluya la constante intrnseca vbCrLf en los lugares de la
cadena que forma el argumento cadena en los que desee insertar finales de lnea. Esta
constante fuerza un retorno de carro y un fin de lnea.
Las lneas de un mdulo se numeran a partir de uno. Para determinar el nmero de lneas de
un mdulo, utilice la propiedad CountOfLines.

Ejemplo
El ejemplo siguiente crea un formulario nuevo, agrega un botn de comando y crea un
procedimiento de evento Click para el botn de comando:
Function ClickEventProc() As Boolean
Dim frm As Form, ctl As Control, mdl As Module
Dim lngReturn As Long
On Error GoTo Error_ClickEventProc

Pgina

352

' Create new form.


Set frm = CreateForm
' Create command button on form.
Set ctl = CreateControl(frm.Name, acCommandButton, , , , _
1000, 1000)
ctl.Caption = "Click here"
' Return reference to form module.
Set mdl = frm.Module
' Add event procedure.
lngReturn = mdl.CreateEventProc("Click", ctl.Name)
' Insert text into body of procedure.
mdl.InsertLines lngReturn + 1, vbTab & "MsgBox ""Way cool!"""
ClickEventProc = True
Exit_ClickEventProc:
Exit Function
Error_ClickEventProc:
MsgBox Err & " :" & Err.Description
ClickEventProc = False
Resume Exit_ClickEventProc
End Function

Mtodo InsertText
Mtodo InsertText aplicable al objeto Module.
El mtodo InsertText inserta una cadena de texto especificada en un mdulo estndar o en
un mdulo de clase.
expresin.InsertText(Text)
expresin Requerida. Expresin que devuelve uno de los objetos arriba mencionados.
Text String requerida. El texto que va a insertarse en el mdulo.
Mtodo InsertText aplicable al objeto Application.
El mtodo InsertText inserta la cadena de texto especificada en una aplicacin.
expresin.InsertText(Text, ModuleName)
expresin Requerida. Expresin que devuelve uno de los objetos arriba mencionados.
Pgina

353

Text String requerida. El texto que va a insertarse en el mdulo.


ModuleName String requerida. El nombre del mdulo de la aplicacin.

Comentarios
Al insertar una cadena mediante el mtodo InsertText, Microsoft Access sita el texto
nuevo al final del mdulo, despus de todos los dems procedimientos.
Para agregar varias lneas, incluya la constante intrnseca vbCrLf en los lugares de la
cadena que forma el argumento texto en los que desee insertar finales de lnea. Esta
constante fuerza un retorno de carro y un fin de lnea.
Para especificar en qu lnea se inserta el texto, utilice el mtodo InsertLines. Para insertar
cdigo en la seccin Declaraciones del mdulo, emplee el mtodo InsertLines en lugar del
mtodo InsertText.
Nota En versiones anteriores de Microsoft Access, el mtodo InsertText era un mtodo
del objeto Application. Todava puede utilizar el mtodo InsertText del objeto
Application, pero se recomienda utilizar el mtodo InsertText del objeto Module en su
lugar.

Ejemplo
Segn se aplica al objeto Module.
El ejemplo siguiente inserta una cadena de texto en un mdulo estndar:
Function InsertProc(strModuleName) As Boolean
Dim mdl As Module, strText As String
On Error GoTo Error_InsertProc
' Open module.
DoCmd.OpenModule strModuleName
' Return reference to Module object.
Set mdl = Modules(strModuleName)
' Initialize string variable.
strText = "Sub DisplayMessage()" & vbCrLf _
& vbTab & "MsgBox ""Wild!""" & vbCrLf _
& "End Sub"
' Insert text into module.
mdl.InsertText strText
InsertProc = True
Exit_InsertProc:
Pgina

354

Exit Function
Error_InsertProc:
MsgBox Err & ": " & Err.Description
InsertProc = False
Resume Exit_InsertProc
End Function

Mtodo Item
El mtodo Item devuelve un miembro determinado de una coleccin por posicin o por
tecla. Objeto Reference.
expresin.Item(var)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
var Variant requerida. Una expresin que especifica la posicin de un miembro de la
coleccin a la que se hace referencia en el argumento expression. Si es una expresin
numrica, el argumento var debe ser un nmero desde el 1 hasta el valor de la propiedad
Cuenta (Count) de la coleccin. Si es una expresin de cadena, el argumento var debe ser
el nombre de un miembro de la coleccin.

Comentarios
Si el valor proporcionado por el argumento var no coincide con ningn miembro de la
coleccin, se producir un error.
El mtodo Item es el miembro predeterminado de la coleccin References, por lo que no
es necesario que se especifique de forma explcita. Por ejemplo, las siguientes dos lneas de
cdigo son equivalentes:
Debug.Print References(1).Name
Debug.Print References.Item(1).Name

Mtodo Line
El mtodo Line dibuja lneas y rectngulos en un objeto Informe (Report) cuando se
produce el evento Print.
expresin.Line(flags, x1, y1, x2, y2, color)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.

Pgina

355

flags Integer requerido.


x1 Single requerido. El valor que indica la coordenada del punto de origen de la lnea o del
rectngulo. Las propiedades de escala (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight y
ScaleWidth) del objeto Report especificadas por el argumento objeto determinan la
unidad de medida utilizada. Si se omite este argumento, la lnea empieza en la posicin que
indica la propiedad CurrentX.
y1 Single requerido. El valor que indica la coordenada del punto de origen de la lnea o del
rectngulo. Las propiedades de escala (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight y
ScaleWidth) del objeto Report especificadas por el argumento objeto determinan la
unidad de medida utilizada. Si se omite este argumento, la lnea empieza en la posicin que
indica la propiedad CurrentY.
x2 Single requerido. El valor que indica la coordenada del punto final de la lnea que se
desea dibujar. Este argumento es obligatorio.
y2 Single requerido. El valor que indica la coordenada del punto final de la lnea que se
desea dibujar. Este argumento es obligatorio.
color Long requerido. Valor que indica el color RGB (rojo, verde y azul) que se utiliza
para dibujar la lnea. Si se omite este argumento, se utilizar el valor de la propiedad
ColorDelTexto (ForeColor). Puede usar la funcin RGB o la funcin QBColor para
especificar el color.

Comentarios
Slo puede usar este mtodo en un procedimiento de evento o una macro especificada por
las propiedades de evento AlImprimir (OnPrint) o AlDarFormato (OnFormat) en una
seccin de informe, o en la propiedad de evento AlPaginar (OnPage) en un informe.
Al dibujar lneas que estn conectadas, asegrese de que cada lnea no inicial comience en
el punto final de la lnea anterior.
El ancho de la lnea dibujada depende de la configuracin de la propiedad AnchoDeDibujo
(DrawWidth). La manera como se dibuja una lnea o cuadro en el fondo depende de la
configuracin de las propiedades ModoDeDibujo (DrawMode) y EstiloDeDibujo
(DrawStyle).
Al aplicar el mtodo Line, las propiedades CurrentX y CurrentY se establecen como el
punto final especificado por los argumentos x2 e y2.

Ejemplo

Pgina

356

Este ejemplo usa el mtodo Line para dibujar un rectngulo rojo ubicado a cinco pxeles
desde el borde de un informe llamado InformeEmpleados. La funcin RGB se usa para
dibujar la lnea en rojo.
Para probar este ejemplo en Microsoft Access, cree un nuevo informe. Pegue el cdigo
siguiente en la seccin de declaraciones del mdulo del informe y cambie a Vista
preliminar.
Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
' Call the Drawline procedure
DrawLine
End Sub
Sub DrawLine()
Dim rpt As Report, lngColor As Long
Dim sngTop As Single, sngLeft As Single
Dim sngWidth As Single, sngHeight As Single
Set rpt = Reports!EmployeeReport
' Set scale to pixels.
rpt.ScaleMode = 3
' Top inside edge.
sngTop = rpt.ScaleTop + 5
' Left inside edge.
sngLeft = rpt.ScaleLeft + 5
' Width inside edge.
sngWidth = rpt.ScaleWidth - 10
' Height inside edge.
sngHeight = rpt.ScaleHeight - 10
' Make color red.
lngColor = RGB(255,0,0)
' Draw line as a box.
rpt.Line(sngTop, sngLeft) - (sngWidth, sngHeight), lngColor, BEnd Sub

Mtodo LoadPicture
El mtodo LoadPicture carga un grfico en un control ActiveX.
expresin.LoadPicture(FileName)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
FileName String requerida. El nombre de archivo del grfico que se va a cargar. El
grfico puede ser un archivo de mapa de bits (.bmp), un archivo de icono (.ico), un archivo
codificado de longitud de ejecucin (.rle) o un metarchivo (.wmf).
Pgina

357

Comentarios
Asigne el valor devuelto del mtodo LoadPicture a la propiedad Picture de un control
ActiveX para cargar dinmicamente un grfico en el control. En el siguiente ejemplo se
carga un mapa de bits en un control denominado OLECustomControl en un formulario
Pedidos:
Set Forms!Orders!OLECustomControl.Picture = _
LoadPicture("Stars.bmp")
El mtodo LoadPicture devuelve un objeto del tipo Picture. Puede asignar este valor a una
variable del tipo Object por medio de la instruccin Set.
El objeto Picture no es un objeto de Microsoft Access, pero est disponible en
procedimientos de Microsoft Access.
Nota No se puede utilizar el mtodo LoadPicture para establecer la propiedad Picture de
un control de imagen. Este mtodo slo funciona con controles de ActiveX. Para establecer
la propiedad Imagen (Picture) de un control de imagen, asigne a la propiedad una cadena
especificando el nombre de archivo y la ruta de acceso del grfico que desee.

Mtodo Maximize
El mtodo Maximize lleva a cabo la accin Maximizar en Visual Basic.
expresin.Maximize
expresin Requerida. Expresin que devuelve un objeto DoCmd.

Comentarios
Este mtodo no tiene argumentos y se puede llamar directamente mediante la sintaxis
DoCmd.Maximize.
Nota Este mtodo no puede aplicarse a las ventanas Mdulo del Editor de Visual Basic
(VBE). Para obtener informacin sobre cmo afectar a las ventanas Mdulo, vea el tema de
la propiedad WindowState.

Mtodo Minimize
El mtodo Minimize lleva a cabo la accin Minimizar en Visual Basic.

Pgina

358

expresin.Minimize
expresin Requerida. Expresin que devuelve un objeto DoCmd.

Comentarios
Este mtodo no tiene argumentos y se puede llamar directamente mediante la sintaxis
DoCmd.Minimize.
Nota Este mtodo no puede aplicarse a las ventanas Mdulo del Editor de Visual Basic
(VBE). Para obtener informacin sobre cmo afectar a las ventanas Mdulo, vea el tema de
la propiedad WindowState.

Mtodo Modify
Se puede utilizar el mtodo Modify para cambiar las condiciones de formato de un objeto
FormatCondition del conjunto FormatConditions de un control de cuadro combinado o
cuadro de edicin.
expresin.Modify(Type, Operator, Expression1, Expression2)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
Type AcFormatConditionType requerido.
AcFormatConditionType puede ser una de estas constantes AcFormatConditionType.
acExpression
acFieldHasFocus
acFieldValue
Operator AcFormatConditionOperator opcional.
AcFormatConditionOperator
puede
AcFormatConditionOperator.
acBetween valor predeterminado
acEqual
acGreaterThan
acGreaterThanOrEqual
acLessThan
acLessThanOrEqual

ser

una

de

estas

constantes

Pgina

359

acNotBetween
acNotEqual
Si el argumento type es acExpression, el argumento operator no se tiene en cuenta. Si deja
en blanco este argumento, se asume la constante predeterminada (acBetween).
Expresin1 Variant opcional. Un valor o una expresin Variant asociada a la primera
parte del formato condicional. Puede ser un valor de constante o un valor de cadena.
Expresin2 Variant opcional. Un valor o una expresin Variant asociada a la segunda
parte del formato condicional cuando el argumento operator es acBetween o
acNotBetween (de lo contrario, este argumento no se tiene en cuenta). Puede ser un valor
de constante o un valor de cadena.

Mtodo Move
Mueve el objeto especificado a las coordenadas indicadas por los valores del argumento.
expresin.Move(Izquierda, Arriba, Ancho, Alto)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
Izquierda Variant requerida. La posicin en pantalla en twips del borde izquierdo del
objeto en relacin con el borde izquierdo de la ventana de Microsoft Access.
Arriba Variant opcional. La posicin en pantalla en twips del borde superior del objeto en
relacin con el borde superior de la ventana de Microsoft Access.
Width Variant opcional. El ancho deseado del objeto en twips.
Height Variant opcional. El alto deseado del objeto en twips.

Comentarios
Slo se requiere el argumento Izquierda. No obstante, para especificar cualquier otro
argumento, debe indicar todos los dems argumentos que lo preceden. Por ejemplo, no
puede especificar Alto sin especificar Izquierda y Arriba. No se cambiar ningn
argumento que siga y no se haya especificado.
Este mtodo anula la propiedad Moveable.
Si un formulario o informe es modal, se sigue situando en relacin con la ventana de
Access, pero los valores para Izquierda y Derecha pueden ser negativos.

Pgina

360

En la vista Hoja de datos o Vista preliminar, los cambios realizados con el mtodo Move se
guardan si el usuario guarda explcitamente la base de datos, pero Access no pregunta al
usuario si desea guardar estos cambios.

Ejemplo
El ejemplo siguiente determina si se puede mover el primer formulario del proyecto actual.
En caso afirmativo, el ejemplo mueve el formulario.
If Forms(0).Moveable Then
Forms(0).Move _
Left:=0, Top:=0, Width:=400, Height:=300
Else
MsgBox "The form cannot be moved."
End If

Mtodo MoveSize
El mtodo MoveSize lleva a cabo la accin DesplazarTamao en Visual Basic.
expresin.MoveSize(Right, Down, Width, Height)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
Right Variant opcional. Una expresin numrica.
Down Variant opcional. Una expresin numrica.
Width Variant opcional. Una expresin numrica.
Height Variant opcional. Una expresin numrica.

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
Para el mtodo MoveSize es necesario incluir al menos un argumento. Si deja en blanco un
argumento, se usar el valor actual de la ventana.
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la
coma del argumento. Si deja en blanco uno o ms argumentos de la cola, no use una coma a
continuacin del ltimo argumento que especifique.
Las unidades del argumento estn en twips.

Pgina

361

Ejemplo
El siguiente ejemplo mueve la ventana activa y cambia su alto, pero deja su ancho sin
cambiar:
DoCmd.MoveSize 1440, 2400, , 2000

Mtodo NewAccessProject
Puede utilizar el mtodo NewAccessProject para crear y abrir un nuevo proyecto de
Microsoft Access (.adp) como el proyecto actual de Access en la ventana de Microsoft
Access.
expresin.NewAccessProject(filepath, Connect)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
filepath String requerida. Una expresin de cadena que es el nombre del nuevo proyecto
de Access, incluidos el nombre de la ruta de acceso y la extensin del nombre de archivo.
Si la red lo permite, puede especificar una ruta de acceso a la red de la siguiente forma:
\\Servidor\Compartir\Carpeta\Nombre de archivo.adp
Connect Variant opcional. Una expresin de cadena que es la cadena de conexin vlida
para el proyecto de Access. Consulte la propiedad ADO ConnectionString para obtener
detalles sobre esta cadena.

Comentarios
El mtodo NewAccessProject le permite crear un nuevo proyecto de Access desde
Microsoft Access o desde otra aplicacin mediante automatizacin, anteriormente
denominada Automatizacin OLE. Por ejemplo, se puede utilizar el mtodo
NewAccessProject desde Microsoft Excel para crear un nuevo proyecto de Access en la
ventana de Access. Una vez que haya creado una instancia de Microsoft Access desde otra
aplicacin, debe crear tambin un nuevo proyecto de Access. Este proyecto de Access se
abre en la ventana Microsoft Access.
Si el proyecto de Access identificado por nombreproyecto ya existe, se producir un error.
El nuevo proyecto de Access se abre bajo la Cuenta de usuario del administrador.
Nota Para abrir una base de datos de Access (.MDB), utilice el mtodo
NewCurrentDatabase del objeto Application.

Pgina

362

Mtodo NewCurrentDatabase
Se puede utilizar el mtodo NewCurrentDatabase para crear una nueva base de datos de
Microsoft Access (.MDB) en la ventana Microsoft Access.
expresin.NewCurrentDatabase(filepath)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
filepath String requerida. Una expresin de cadena que sea el nombre de un nuevo archivo
de base de datos, incluyendo el nombre de la ruta de acceso y la extensin del nombre de
archivo. Si la red lo permite, tambin puede especificar una ruta de acceso a la red de la
siguiente forma: \\Server\Share\Folder\Filename
Nota Si no indica la extensin del nombre de archivo, se agregar la extensin .MDB.

Comentarios
Puede utilizar este mtodo para crear una nueva base de datos desde otra aplicacin que
est controlando Microsoft Access mediante la automatizacin OLE. Por ejemplo, se puede
utilizar el mtodo NewCurrentDatabase desde Microsoft Excel para crear una nueva base
de datos en la ventana Microsoft Access.
Nota Puede utilizar el mtodo NewAccessProject para crear un nuevo proyecto de
Microsoft Access (.ADP) en la ventana de Access.
El mtodo NewCurrentDatabase permite crear una nueva base de datos Microsoft Access
desde otra aplicacin mediante la automatizacin OLE. Una vez que haya creado una
instancia de Microsoft Access desde otra aplicacin, debe crear tambin una nueva base de
datos. Esta base de datos se abre en la ventana Microsoft Access.
Si la base de datos identificada por nombrebd ya existe, se producir un error.
La nueva base de datos se abre bajo la Cuenta de usuario del administrador.

Ejemplo
El siguiente ejemplo crea una nueva base de datos de Microsoft Access desde otra
aplicacin mediante la automatizacin OLE y luego crea una nueva tabla en esa base de
datos.
Se puede introducir este cdigo en un mdulo Visual Basic en cualquier aplicacin que
pueda actuar como un componente COM. Por ejemplo, podra ejecutar el siguiente cdigo
desde Microsoft Excel, Microsoft Visual Basic o Microsoft Access.

Pgina

363

Cuando la variable que apunta al objeto Application se sale de alcance, se cierra tambin la
instancia de Microsoft Access que representa. Por tanto, esta variable se debera declarar al
nivel del mdulo.
' Include following in Declarations section of module.
Dim appAccess As Access.Application
Sub NewAccessDatabase()
Dim dbs As Object, tdf As Object, fld As Variant
Dim strDB As String
Const DB_Text As Long = 10
Const FldLen As Integer = 40
' Initialize string to database path.
strDB = "C:\My Documents\Newdb.mdb"
' Create new instance of Microsoft Access.
Set appAccess = _
CreateObject("Access.Application.9")
' Open database in Microsoft Access window.
appAccess.NewCurrentDatabase strDB
' Get Database object variable.
Set dbs = appAccess.CurrentDb
' Create new table.
Set tdf = dbs.CreateTableDef("Contacts")
' Create field in new table.
Set fld = tdf. _
CreateField("CompanyName", DB_Text, FldLen)
' Append Field and TableDef objects.
tdf.Fields.Append fld
dbs.TableDefs.Append tdf
Set appAccess = Nothing
End Sub

Mtodo OpenAccessProject
Puede utilizar el mtodo OpenAccessProject para abrir un proyecto de Microsoft Access
(.adp) existente como el proyecto actual de Access en la ventana de Microsoft Access.
expresin.OpenAccessProject(filepath, Exclusive)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
filepath String requerida. Una expresin de cadena que es el nombre del proyecto
existente de Access, incluidos el nombre de la ruta de acceso y la extensin del nombre de
archivo. Si la red lo permite, tambin se puede especificar una ruta de acceso a la red de la
forma siguiente: //Server/Share/Folder/Filename.adp

Pgina

364

Nota Si no se proporciona la extensin del nombre de archivo, se utiliza .ADP. Puede


utilizar este mtodo o el mtodo OpenCurrentDatabase para abrir archivos .adp.
Exclusive Boolean opcional.

Comentarios
El mtodo OpenAccessProject le permite abrir un proyecto existente desde Microsoft
Access o desde otra aplicacin mediante automatizacin, anteriormente llamada
Automatizacin OLE. Por ejemplo, se puede utilizar el mtodo OpenAccessProject desde
Microsoft Excel para abrir la base de datos de ejemplo Neptuno.adp en la ventana de
Microsoft Access. Una vez que haya creado una instancia de Microsoft Access desde otra
aplicacin, se debe crear tambin un nuevo proyecto de Access o especificar que se abra un
proyecto de Access en particular. Este proyecto de Access se abre en la ventana Microsoft
Access.
Si ya se ha abierto un proyecto y se desea abrir otro proyecto en la ventana de Microsoft
Access, se puede utilizar el mtodo CloseCurrentDatabase para cerrar el primer proyecto
de Access antes de abrir otro.
Nota Para abrir una base de datos de Access (.MDB), utilice el mtodo
OpenCurrentDatabase del objeto Application.

Mtodo OpenConnection
Puede utilizar el mtodo OpenConnection para abrir una conexin ADO con un proyecto
de Microsoft Access (.adp) o base de datos de Access (.mdb) existente como el proyecto o
base de datos de Access actual en la ventana de Microsoft Access.
expresin.OpenConnection(BaseConnectionString, UserID, Password)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
BaseConnectionString Variant opcional. Una expresin de cadena que es la cadena de
conexin principal de la base de datos.
UserID Variant opcional. Una expresin de cadena que es el nombre del proyecto de
Access existente, incluidos el nombre de la ruta de acceso y la extensin del nombre de
archivo. Si la red lo permite, puede especificar una ruta de acceso a la red de la siguiente
forma: \\Servidor\Compartir\Carpeta\Nombre de archivo.adp
Password Variant opcional. Nota Si no se proporciona la extensin del nombre de
archivo, se utiliza .ADP. Puede utilizar este mtodo o el mtodo OpenCurrentDatabase
para abrir archivos .adp.

Pgina

365

Comentarios
El mtodo OpenConnection es similar al mtodo Open de un objeto ADO Connection.
Este mtodo establece la conexin fsica con el origen de datos. Una vez termina con xito
este mtodo, se activa la conexin, se establecen las propiedades Connection y
BaseConnectionString, y la ventana Base de datos o la pgina de acceso a datos deberan
aparecer actualizadas con los datos procedentes de la nueva conexin. Todos los
parmetros de este mtodo son opcionales. Si no se proporciona ninguna cadena de
conexin base, la conexin se restablece usando la cadena de conexin base anterior (sin
embargo, el usuario debe llamar a CloseConnection antes de volver a llamar a
OpenConnection). En el caso de un proyecto de Access, la propiedad
BaseConnectionString slo puede especificar el proveedor OLE DB de SQL Server.

Mtodo OpenCurrentDatabase
Se puede utilizar el mtodo OpenCurrentDatabase para abrir una base de datos de
Microsoft Access (.MDB) existente como la base de datos activa.
expresin.OpenCurrentDatabase(rutadearchivo, Exclusivo, bstrPassword)
expresin Requerida. Una expresin que devuelve uno de los objetos de la lista Aplicar a.
rutadearchivo String requerida. Una expresin de cadena que sea el nombre de un archivo
de base de datos existente, incluyendo el nombre de la ruta de acceso y la extensin del
nombre de archivo. Si la red lo admite, es posible especificar igualmente una ruta de acceso
a la red con el formato siguiente: \\Servidor\RecursoCompartido\Carpeta\NombreArchivo
Nota Si no se indica la extensin del nombre de archivo, se agregar la extensin .MDB.
Exclusivo Boolean opcional. Especifica si se desea abrir la base de datos en modo
exclusivo. El valor predeterminado es Falso, lo que indica que la base de datos se abre en
modo compartido.
bstrPassword String opcional. La contrasea que abre la base de datos especificada.

Comentarios
Se puede utilizar este mtodo para abrir una base de datos desde otra aplicacin que est
controlando Microsoft Access mediante la automatizacin OLE. Por ejemplo, se puede
utilizar el mtodo OpenCurrentDatabase desde Microsoft Excel para abrir la base de
datos de ejemplo NEPTUNO.MDB en la ventana Microsoft Access. Una vez que haya
creado una instancia de Microsoft Access desde otra aplicacin, se debe crear tambin una
nueva base de datos o especificar que se abra una base de datos en particular. Esta base de
datos se abre en la ventana Microsoft Access.

Pgina

366

Nota El mtodo OpenAccessProject se utiliza para abrir un proyecto de Microsoft


Access (.ADP) existente como la base de datos actual.
Si ya se ha abierto una base de datos y se desea abrir otra base de datos en la ventana
Microsoft Access, se puede utilizar el mtodo CloseCurrentDatabase para cerrar la
primera base de datos antes de abrir la otra.
El argumento Exclusivo se establece en Verdadero para abrir la base de datos en modo
exclusivo. Si se omite este argumento, la base de datos se abrir en modo compartido.
Nota No se debe confundir el mtodo OpenCurrentDatabase con el mtodo Open de
ActiveX Data Objects (ADO) o con el mtodo OpenDatabase de Data Access Object
(DAO). El mtodo OpenCurrentDatabase abre una base de datos en la ventana de
Microsoft Access. El mtodo Open de ADO devuelve una variable de objeto Connection y
el mtodo OpenDatabase de DAO devuelve una variable de objeto Database, que
representan a una base de datos en particular, aunque en realidad no abren esa base de datos
en la ventana de Microsoft Access.

Ejemplo
El siguiente ejemplo abre una base de datos Microsoft Access desde otra aplicacin
mediante la automatizacin y luego abre un formulario en esa base de datos.
Se puede introducir este cdigo en un mdulo Visual Basic en cualquier aplicacin que
pueda actuar como un componente COM. Por ejemplo, podra ejecutar el siguiente cdigo
desde Microsoft Excel, Microsoft Visual Basic o Microsoft Access.
Cuando la variable que apunta al objeto Application se sale de alcance, se cierra tambin la
instancia de Microsoft Access que representa. Por tanto, esta variable se debera declarar al
nivel del mdulo.
' Include the following in Declarations section of module.
Dim appAccess As Access.Application
Sub DisplayForm()
' Initialize string to database path.
Const strConPathToSamples = "C:\Program " _
& "Files\Microsoft Office\Office\Samples\"
strDB = strConPathToSamples & "Northwind.mdb"
' Create new instance of Microsoft Access.
Set appAccess = _
CreateObject("Access.Application")
' Open database in Microsoft Access window.
appAccess.OpenCurrentDatabase strConPathToSamples
' Open Orders form.

Pgina

367

appAccess.DoCmd.OpenForm "Orders"
End Sub

Mtodo OpenDataAccessPage
El mtodo OpenDataAccessPage lleva a cabo la accin AbrirPginaAccesoADatos en
Visual Basic.
expresin.OpenDataAccessPage(NombrePginaAccesoADatos, Vista)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
NombrePginaAccesoADatos Variant requerida. Una expresin de cadena que es el
nombre vlido de una pgina de acceso a datos en la base de datos activa. Si ejecuta cdigo
de Visual Basic que contenga el mtodo OpenDataAccessPage en una base de datos de
biblioteca, Microsoft Access busca el formulario con este nombre primero en la base de
datos de biblioteca y luego en la base de datos actual.
Vista AcDataAccessPageView opcional. La vista en la que se abre la pgina de acceso a
datos.
AcDataAccessPageView puede ser una de estas constantes AcDataAccessPageView.
acDataAccessPageBrowse predeterminado Abre el formulario en la Vista de pgina.
acDataAccessPageDesign Abre el formulario en la vista Diseo.

Comentarios
Para obtener ms informacin acerca de cmo funcionan la accin y sus argumentos,
consulte el tema de la accin.
Si la contrasea de conexin no estaba incluida en la informacin de conexin de la pgina
de acceso a datos cuando se cre, se solicitar al usuario que facilite una contrasea cuando
se utilice el mtodo OpenDataAccessPage (AbrirPginaAccesoADatos).

Ejemplo
En el siguiente ejemplo se abre la pgina de acceso a datos Empleados en vista Diseo.
DoCmd.OpenDataAccessPage "Employees", acDataAccessPageDesign

Mtodo OpenDiagram
Pgina

368

El mtodo OpenDiagram lleva a cabo la accin AbrirDiagrama en Visual Basic.


expresin.OpenDiagram(DiagramName)
expresin Requerida. Expresin que devuelve un objeto DoCmd.
DiagramName Variant requerida. Una expresin de cadena que es el nombre vlido de un
diagrama de base de datos en la base de datos activa. Si ejecuta cdigo Visual Basic que
contenga el mtodo OpenDiagram en una base de datos de biblioteca, Microsoft Access
busca el diagrama de base de datos con este nombre primero en la base de datos de
biblioteca y luego en la base de datos activa.

Ejemplo
El ejemplo siguiente abre el diagrama de base de datos denominado "Data Model".
DoCmd.OpenDiagram " Data Model"

Mtodo OpenForm
El mtodo OpenForm lleva a cabo la accin AbrirFormulario en Visual Basic.
expresin.OpenForm(FormName, View, FilterName, WhereCondition, DataMode,
WindowMode, OpenArgs)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
FormName Variant requerida. Una expresin de cadena que es el nombre vlido de un
formulario en la base de datos activa. Si ejecuta cdigo Visual Basic que contenga el
mtodo OpenForm en una base de datos de biblioteca, Microsoft Access busca el
formulario con este nombre primero en la base de datos de biblioteca y luego en la base de
datos activa.
View AcFormView opcional.
AcFormView puede ser una de estas constantes AcFormView.
acDesign
acFormDS
acFormPivotChart
acFormPivotTable
acNormal valor predeterminado. Abre el formulario en la vista Formulario.
acPreview

Pgina

369

Si deja en blanco este argumento, se asume la constante predeterminada (acNormal).


FilterName Variant opcional. Una expresin de cadena que es el nombre vlido de una
consulta en la base de datos activa.
WhereCondition Variant opcional. Una expresin de cadena que es una clusula WHERE
de SQL vlida sin la palabra WHERE.
DataMode AcFormOpenDataMode opcional.
AcFormOpenDataMode puede ser una de estas constantes AcFormOpenDataMode.
acFormAdd
acFormEdit
acFormPropertySettings valor predeterminado
acFormReadOnly
Si deja en blanco este argumento (se asume la constante predeterminada,
acFormPropertySettings), Microsoft Access abre el formulario en el modo de datos
establecido por las propiedades PermitirEdiciones (AllowEdits), PermitirEliminacin
(AllowDeletions), PermitirAgregar (AllowAdditions) y EntradaDeDatos (DataEntry)
del formulario.
WindowMode AcWindowMode opcional.
AcWindowMode puede ser una de estas constantes AcWindowMode.
acDialog
acHidden
acIcon
acWindowNormal valor predeterminado
Si deja en blanco este argumento, se asume la constante predeterminada
(acWindowNormal).
OpenArgs Variant opcional. Una expresin de cadena. Esta expresin se utiliza para
establecer la propiedad AbrirArgs (OpenArgs) del formulario. Este valor puede ser
utilizado en el cdigo en un mdulo formulario, tal como el procedimiento de evento Abrir.
A la propiedad AbrirArgs (OpenArgs) tambin se puede hacer referencia en macros y
expresiones.
Por ejemplo, supongamos que el formulario que abre es una lista de formulario continuo de
clientes. Si desea que el enfoque se traslade a un registro de cliente determinado cuando se
abra el formulario, puede especificar el nombre del cliente con el argumento abrirargs, y

Pgina

370

luego usar el mtodo FindRecord para trasladar el enfoque al registro del cliente con el
nombre especificado.
Este argumento slo est disponible en Visual Basic.

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
La longitud mxima del argumento condicinwhere es 32,768 caracteres (al contrario que
el argumento de la accin Condicin WHERE en la ventana Macro, cuya longitud mxima
es de 256 caracteres).
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la
coma del argumento. Si deja en blanco un argumento de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo abre el formulario Empleados en la vista Formulario y muestra slo
los registros que contengan King en el campo Apellido. Los registros mostrados pueden ser
modificados, y se pueden agregar nuevos registros.
DoCmd.OpenForm "Employees", , ,"LastName = 'King'"

Mtodo OpenFunction
Abre una funcin definida por el usuario en una base de datos de Microsoft SQL Server
para verla en Microsoft Access.
expresin.OpenFunction(NombreFuncin, Ver, ModoDatos)
expresin Requerida. Una expresin que devuelve un objeto DoCmd.
NombreFuncin Variant requerida. El nombre de la funcin que se va a abrir.
View AcFormView opcional. La vista en la que se va a abrir la funcin.
AcView puede ser una de estas constantes AcView.
acViewDesign Abre la funcin en la vista Diseo.
acViewNormal valor predeterminado Abre la funcin en la vista Hoja de datos.
acViewPivotChart Abre la funcin en la vista Grfico dinmico.

Pgina

371

acViewPivotTable Abre la funcin en la vista Tabla dinmica.


acViewPreview Abre la funcin en la Vista preliminar.
DataMode AcOpenDataMode opcional. El modo en el que se va a abrir la funcin.
AcOpenDataMode puede ser una de estas constantes AcOpenDataMode.
acAdd Abre la funcin para la insercin de datos.
acEdit valor predeterminado Abre la funcin para actualizar los datos existentes.
acReadOnly Abre la funcin en modo de slo lectura.

Comentarios
Utilice la coleccin AllFunctions para recuperar informacin sobre las funciones definidas
por el usuario disponibles en una base de datos SQL Server.

Ejemplo
El ejemplo siguiente abre la primera funcin definida por el usuario en la base de datos
activa en la vista Diseo y en modo de slo lectura.
Dim objFunction As AccessObject
Dim strFunction As String
Set objFunction = Application.AllFunctions(0)
DoCmd.OpenFunction FunctionName:=objFunction.Name, _
View:=acViewDesign, Mode:=acReadOnly

Mtodo OpenModule
El mtodo OpenModule lleva a cabo la accin AbrirMdulo en Visual Basic.
expresin.OpenModule(ModuleName, ProcedureName)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
ModuleName Variant opcional. Una expresin de cadena que es el nombre vlido del
mdulo de Visual Basic que desea abrir. Si deja en blanco este argumento, Microsoft
Access busca en todos los mdulos estndar de la base de datos el procedimiento que
seleccion con el argumento nombreprocedimiento y abre para ese procedimiento el
mdulo que lo contiene. Si ejecuta cdigo de Visual Basic que contenga el mtodo
OpenModule en una base de datos de bibliotecas, Microsoft Access busca el mdulo con
este nombre primero en la base de datos de bibliotecas y luego en la base de datos activa.

Pgina

372

ProcedureName Variant opcional. Una expresin de cadena que es el nombre vlido del
procedimiento en el que abrir el mdulo. Si deja en blanco este argumento, el mdulo se
abre en la seccin Declaraciones.

Comentarios
Es necesario incluir al menos uno de los dos argumentos de la accin AbrirMdulo. Si
introduce un valor para ambos argumentos, Microsoft Access abre el mdulo especificado
en el procedimiento que se indique.
Si deja en blanco el argumento nombreprocedimiento, no use una coma a continuacin del
argumento nombremdulo.

Ejemplo
El siguiente ejemplo abre el mdulo Funciones de utilidad en el procedimiento de la
Funcin EstCargado( ):
DoCmd.OpenModule "Utility Functions", "IsLoaded"

Mtodo OpenQuery
El mtodo OpenQuery lleva a cabo la accin AbrirConsulta en Visual Basic.
expresin.OpenQuery(QueryName, View, DataMode)
expresin Requerida. -{}-Expresin que devuelve uno de los objetos de la lista Aplicar a.
QueryName Variant requerida. Una expresin de cadena que es el nombre vlido de una
consulta en la base de datos activa. Si ejecuta cdigo de Visual Basic conteniendo el
mtodo OpenQuery en una base de datos de biblioteca, Microsoft Access busca la consulta
con este nombre primero en la base de datos de biblioteca, y luego en la base de datos
activa.
View AcFormView opcional.
AcView puede ser una de estas constantes AcView.
acViewDesign
Valor predeterminado acViewNormal
acViewPivotChart
acViewPivotTable
acViewPreview

Pgina

373

Si el argumento queryname es el nombre de una consulta de seleccin, referencia cruzada,


unin o paso a travs cuya propiedad ReturnsRecords est establecida en -1,
acViewNormal muestra el conjunto de resultados de la consulta. Si el argumento
nombreconsulta hace referencia a una consulta de accin, de definicin de datos, o de paso
a travs cuya propiedad Devuelve registros (ReturnsRecords) est establecida a 0,
acViewNormal ejecuta la consulta.
Si deja en blanco este argumento, se asume la constante predeterminada (acViewNormal).
DataMode AcOpenDataMode opcional.
AcOpenDataMode puede ser una de estas constantes AcOpenDataMode.
acAdd
Valor predeterminado acEdit
acReadOnly
Si deja en blanco este argumento, se asume la constante predeterminada (acEdit).

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
Nota Este mtodo slo est disponible en el entorno de base de datos de Microsoft Access
(.MDB). Vea los mtodos OpenView or OpenStoredProcedure si utiliza el entorno de
proyecto de Access (.ADP) de Microsoft.
Si especifica el argumento mododatos y deja en blanco el argumento vista, debe incluir la
coma del argumento vista. Si deja en blanco un argumento de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo abre Consulta total ventas en la vista Hoja de datos y permite al
usuario examinar, aunque no modificar o agregar registros:
DoCmd.OpenQuery "Sales Totals Query", , acReadOnly

Mtodo OpenReport
El mtodo OpenReport lleva a cabo la accin AbrirInforme en Visual Basic.

Pgina

374

expresin.OpenReport(NombreInforme,
ModoVentana, AbrirArgs)

Vista,

NombreFiltro,

CondicinWhere,

expresin Requerida. Expresin que devuelve un objeto DoCmd.


NombreInforme Variant requerida. Una expresin de cadena que es el nombre vlido de
un informe en la base de datos activa. Si ejecuta cdigo de Visual Basic que contenga el
mtodo OpenReport en una base de datos de biblioteca, Microsoft Access busca el
informe con este nombre primero en la base de datos de biblioteca y luego en la base de
datos activa.
View AcFormView opcional. La vista que se aplica al informe especificado.
AcView puede ser una de estas constantes AcView.
acViewDesign
acViewNormal predeterminado Imprime el informe de inmediato.
acViewPivotChart No permitido.
acViewPivotTable No permitido.
acViewPreview
FilterName Variant opcional. Una expresin de cadena que es el nombre vlido de una
consulta en la base de datos activa.
WhereCondition Variant opcional. Una expresin de cadena que es una clusula WHERE
de SQL vlida sin la palabra WHERE.
WindowMode AcWindowMode opcional.
AcWindowMode puede ser una de estas constantes AcWindowMode.
acDialog
acHidden
acIcon
acWindowNormal valor predeterminado
OpenArgs Variant opcional. Establece la propiedad AbrirArgs (OpenArgs).

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.

Pgina

375

La longitud mxima del argumento CondicinWhere es 32.768 caracteres (al contrario que
el argumento de la accin Condicin WHERE en la ventana Macro, cuya longitud mxima
es de 256 caracteres).
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la
coma del argumento. Si deja en blanco uno o ms argumentos de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo imprime el Informe Ventas mientras utiliza la consulta existente Filtro
Informe.
DoCmd.OpenReport "Sales Report", acViewNormal, "Report Filter"

Mtodo OpenStoredProcedure
El mtodo OpenView lleva a cabo la accin AbrirProcedimientoAlmacenado en Visual
Basic.
expresin.OpenStoredProcedure(ProcedureName, View, DataMode)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
ProcedureName Variant requerida. Una expresin de cadena que es el nombre vlido de
un procedimiento almacenado en la base de datos activa. Si ejecuta cdigo de Visual Basic
que contenga el mtodo OpenStoredProcedure en una base de datos de biblioteca,
Microsoft Access busca el procedimiento almacenado con este nombre primero en la base
de datos de biblioteca y luego en la base de datos activa.
View AcFormView opcional.
AcView puede ser una de estas constantes AcView.
acViewDesign
Valor predeterminado acViewNormal
acViewPivotChart
acViewPivotTable
acViewPreview
Si deja en blanco este argumento, se asume la constante predeterminada (acViewNormal).
DataMode AcOpenDataMode opcional.

Pgina

376

AcOpenDataMode puede ser una de estas constantes AcOpenDataMode.


acAdd
Valor predeterminado acEdit
acReadOnly
Si deja en blanco este argumento, se asume la constante predeterminada (acEdit).

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.

Ejemplo
En el siguiente ejemplo se abre el procedimiento almacenado Empleados en vista Diseo.
DoCmd.OpenStoredProcedure "Employees", 1

Mtodo OpenTable
El mtodo OpenTable lleva a cabo la accin AbrirTabla en Visual Basic.
expresin.OpenTable(TableName, View, DataMode)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
TableName Variant requerida. Una expresin de cadena que es el nombre vlido de una
tabla en la base de datos activa. Si ejecuta cdigo de Visual Basic que contenga el mtodo
OpenTable en una base de datos de biblioteca, Microsoft Access busca la tabla con este
nombre primero en la base de datos de biblioteca y luego en la base de datos activa.
View AcFormView opcional.
AcView puede ser una de estas constantes AcView.
acViewDesign
acViewNormal valor predeterminado. Abre la tabla en la vista Hoja de datos.
acViewPivotChart
acViewPivotTable
acViewPreview
Si deja en blanco este argumento, se asume la constante predeterminada (acViewNormal).

Pgina

377

DataMode AcOpenDataMode opcional.


AcOpenDataMode puede ser una de estas constantes AcOpenDataMode.
acAdd
Valor predeterminado acEdit
acReadOnly
Si deja en blanco este argumento, se asume la constante predeterminada (acEdit).

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
Si especifica el argumento mododatos y deja en blanco el argumento vista, debe incluir la
coma del argumento vista. Si deja en blanco un argumento de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo abre la tabla Empleados en la Vista preliminar:
DoCmd.OpenTable "Employees", acViewPreview

Mtodo OpenView
El mtodo OpenView lleva a cabo la accin AbrirVista en Visual Basic.
expresin.OpenView(ViewName, View, DataMode)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
ViewName Variant requerida. Una expresin de cadena que es el nombre vlido de una
vista en la base de datos activa. Si ejecuta cdigo de Visual Basic que contenga el mtodo
OpenView en una base de datos de biblioteca, Microsoft Access busca la vista con este
nombre primero en la base de datos de biblioteca y luego en la base de datos activa.
View AcFormView opcional.
AcView puede ser una de estas constantes AcView.
acViewDesign

Pgina

378

Valor predeterminado acViewNormal


acViewPivotChart
acViewPivotTable
acViewPreview
Si deja en blanco este argumento, se asume la constante predeterminada (acViewNormal).
DataMode AcOpenDataMode opcional.
AcOpenDataMode puede ser una de estas constantes AcOpenDataMode.
acAdd
Valor predeterminado acEdit
acReadOnly
Si deja en blanco este argumento, se asume la constante predeterminada (acEdit).

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.

Ejemplo
En el ejemplo siguiente se abre la vista Empleados.
DoCmd.OpenView "Employees"

Mtodo OutputTo
El mtodo OutputTo lleva a cabo la accin SalidaHacia en Visual Basic.
expresin.OutputTo(TipoObjeto,
NombreObjeto,
ArchivoResultados, Autoinicio, ArchivoPlantilla, Codificacin)

FormatoResultados,

expresin Requerida. Expresin que devuelve un objeto DoCmd.


TipoObjeto AcOutputObjectType requerido. El tipo de objeto de resultados.
AcOutputObjectType puede ser una de estas constantes AcOutputObjectType.
acOutputDataAccessPage No permitido.
acOutputForm

Pgina

379

acOutputFunction
acOutputModule
acOutputQuery
acOutputReport
acOutputServerView
acOutputStoredProcedure
acOutputTable
ObjectName Variant opcional. Expresin de cadena que es el nombre vlido de un objeto
del tipo seleccionado por el argumento TipoObjeto. Si desea que salga el objeto activo,
especifique el tipo de objeto para el argumento TipoObjeto y deje en blanco este
argumento. Si ejecuta cdigo de Visual Basic que contenga el mtodo OutputTo en una
base de datos de biblioteca, Microsoft Access busca el objeto con este nombre primero en
la base de datos de bibliotecas y luego en la base de datos activa.
FormatoResultados Variant opcional. El formato de resultados, expresado como
constante AcFormat. Si omite este argumento, Microsoft Access pregunta por el formato
de resultados.
AcFormat puede ser una de estas constantes AcFormat.
acFormatASP
acFormatDAP
acFormatHTML
acFormatIIS
acFormatRTF
acFormatSNP
acFormatTXT
acFormatXLS
ArchivoResultados Variant opcional. Una expresin de cadena que es el nombre
completo, incluyendo la ruta de acceso, del archivo al que desea que salga el objeto. Si deja
en blanco este argumento, Microsoft Access pregunta un nombre de archivo de resultados.
Autoinicio Variant opcional. Use True (-1) para iniciar inmediatamente la aplicacin
basada en Microsoft Windows, con el archivo especificado en el argumento
ArchivoResultados cargado. Use False (0) si no desea iniciar la aplicacin. Este argumento
se omite con los archivos Microsoft Internet Information Server (.htx, .idc) y las pginas
Active Server de Microsoft (archivos *.asp). Si deja en blanco este argumento, se asume el
valor predeterminado (Falso).
TemplateFile Variant opcional. Una expresin de cadena que es el nombre completo,
incluyendo la ruta de acceso, del archivo que desea usar como plantilla para un archivo
HTML, HTX o ASP.

Pgina

380

Codificacin Variant opcional.

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
El formato de resultado de los mdulos slo puede ser Texto MS-DOS, de tal forma que si
especifica acOutputModule para el argumento TipoObjeto, debe especificar
acFormatTXT para el argumento FormatoResultados. Los formatos de Microsoft Internet
Information Server y Microsoft ActiveX Server slo estn disponibles para las tablas,
consultas y formularios, con lo que si especifica acFormatIIS o acFormatASP para el
argumento FormatoResultados, debe especificar acOutputTable, acOutputQuery o
acOutputForm para el argumento TipoObjeto.
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la
coma del argumento. Si deja en blanco un argumento de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo muestra los resultados de la tabla Empleados en formato .rtf (formato
de texto enriquecido) al archivo Empleados.rtf y abre inmediatamente el archivo en
Microsoft Word para Windows.
DoCmd.OutputTo acOutputTable, "Employees", _
acFormatRTF, "Employee.rtf", True

Mtodo Print
El mtodo Print imprime texto en el objeto Informe (Report) utilizando el color y la
fuente actual.
expresin.Print(Expr)
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
Expr String requerida. Las expresiones de cadena que se van a imprimir. Si se omite este
argumento, el mtodo Print imprime una lnea en blanco. Se pueden utilizar varias
expresiones utilizando como separadores, un espacio, un punto y coma (;), o una coma. Un
espacio tiene el mismo efecto que un punto y coma.

Comentarios
Pgina

381

Puede utilizar este mtodo slo en un procedimiento de evento o macro especificada


estableciendo la propiedad de evento AlImprimir (OnPrint) de la seccin.
Las expresiones especificadas en el argumento Expr se imprimen en el objeto desde la
posicin indicada por los valores de las propiedades CurrentX y CurrentY.
Cuando se imprime el argumento Expr, normalmente se agrega un retorno de carro de
forma que el siguiente mtodo Print comience la impresin en la siguiente lnea. Cuando
hay un retorno de carro, el valor de la propiedad CurrentY se incrementa en funcin del
alto establecido en el argumento Expr (igual que el valor devuelto por el mtodo
TextHeight) y la propiedad CurrentX se establece en 0.
Cuando hay un punto y coma despus del argumento Expr, no se agrega ningn retorno de
carro, y el siguiente mtodo Print imprime en la misma lnea en la que imprimi el mtodo
Print anterior. Las propiedades CurrentX y CurrentY toman los valores del punto que
sigue inmediatamente al ltimo carcter impreso. Si el argumento Expr contiene un retorno
de carro, este retorno de carro establece las propiedades CurrentX y CurrentY tal como se
describe para el mtodo Print sin punto y coma.
Cuando hay una coma despus del argumento Expr, las propiedades CurrentX y
CurrentY se establecen en la siguiente zona de impresin, en la misma lnea.
Cuando el argumento Expr se imprime en un objeto Report, las lneas que no caben en la
posicin especificada no se desplazan. El texto se corta para ajustarse al objeto.
Debido a que el mtodo Print normalmente imprime con caracteres de espacio
proporcionados, es importante recordar que no hay correlacin entre el nmero de
caracteres impresos y el nmero de columnas de ancho fijo que ocupan esos caracteres. Por
ejemplo, una letra grande (como la W) ocupa ms que una columna de ancho fijo, as como
una letra fina (como la I) ocupa menos. Debe asegurarse de que las columnas tabulares
estn posicionadas lo suficientemente separadas para acomodar el texto a imprimir. De
forma alternativa, puede imprimir con una fuente de tamao fijo (como Courier) para
asegurarse de que cada carcter slo ocupa una columna.

Ejemplo
El siguiente ejemplo utiliza el mtodo Print para mostrar texto en un informe llamado
Informe1. Utiliza los mtodos TextWidth y TextHeight para centrar el texto verticalmente
y horizontalmente.
Private Sub Detail_Format(Cancel As Integer, _
FormatCount As Integer)
Dim rpt as Report
Dim strMessage As String
Dim intHorSize As Integer, intVerSize As Integer

Pgina

382

Set rpt = Me
strMessage = "DisplayMessage"
With rpt
'Set scale to pixels, and set FontName and
'FontSize properties.
.ScaleMode = 3
.FontName = "Courier"
.FontSize = 24
End With
' Horizontal width.
intHorSize = Rpt.TextWidth(strMessage)
' Vertical height.
intVerSize = Rpt.TextHeight(strMessage)
' Calculate location of text to be displayed.
Rpt.CurrentX = (Rpt.ScaleWidth/2) - (intHorSize/2)
Rpt.CurrentY = (Rpt.ScaleHeight/2) - (intVerSize/2)
' Print text on Report object.
Rpt.Print strMessage
End Sub

Mtodo PrintOut
El mtodo PrintOut lleva a cabo la accin imprimir en Visual Basic.
expresin.PrintOut(PrintRange,
CollateCopies)

PageFrom,

PageTo,

PrintQuality,

Copies,

expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
PrintRange AcPrintRange opcional.
AcPrintRange puede ser una de estas constantes AcPrintRange.
acPages
acPrintAll valor predeterminado
acSelection
Si deja en blanco este argumento, se asume la constante predeterminada (acPrintAll).
PageFrom Variant opcional. Una expresin numrica que es un nmero de pgina vlida
en el formulario u hoja de datos activa. Este argumento es obligatorio si especifica acPages
en el argumento intervaloimpresin.

Pgina

383

PageTo Variant opcional. Una expresin numrica que es un nmero de pgina vlido en
el formulario u hoja de datos activa. Este argumento es obligatorio si especifica acPages en
el argumento intervaloimpresin.
PrintQuality AcPrintQuality opcional.
AcPrintQuality puede ser una de estas constantes AcPrintQuality.
acDraft
acHigh valor predeterminado
acLow
acMedium
Si deja en blanco este argumento, se asume la constante predeterminada (acHigh).
Copies Variant opcional. Una expresin numrica. Si deja en blanco este argumento, se
asume el valor predeterminado (1).
CollateCopies Variant opcional. Utilice True (-1) para intercalar copias y False (0) para
imprimir sin intercalar. Si deja en blanco este argumento, se asume el valor predeterminado
(Verdadero).

Comentarios
Para obtener ms informacin sobre cmo funcionan la accin y sus argumentos, consulte
el tema de la accin.
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la
coma del argumento. Si deja en blanco uno o ms argumentos de la cola, no use una coma a
continuacin del ltimo argumento que especifique.

Ejemplo
El siguiente ejemplo imprime dos copias intercaladas de las cuatro primeras pginas del
formulario u hoja de datos activa:
DoCmd.PrintOut acPages, 1, 4, , 2

Mtodo PSet
El mtodo PSet establece un punto de un objeto Informe (Report) a un color especificado
cuando se produce el evento Print.
expresin.PSet(flags, X, Y, color)

Pgina

384

expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.
flags Integer requerido. Una palabra clave que especifica que las coordenadas son
relativas a las coordenadas actuales indicadas por los valores actuales de las propiedades
PosicinX (CurrentX) y PosicinY (CurrentY) del argumento objeto.
X Single requerido. Valor Single que indica la coordenada horizontal del punto que se
desea establecer.
Y Single requerido. Valor Single que indica la coordenada vertical del punto que se desea
establecer.
color Long requerido. Un valor de tipo Long que indica el color RGB para el punto. Si se
omite este argumento, se utilizar el valor de la propiedad ColorDelTexto (ForeColor).
Puede usar la funcinRGB o la funcin QBColor para especificar el color.

Comentarios
El tamao del punto depende de la configuracin de la propiedad AnchoDeDibujo
(DrawWidth). Cuando DrawWidth es 1, PSet establece un solo pxel con el color
especificado. Cuando DrawWidth es mayor que 1, el punto se centra en las coordenadas
especificadas.
La manera en que se dibuja el punto depende de las configuraciones de las propiedades
ModoDeDibujo (DrawMode) y EstiloDeDibujo (DrawStyle).
Al aplicar el mtodo PSet, las propiedades CurrentX y CurrentY se establecen al punto
especificado por los argumentos x e y.
Si desea borrar un solo pxel con el mtodo PSet, especifique las coordenadas del pixel y
use &HFFFFFF (blanco) como argumento color.
Sugerencia Para dibujar una lnea, es ms rpido usar el mtodo Line que el mtodo Pset.

Ejemplo
Este ejemplo usa el mtodo PSet para dibujar una lnea a lo largo del eje horizontal de un
informe.
Para probar este ejemplo en Microsoft Access, cree un nuevo informe. Establezca la
propiedad AlImprimir (OnPrint) de la seccin Detalles a [Procedimiento de evento].
Introduzca este cdigo en el mdulo del informe y cambie a Vista preliminar.
Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
Dim sngMidPt As Single, intI As Integer

Pgina

385

' Set scale to pixels.


Me.ScaleMode = 3
' Calculate midpoint.
sngMidPt = Me.ScaleHeight / 2
' Loop to draw line down horizontal axis pixel by pixel.
For intI = 1 To Me.ScaleWidth
Me.PSet(intI, sngMidPt)
Next intI
End Sub

Mtodo Quit
Mtodo Quit segn se aplica al objeto Application.
El mtodo Quit se utiliza para salir de Microsoft Access. Puede seleccionar una de las
distintas opciones para guardar un objeto de base de datos antes de salir.
expresin.Quit(Opcin)
expresin Requerida. Expresin que devuelve un objeto Application.
Opcin AcQuitOption opcional. La opcin de salida.
AcQuitOption puede ser una de estas constantes AcQuitOption.
acQuitPrompt Muestra un cuadro de dilogo que le pregunta si desea guardar cualquier
objeto de base de datos que se haya modificado pero no se haya guardado. (Anteriormente
acPrompt).
acQuitSaveAll predeterminado Guarda todos los objetos sin mostrar un cuadro de
dilogo. (Anteriormente acSaveYes).
acQuitSaveNone Sale de Microsoft Access sin guardar ningn objeto. (Anteriormente
acExit).

Comentarios
El mtodo Quit tiene el mismo efecto que el comando Salir del men Archivo. Puede
crear un comando de men personalizado o un botn de comando en un formulario con un
procedimiento que incluya el mtodo Quit. Por ejemplo, puede incluir un botn Salir en un
formulario e incluir un procedimiento en el evento Click del botn que use el mtodo Quit
con el argumento Opcin establecido en acQuitSaveAll.
Mtodo Quit segn se aplica al objeto DoCmd.

Pgina

386

El mtodo Quit del objeto DoCmd lleva a cabo la accin Salir en Visual Basic.
expresin.Quit(Opciones)
expresin Requerida. Expresin que devuelve un objeto DoCmd.
Opciones AcQuitOption opcional. La opcin de salida.
AcQuitOption puede ser una de estas constantes AcQuitOption.
acQuitPrompt Muestra un cuadro de dilogo que le pregunta si desea guardar cualquier
objeto de base de datos que se haya modificado pero no se haya guardado.
acQuitSaveAll predeterminado Guarda todos los objetos sin mostrar un cuadro de
dilogo.
acQuitSaveNone Sale de Microsoft Access sin guardar ningn objeto.

Comentarios
El mtodo Quit del objeto DoCmd se agreg para proporcionar compatibilidad hacia atrs
para ejecutar la accin Salir en el cdigo de Visual Basic en Microsoft Access 95. Se
recomienda que en su lugar utilice el mtodo Quit existente del objeto Application.

Ejemplo
Segn se aplica al objeto Application.
ste es un ejemplo del procedimiento de eventos Click para un botn de comando llamado
AppExit. Despus de hacer clic en el botn AppExit, un cuadro de dilogo pregunta al
usuario si desea guardar los cambios y el procedimiento sale de Microsoft Access.
Private Sub AppExit_Click()
Application.Quit acQuitPrompt
End Sub
Segn se aplica al objeto DoCmd.
El siguiente ejemplo muestra un cuadro o cuadros de dilogo que preguntan a los usuarios
si desean guardar algn objeto que hayan cambiado antes de salir de Microsoft Access.
DoCmd.Quit acQuitPrompt

Mtodo Recalc
Pgina

387

El mtodo Recalc actualiza inmediatamente todos los controles calculados de un


formulario.
expresin.Recalc
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.

Comentarios
Usar este mtodo tiene el mismo efecto que presionar la tecla F9 cuando un formulario
tiene el enfoque. Puede usar este mtodo para actualizar los valores de los controles que
dependen de otros campos cuyo contenido puede haber variado.

Ejemplo
Este ejemplo usa el mtodo Recalc para actualizar los controles del formulario Pedidos.
Este formulario incluye el cuadro de texto Embarque, que muestra el coste del embarque, y
un control calculado que muestra el coste total de un pedido incluyendo el embarque. Si la
instruccin del mtodo Recalc se sita en el procedimiento de evento AfterUpdate del
cuadro de texto, cada vez que se introduzca un nuevo importe para el embarque se
actualizar el coste total del pedido.
Sub Freight_AfterUpdate()
Me.Recalc
End Sub

Mtodo Refresh
El mtodo Refresh actualiza inmediatamente los registros del origen de los registros en el
que se basa un determinado formulario u hoja de datos para reflejar los cambios efectuados
a los datos por usted y otros usuarios en un entorno multiusuario.
expresin.Refresh
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.

Comentarios
Usar el mtodo Refresh equivale a elegir Actualizar del men Registros.

Pgina

388

Microsoft Access actualiza automticamente los registros, basndose en el valor de


Intervalo de actualizacin de la ficha Avanzado del cuadro de dilogo Opciones (elija
Opciones en el men Herramientas). Los orgenes de datos ODBC se actualizan segn el
valor de Intervalo de actualizacin ODBC de la ficha Avanzado del cuadro de dilogo
Opciones. Puede usar el mtodo Refresh para ver los cambios que se han realizado al
conjunto de registros actual de un formulario u hoja de datos desde que se actualiz por
ltima vez el origen del registro en el que se base el formulario u hoja de datos.
El mtodo Refresh slo muestra los cambios efectuados a los registros del conjunto actual.
Debido a que el mtodo Refresh no vuelve a consultar la base de datos, el conjunto actual
no incluye los registros que se han agregado o eliminado desde la ltima consulta a la base
de datos. Ni tampoco excluye los registros que no cumplan los criterios de la consulta o
filtro. Para realizar una nueva consulta de la base de datos, use el mtodo Requery. Cuando
se realiza una nueva consulta del origen de registros de un formulario, se reflejan
correctamente todos los datos del origen de registros.
Notas

A veces es ms rpido actualizar un formulario u hoja de datos que realizar una


nueva consulta. Esto es especialmente cierto si la ejecucin de la consulta inicial fue
lenta.
No confunda el mtodo Refresh con el mtodo Repaint, que vuelve a pintar la
pantalla con los cambios visuales pendientes.

Ejemplo
Este ejemplo usa el mtodo Refresh para actualizar los registros del origen de registros
base del formulario Clientes cada vez que recibe el enfoque:
Private Sub Form_Activate()
Me.Refresh
End Sub

Mtodo RefreshDatabaseWindow
El mtodo RefreshDatabaseWindow actualiza la ventana Base de datos despus de crear,
eliminar o cambiar de nombre un objeto de base de datos.
expresin.RefreshDatabaseWindow
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.

Comentarios

Pgina

389

Puede utilizar el mtodo RefreshDatabaseWindow para reflejar inmediatamente los


cambios realizados en los objetos de Microsoft Access en la ventana Base de datos. Por
ejemplo, si agrega un formulario nuevo de Visual Basic y lo guarda, puede utilizar el
mtodo RefreshDatabaseWindow para mostrar el nombre del nuevo formulario en la ficha
Formularios de la ventana Base de datos inmediatamente despus de guardarlo.

Ejemplo
El ejemplo siguiente crea un nuevo formulario, lo guarda y actualiza la ventana Base de
datos:
Sub CreateFormAndRefresh()
Dim frm As Form
Set frm = CreateForm
DoCmd.Save , "NewForm"
RefreshDatabaseWindow
End Sub

Mtodo RefreshTitleBar
Vea tambin Se aplica a Ejemplo Especficos
El mtodo RefreshTitleBar actualiza la barra de ttulos de Microsoft Access despus de
que se hayan establecido las propiedades AppTitle o AppIcon en Visual Basic.
expresin.RefreshTitleBar
expresin Requerida. Expresin que devuelve uno de los objetos de la lista Aplicar a.

Comentarios
Por ejemplo, se puede cambiar el ttulo en la barra de ttulos de Microsoft Access a "Base
de datos de contactos" estableciendo la propiedad TtuloDeLaAplicacin (AppTitle).
Las propiedades TtuloDeLaAplicacin (AppTitle)y IconoDeLaAplicacin (AppIcon)
permiten personalizar su aplicacin cambiando el ttulo y el icono que aparece en la barra
de ttulos de Microsoft Access. La barra de ttulos no se actualiza automticamente despus
de que haya establecido estas propiedades. Para que aparezca la barra de ttulos, se debe
utilizar el mtodo RefreshTitleBar.
Nota En una base de datos de Microsoft Access (.MDB), se puede restablecer las
propiedades TtuloDeLaAplicacin (AppTitle) y IconoDeLaAplicacin (AppIcon) en el
valor predeterminado eliminndolas de la coleccin Properties que represente a la base de
datos activa. Despus de eliminar estas propiedades, debe utilizarse el mtodo
RefreshTitleBar para restaurar los valores predeterminados en la barra de ttulos.
Pgina

390

Ejemplo
El siguiente ejemplo establece la propiedad TtuloDeLaAplicacin (AppTitle) de la base
de datos activa y aplica el mtodo RefreshTitleBar para actualizar la barra de ttulos.
Sub ChangeTitle()
Dim obj As Object
Const conPropNotFoundError = 3270
On Error GoTo ErrorHandler
' Return Database object variable pointing to
' the current database.
Set dbs = CurrentDb
' Change title bar.
dbs.Properties!AppTitle = "Contacts Database"
' Update title bar on screen.
Application.RefreshTitleBar
Exit Sub
ErrorHandler:
If Err.Number = conPropNotFoundError Then
Set obj = dbs.CreateProperty("AppTitle", dbText, "Contacts Database")
dbs.Properties.Append obj
Else
MsgBox "Error: " & Err.Number & vbCrLf & Err.Description
End If
Resume Next
End Sub

Mtodo Remove
Es posible que parte del contenido de este tema no sea aplicable a algunos idiomas.
Mtodo Remove segn se aplica al objeto de coleccin AccessObjectProperties.
Puede utilizar el mtodo Remove para eliminar un objeto AccessObjectProperty de la
coleccin AccessObjectProperties de un objeto AccessObject.
expresin.Remove(Elemento)
expresin
Requerida.
AccessObjectProperties.

Expresin

que

devuelve

un

objeto

de

coleccin

Pgina

391

Elemento Variant requerida. Expresin que especifica la posicin de un miembro de la


coleccin a la que se hace referencia en el argumento objeto. Si es Expresin numrica, el
argumento ndice debe ser un nmero de 0 al valor de la propiedad Count de la coleccin
menos 1. Si se trata de una cadena de expresin, el argumento ndice debe ser el nombre de
un miembro de la coleccin.
Mtodo Remove segn se aplica al objeto de coleccin Pages.
El mtodo Remove quita un objeto Pgina (Page) de la coleccin Pginas (Pages) de un
control ficha.
expresin.Remove(Elemento)
expresin Requerida. Expresin que devuelve un objeto de coleccin Pages.
Elemento Variant opcional. Un valor entero que especifica el ndice del objeto Pgina
(Page) que se va a quitar. El ndice del objeto Pgina (Page) corresponde al valor de la
propiedad ndiceDePginas (PageIndex) de ese objeto Pgina (Page). Si omite este
argumento, se quita el ltimo objeto Pgina (Page) de la coleccin.

Comentarios
La coleccin Pginas (Pages) se numera a partir de cero. La pgina situada ms a la
izquierda en el control ficha tiene un ndice de 0, la pgina situada inmediatamente a la
derecha de la pgina situada ms a la izquierda tiene un ndice de 1, etc.
Puede quitar un objeto Pgina (Page) de la coleccin Pginas (Pages) de un control ficha
slo cuando el formulario se encuentra en la vista Diseo.
Mtodo Remove segn se aplica al objeto de coleccin References.
El mtodo Remove quita un objeto Reference de la coleccin References.
expresin.Remove(Referencia)
expresin Requerida. Expresin que devuelve un objeto de coleccin References.
Referencia Objeto Reference requerido. El objeto Reference que representa la referencia
que desea quitar.

Comentarios
Pgina

392

Para determinar el nombre del objeto Reference que desea quitar, active la casilla de
verificacin Proyecto/Biblioteca del Examinador de objetos. Aqu aparecen los nombres
de todas las referencias que estn establecidas actualmente. Estos nombres corresponden al
valor de la propiedad Nombre (Name) de un objeto Reference.

Ejemplo
Segn se aplica al objeto Pages.
El ejemplo siguiente quita pginas de un control ficha:
Function RemovePage() As Boolean
Dim frm As Form
Dim tbc As TabControl, pge As Page
On Error GoTo Error_RemovePage
Set frm = Forms!Form1
Set tbc = frm!TabCtl0
tbc.Pages.Remove
RemovePage = True
Exit_RemovePage:
Exit Function
Error_RemovePage:
MsgBox Err & ": " & Err.Description
RemovePage = False
Resume Exit_RemovePage
End Function
Segn se aplica al objeto References.
La primera de las dos funciones siguientes agrega a la coleccin References una referencia
al control Calendario. La segunda funcin quita la referencia al control Calendario.
Function AddReference() As Boolean
Dim ref As Reference, strFile As String
On Error GoTo Error_AddReference
strFile = "C:\Windows\System\Mscal.ocx"
' Create reference to calendar control.
Set ref = References.AddFromFile(strFile)
AddReference = True

Pgina

393

Exit_AddReference:
Exit Function
Error_AddReference:
MsgBox Err & ": " & Err.Description
AddReference = False
Resume Exit_AddReference
End Function
Function RemoveReference() As Boolean
Dim ref As Reference
On Error GoTo Error_RemoveReference
Set ref = References!MSCAL
' Remove calendar control reference.
References.Remove ref
RemoveReference = True
Exit_RemoveReference:
Exit Function
Error_RemoveReference:
MsgBox Err & ": " & Err.Description
RemoveReference = False
Resume Exit_RemoveReference
End Function

Pgina

394

Anda mungkin juga menyukai