Renombrar tabla de access con nombres variables
Publicado por Guval (6 intervenciones) el 18/10/2007 06:33:43
El Programa genera siempre la misma tabla y luego le cambia el nombre.
Tengo la siguiente funcion para renombrar una tabla de access, pero necesito que el Nuevo nombre de la tabla sea variable, Por que cada tabla tiene datos distintos
Ejemplo:
TABLA1
TABLA2
TABLA........
¿como puedo hacer para pasar un nombre variable a la funcion?
---------------------------------------------------------------
Public Function Renombrar_Tabla(BD As String, _
ByVal La_Tabla As String, _
ByVal Neva_Tabla As String) As Boolean
On Error GoTo errSub
Dim obj_Base As DAO.Database
Dim obj_Tabla As DAO.TableDef
Set obj_Base = Workspaces(0).OpenDatabase(BD)
'Referencia a la Tabla a renombrar
Set obj_Tabla = obj_Base.TableDefs(La_Tabla)
'Asigna el nuevo nombre
obj_Tabla.Name = Neva_Tabla
'Refresca
obj_Base.TableDefs.Refresh
'Cierra la base de datos
obj_Base.Close
Renombrar_Tabla = True
Exit Function
errSub:
MsgBox Err.Description, vbCritical
'Cierra la base de datos y elimina los objetos
If Not obj_Base Is Nothing Then
On Error Resume Next
obj_Base.Close
On Error GoTo 0
Set obj_Tabla = Nothing
End If
End Function
Private Sub Command1_Click()
' Si devuelve True mostramos el mensaje que se ha renombrado OK
If Renombrar_Tabla("c:\bd1.mdb", "La Tabla", "El Nuevo nombre") Then
MsgBox " La tabla se ha renombrado correctamente ", vbInformation
End If
End Sub
Tengo la siguiente funcion para renombrar una tabla de access, pero necesito que el Nuevo nombre de la tabla sea variable, Por que cada tabla tiene datos distintos
Ejemplo:
TABLA1
TABLA2
TABLA........
¿como puedo hacer para pasar un nombre variable a la funcion?
---------------------------------------------------------------
Public Function Renombrar_Tabla(BD As String, _
ByVal La_Tabla As String, _
ByVal Neva_Tabla As String) As Boolean
On Error GoTo errSub
Dim obj_Base As DAO.Database
Dim obj_Tabla As DAO.TableDef
Set obj_Base = Workspaces(0).OpenDatabase(BD)
'Referencia a la Tabla a renombrar
Set obj_Tabla = obj_Base.TableDefs(La_Tabla)
'Asigna el nuevo nombre
obj_Tabla.Name = Neva_Tabla
'Refresca
obj_Base.TableDefs.Refresh
'Cierra la base de datos
obj_Base.Close
Renombrar_Tabla = True
Exit Function
errSub:
MsgBox Err.Description, vbCritical
'Cierra la base de datos y elimina los objetos
If Not obj_Base Is Nothing Then
On Error Resume Next
obj_Base.Close
On Error GoTo 0
Set obj_Tabla = Nothing
End If
End Function
Private Sub Command1_Click()
' Si devuelve True mostramos el mensaje que se ha renombrado OK
If Renombrar_Tabla("c:\bd1.mdb", "La Tabla", "El Nuevo nombre") Then
MsgBox " La tabla se ha renombrado correctamente ", vbInformation
End If
End Sub
Valora esta pregunta


0