** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Otros de Microsoft: Windows y Office > Excel
  Mensajes nuevos Mensajes nuevos RSS - Borrar datos de tabla desde excel
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoBorrar datos de tabla desde excel

 Responder Responder
Autor
Mensaje
joshua Ver desplegable
Nuevo
Nuevo


Unido: 09/Octubre/2011
Estado: Sin conexión
Puntos: 0
Enlace directo a este mensaje Tema: Borrar datos de tabla desde excel
    Enviado: 11/Octubre/2011 a las 00:02
Saludos.
Como puedo borrar todos  los datos de una tabla desde excel con macros.
Atte.
joshua
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 12119
Enlace directo a este mensaje Enviado: 11/Octubre/2011 a las 00:24

Primero define que es (para ti) "con macros". Lo digo porque hay gente que interpreta "código" y hay gente que interpreta "macros" (conjunto de acciones predefinidas y, en mi opinión, bastante limitadas).

Despues seria interesante saber (porque no lo dejas claro 100%) si se trata de borrar una tabla de Access desde un Excel.
 
 
Xavi, un minyó de Terrassa

Mi web
Arriba
joshua Ver desplegable
Nuevo
Nuevo


Unido: 09/Octubre/2011
Estado: Sin conexión
Puntos: 0
Enlace directo a este mensaje Enviado: 11/Octubre/2011 a las 00:30
Gracias por contestar Xavi.
Gracias por contestar, si se trata de borrar una tabla de Access desde un Excel.
Atte.
joshua
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 12119
Enlace directo a este mensaje Enviado: 11/Octubre/2011 a las 00:40
Pues creo que lo tendras que hacer desde código abriendo la BDD y ejecutando la SQL dentro del Access. Algo asi
 
Dim app As Application
Set app = CreateObject("Access.Application")
With app
  .OpenCurrentDatabase "larutacompletaalabdd", False
  .DoCmd.DeleteObject "LaTabla" ' suponiendo que se trate del objeto entero
  .DoCmd.RunSQL "DELETE * FROM LaTabla" ' suponiendo que sea solo el contenido
  .CloseCurrentDatabase
End With
Set app = Nothing

Xavi, un minyó de Terrassa

Mi web
Arriba
prga Ver desplegable
Moderador
Moderador


Unido: 16/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 3250
Enlace directo a este mensaje Enviado: 11/Octubre/2011 a las 10:20

Hola.
No se, no se, pero diría que este hilo es continuación de este otro
http://www.mvp-access.com/foro/forum_posts.asp?TID=70658
al que no se hace referencia:

Sí es así, en mi opinión:
1º.-Hay que especificar siempre que no se dispone de access.Pues cualquier solución que haga referencia a 'access.applicacion' será, salvo mejor opinión, una solución imposible
2º.-Sería el foro de Excel el más adecuado, ya que el access, en ese caso, sería un mero 'contenedor' de datos ( como podría ser, por ejemplo, un fichero DBF).
Ya comentas.
Un saludo a todos



Editado por prga - 11/Octubre/2011 a las 10:21
Arriba
joshua Ver desplegable
Nuevo
Nuevo


Unido: 09/Octubre/2011
Estado: Sin conexión
Puntos: 0
Enlace directo a este mensaje Enviado: 11/Octubre/2011 a las 18:41
Saludos.
Gracias prga por la observación y pido las disculpas del caso por no haber indicado desde un principio que no cuento con access, si pienso que el foro de excel seria el más indicado, gracias Xavi por el aporte que tendre a bien aprovechar.
Atte.
joshua
Arriba
prga Ver desplegable
Moderador
Moderador


Unido: 16/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 3250
Enlace directo a este mensaje Enviado: 11/Octubre/2011 a las 23:08
Hola.
Prueba con una 'macro' parecida a:
 
Public Sub borradatostabla()
Dim miconexcade As String
Dim miconex As Object
Dim miborra As Object
Set miconex = CreateObject("adodb.connection")
Set miborra = CreateObject("adodb.command")
If Val(Application.Version) < 12 Then
 miconexcade = "Provider=Microsoft.jet.oledb.4.0;Data source="
  Else
  miconexcade = "Provider=Microsoft.ACE.OLEDB.12.0;Data source="
End If
miconexcade = miconexcade & ThisWorkbook.Path & "\misdatosaccess.mdb;"
miconex.ConnectionString = miconexcade
miconex.Open
With miborra
     .ActiveConnection = miconex
     .CommandText = "delete * from tablaaccess"
     .CommandType = 1  
     .Execute
End With
miconex.Close
Set miconex = Nothing
End Sub
 
En la que se supone que la tabla ( tablaaccess) está en la base de datos access (misdatosaccess.mdb) y ésta está ubicada en la misma carpeta que la hoja excel.
Espero que ayude a resolver la duda.
Ya dices.
Un saludo a todos


Editado por prga - 11/Octubre/2011 a las 23:11
Arriba
joshua Ver desplegable
Nuevo
Nuevo


Unido: 09/Octubre/2011
Estado: Sin conexión
Puntos: 0
Enlace directo a este mensaje Enviado: 13/Octubre/2011 a las 02:55
Saludos Prga.
Excelente la macro funciona de maravilla, ahora solo me resta estudiar el codigo, te agradesco el tiempo que me has dedicado y por mi parte esta solucionado el tema.
Atte.
joshua
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable