Programación General > Visual Basic 6.0 e inferiores
cerrar base de dato
(1/1)
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
F_Tanori:
--- 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
--- Fin de la cita ---
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
carlos lizano arroyo:
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:
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
--- Fin de la cita ---
Tienes que bajar el nivel de seguridad de confianza en los macros , en la aplicacion la propiedad AutomationSecurity
--- Código: Visual Basic --- 'Const msoAutomationSecurityLow = 1Const PathBd AS STRING = "C:BASE1.MDB"Dim objAccess As Object Set objAccess = CreateObject("Access.Application") With objAccess .Visible = False .Application.AutomationSecurity = 1 'msoAutomationSecurityLow .OpenCurrentDatabase PathBd End With
--- Cita de: "carlos lizano arroyo" ---------------------------------------------------
ESPERO Q CON ESTO ME COMPRENDAS
----------------------------------------------
--- Código: Visual Basic ---Dim cn As New ADODB.ConnectionConst PathBd As String = "C:X.MDB"cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + PathBd + ";Persist Security Info=False"Dim objAccess As ObjectSet objAccess = CreateObject("Access.Application")objAccess.OpenCurrentDatabase PathBd 'AQUI SE ABRE LA BD QUE HAGO PARA Q LO HAGA EN MEMORIA
--- Fin de la cita ---
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
Navegación
Ir a la versión completa