Discussion:
Maximizar la Ventana de Access
(demasiado antiguo para responder)
César Augusto Cardona
2008-05-22 21:14:02 UTC
Permalink
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
2008-05-23 11:10:39 UTC
Permalink
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" <***@discussions.microsoft.com>
escribió en el mensaje de
Post by César Augusto Cardona
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...
Ceac
2008-05-23 14:16:33 UTC
Permalink
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
***@gmail.com
Cali-Colombia
Patxi Sanz
2008-05-25 14:36:24 UTC
Permalink
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
2008-05-30 07:26:00 UTC
Permalink
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

Saludos !!!

César Augusto Cardona
***@gmail.com
Cali-Colombia
Patxi Sanz
2008-05-30 17:30:49 UTC
Permalink
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
--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
Ceac
2008-06-13 04:49:00 UTC
Permalink
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!!!
--
Saludos !!!

César Augusto Cardona
***@gmail.com
Cali-Colombia
Patxi Sanz
2008-06-13 09:44:44 UTC
Permalink
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"
--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
Ceac
2008-06-13 16:44:01 UTC
Permalink
Hola Patxi Sanz,

Funciona Perfectamete, era lo que nesecitaba Patxi. Mil Gracias...
--
Saludos !!!

César Augusto Cardona
***@gmail.com
Cali-Colombia
Patxi Sanz
2008-06-14 14:47:35 UTC
Permalink
De nada :-)
--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
xavi
2008-06-16 10:40:31 UTC
Permalink
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
Post by Patxi Sanz
De nada :-)
--
Un saludo,
Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
Patxi Sanz
2008-06-16 15:25:00 UTC
Permalink
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 ;-)
--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
g***@procall.com.ar
2016-11-16 21:06:57 UTC
Permalink
Post by Patxi Sanz
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 ;-)
--
Un saludo,
Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
Realmente gracias a todos por sus valiosos aportes. Saludos!
b***@gmail.com
2017-12-05 15:25:31 UTC
Permalink
Muchas gracias!

Loading...