Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Maximizar la Ventana de Access

1,558 views
Skip to first unread message

César Augusto Cardona

unread,
May 22, 2008, 5:14:02 PM5/22/08
to

Hola Amigos,

Cree un ejecutable desde Visual Basic para abrir una MDB, y funciona bien.
El problema es que me gustaria que cuando abre Access no salga la ventana
Pequeña sino que la ventana de Access ocupe toda la pantalla. No se si se
puede hacer desde el formulario de Inicio o desde Visual Basic.

Gracias...

javcal

unread,
May 23, 2008, 7:10:39 AM5/23/08
to
Para maximizar una ventana hay que poner en el evento open del formulario en
cuestión el comando siguiente:

DoCmd.Maximize


"César Augusto Cardona" <CsarAugus...@discussions.microsoft.com>
escribió en el mensaje de
noticias:25CFE2D3-83CF-44C8...@microsoft.com...

Ceac

unread,
May 23, 2008, 10:16:33 AM5/23/08
to
Hola "javcal"

Si funciona, para un formulario. La pregunta es para la Ventana de Access,
no para un formulario de Access la Ventana de Access es la Ventana Macro o
Mayor.

Saludos !!!

César Augusto Cardona
master...@gmail.com
Cali-Colombia

Patxi Sanz

unread,
May 25, 2008, 10:36:24 AM5/25/08
to
Si abres la base de datos con la instrucción Shell, su segundo parámetro
permite indicar cómo deseas abrir la ventana (oculta, minimizada,
maximizada, ...).

--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)

Ceac

unread,
May 30, 2008, 3:26:00 AM5/30/08
to
Hola Patxi,

En realidad utilizo este codigo y no se como abrirlo por el Shell. Agradesco
toda la ayuda que me puedas dar.

Dim dbW As Object
Set dbW = GetObject("C:\2008.mdb")
dbW.UserControl = False
Set dbW = Nothing

Patxi Sanz

unread,
May 30, 2008, 1:30:49 PM5/30/08
to
Si le has asignado un título a la base de datos, para mostrarlo en la barra
de menús, tal vez este código te sirva de partida:

Option Compare Database
Option Explicit


Private Const kAccessWindowClass As String = "OMain"
Private Const SW_HIDE As Long = 0
Private Const SW_SHOWNORMAL As Long = 1
Private Const SW_SHOWMINIMIZED As Long = 2
Private Const SW_SHOWMAXIMIZED As Long = 3
Private Const SW_SHOWDEFAULT As Long = 10


Private Declare Function FindWindow Lib "User32" Alias "FindWindowA" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long


Private Declare Function ShowWindow Lib "User32" _
(ByVal hWnd As Long, _
ByVal nCmdShow As Long) As Long


'Private Declare Function apiSetFocus Lib "user32.dll" Alias "SetFocus" _
' (ByVal hWnd As Long) As Long


'---------------------------------------------------------------------------------------
' Function : BuscarVentanas
' Propósito : Busca una ventana de Access con el título indicado. Si la
encuentra, la
' maximiza. De lo contrario, ejecuta Access y abre la BD indicada.
' Parámetros:
' - TituloBD: Título que aparece en la ventana principal de Access.
También es la
' propiedad AppTitle de la base de datos.
' - QueBaseDatos: Nombre y ruta de la base de datos a abrir, si no se
encuentra ya
' abierta y encontrada.
'---------------------------------------------------------------------------------------
Function BuscarVentanas(TituloBD As String, QueBaseDatos As String)
Dim lngHwnd As Long

lngHwnd = FindWindow(kAccessWindowClass, TituloBD)
'Debug.Print lngHwnd
If lngHwnd = 0 Then
'Debug.Print "No se encontró"
Shell "msaccess.exe " & """" & QueBaseDatos & """", vbMaximizedFocus
Else
'Debug.Print "Sí se encontró"
ShowWindow lngHwnd, SW_SHOWNORMAL
ShowWindow lngHwnd, SW_SHOWMAXIMIZED
'apiSetFocus lngHwnd
End If
End Function

Ceac

unread,
Jun 13, 2008, 12:49:00 AM6/13/08
to

Hola Patxi Sanz,

Disculpas por demorarme en contestar, es que he estado un poco ocupado en el
trabajo.

Copie el codigo en un Modulo, y declare la funcion como Publica. Desde el
formulario de inico trato de llamar la funcion pero siempre me sale error y
no entiendo por que razón.

Al Cargar el formulario escribi lo siguiente:

BuscarVentanas(SIA, C:\Archivos de programa\MG\SIA.mde)

SIA = Titulo de MDB (TituloBD)
C:\Archivos de programa\MG\SIA.mde = Ruta DB (QueBaseDatos)

La idea es colocarlo en una Archivo mde, para distribución. Gracias!!!
--

Patxi Sanz

unread,
Jun 13, 2008, 5:44:44 AM6/13/08
to
Si has escrito esto directamente:

BuscarVentanas(SIA, C:\Archivos de programa\MG\SIA.mde)

Es lógico que de error:

1.- Elimina los paréntesis.
2.- Los argumentos son literales de texto: hay que entrecomillarlos.

BuscarVentanas "SIA", "C:\Archivos de programa\MG\SIA.mde"

Ceac

unread,
Jun 13, 2008, 12:44:01 PM6/13/08
to

Hola Patxi Sanz,

Funciona Perfectamete, era lo que nesecitaba Patxi. Mil Gracias...

Patxi Sanz

unread,
Jun 14, 2008, 10:47:35 AM6/14/08
to
De nada :-)

xavi

unread,
Jun 16, 2008, 6:40:31 AM6/16/08
to
Hola,

Una curiosidad...

Cuando quiero maximizar Access, simplemente pongo esto en el primer
formulario de la aplicación:

DoCmd.RunCommand acCmdAppMaximize

Entiendo que, para el caso, el resultado es el mismo, ¿no?

De todas formas me apunto el código por si algun dia lo necesito ;-)


--
Un saludo

Xavi
http://www.llodax.com
http://www.mvp-access.com/foro

"Patxi Sanz" <patxisanz[ARROBA]yahoo[PUNTO]es> escribió en el mensaje de
noticias:#TM$W2izIH...@TK2MSFTNGP03.phx.gbl...

Patxi Sanz

unread,
Jun 16, 2008, 11:25:00 AM6/16/08
to
Este es el problema cuando no te acuerdas de todas las constantes que acepta
RunCommand: que creas varias líneas de código para algo que se puede hacer
con una :-(

Lo bueno es que como trasteas un poco, descubres otras cosas que se pueden
hacer con las API's, otras funciones de Access, y cómo modificar una ventana
de Access desde otra instancia de Access, sin usar automatización ;-)

gri...@procall.com.ar

unread,
Nov 16, 2016, 4:07:01 PM11/16/16
to
Realmente gracias a todos por sus valiosos aportes. Saludos!

bata...@gmail.com

unread,
Dec 5, 2017, 10:25:34 AM12/5/17
to
Muchas gracias!
0 new messages