• Lunes 23 de Diciembre de 2024, 00:56

Autor Tema:  cerrar base de dato  (Leído 2391 veces)

carlos lizano arroyo

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
cerrar base de dato
« en: Miércoles 29 de Octubre de 2008, 07:13 »
0
cuando uso esto
VARIABLE.OpenCurrentDatabase "c:bd1.mdb"
la base de dato se abre solito esperando clickear alos botones de access cancelar,abrir,ayuda
pero LO QUE YO QUIERO ES QUE NO ME MUESTRE LA BASE DE DATO COMO SE PUEDE HACER ESO?

Y CUANDO USO ESTO

VARIABLE.DoCmd.OpenTable ("NOMBRE DE TABLA")

COMO LO PUEDO VIZUALIZAR?
HAGO ESTO
X= VARIABLE.DoCmd.OpenTable ("NOMBRE DE TABLA")
Y SALE ERROR COMO HAGO ESO

PLZZ PORFA AYUDENME

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: cerrar base de dato
« Respuesta #1 en: Miércoles 29 de Octubre de 2008, 13:12 »
0
Cita de: "carlos lizano arroyo"
cuando uso esto
VARIABLE.OpenCurrentDatabase "c:bd1.mdb"
la base de dato se abre solito esperando clickear alos botones de access cancelar,abrir,ayuda
pero LO QUE YO QUIERO ES QUE NO ME MUESTRE LA BASE DE DATO COMO SE PUEDE HACER ESO?

Y CUANDO USO ESTO

VARIABLE.DoCmd.OpenTable ("NOMBRE DE TABLA")

COMO LO PUEDO VIZUALIZAR?
HAGO ESTO
X= VARIABLE.DoCmd.OpenTable ("NOMBRE DE TABLA")
Y SALE ERROR COMO HAGO ESO

PLZZ PORFA AYUDENME

Deberias explicar un poco mejor , ya que esto no explica en donde lo estas usando , algun procedimiento, o el mensaje de error "Y SALE ERROR COMO HAGO ESO" porque como adivinos reprobamos  :rolleyes:

DoCmd es un objeto de access quieres tener acceso desde Visual Basic? lo que me hace pensar que no es VB sino VBA
es decir desde dentro de access

Puedes usar CurrentDb para utilizar la base de datos en uso

CurrentDb.OpenRecorset  <---------- Para abrir la tabla como recordset, pero si ya estas en la base de datos activa solo ejecuta DoCmd.OpenTable ("Tabla") sin intentar crear otra instancia

Pero si estas desde Visual Basic andas un poco perdido, ya que este codigo no funciona...

tienes que utilizar:
DAO o ADO

Pero insisto detalla mas tu duda para que alguien pueda darte ayuda


Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

carlos lizano arroyo

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: cerrar base de dato
« Respuesta #2 en: Viernes 31 de Octubre de 2008, 18:53 »
0
LO QUE PASA ESQUE YO ESTOY USANDO EN VB6.0 Y NO VBA Y LO Q SUCEDE Q ESE CODIGO Q ENVIE
objAccess.OpenCurrentDatabase PathBd

PRIMERO CREO ESTO
CONST PathBd AS STRING = "C:BASE1.MDB"
Dim objAccess As Object  
Set objAccess = CreateObject("Access.Application")  
objAccess.OpenCurrentDatabase PathBd  'AQUI EL PROBLEMA ESQUE LA BASE DE DATO SE ABRE PERO NO EN MEMORIA SI NO ASII DONDE SE PUEDE VER Y ESPERA QUE SE LE DE CLICK A SUS TRE BOTONES CUANDO ABRES UNA BASE DE DATO ACCESS
"CANCELAR"      "ABRIR"        "MAS INFORMACION"
LO QUE YO NO QUIERO ES ESO Q ME MUESTRE ESO
QUIERO Q SE ABRA LA BASE DE DATO EN MEMORIA ES POSIBLE ESO? O NO
Y SI ESTOY USANDO
------------------------------------------------
ESPERO Q CON ESTO ME COMPRENDAS
----------------------------------------------
Dim cn As New ADODB.Connection
Const PathBd As String = "C:X.MDB"
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + PathBd + ";Persist Security Info=False"
Dim objAccess As Object
Set objAccess = CreateObject("Access.Application")
objAccess.OpenCurrentDatabase PathBd 'AQUI SE ABRE LA BD QUE HAGO PARA Q LO HAGA EN MEMORIA

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: cerrar base de dato
« Respuesta #3 en: Sábado 1 de Noviembre de 2008, 15:42 »
0
Hola seria bueno que usaras las etiquetas [ code ] [/ Code] para colocar tu codigo y sea mas legible
 
Cita de: "carlos lizano arroyo"
AQUI EL PROBLEMA ESQUE LA BASE DE DATO SE ABRE PERO NO EN MEMORIA SI NO ASII DONDE SE PUEDE VER Y ESPERA QUE SE LE DE CLICK A SUS TRE BOTONES CUANDO ABRES UNA BASE DE DATO ACCESS
 
Tienes que bajar el nivel de seguridad de confianza en los macros , en la aplicacion  la propiedad AutomationSecurity
 
Código: Visual Basic
  1.  
  2. 'Const msoAutomationSecurityLow = 1
  3. Const PathBd AS STRING = "C:BASE1.MDB"
  4. Dim objAccess As Object
  5.  
  6. Set objAccess = CreateObject("Access.Application")
  7.     With objAccess
  8.         .Visible = False
  9.         .Application.AutomationSecurity = 1 'msoAutomationSecurityLow
  10.         .OpenCurrentDatabase PathBd
  11.     End With
  12.  
  13.  


Cita de: "carlos lizano arroyo"
------------------------------------------------
ESPERO Q CON ESTO ME COMPRENDAS
----------------------------------------------

Código: Visual Basic
  1. Dim cn As New ADODB.Connection
  2. Const PathBd As String = "C:X.MDB"
  3. cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + PathBd + ";Persist Security Info=False"
  4. Dim objAccess As Object
  5. Set objAccess = CreateObject("Access.Application")
  6. objAccess.OpenCurrentDatabase PathBd 'AQUI SE ABRE LA BD QUE HAGO PARA Q LO HAGA EN MEMORIA
  7.  


Si ya creas una conexion con ADO , no veo porque la razon de crear un Objeto Applicacion de Access, No entiendo que pretendes hacer, para evitar que te salga access y el mensaje de segurdad usa el codigo ese (arriba), para lo que intentas hacer y si necesitas seria bueno que lo explicaras

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================