Newsgroup: it.comp.appl.access
Titolo: Eliminare e copiare tabelle in db esterno

Salve ,
ho il seguente problema
devo cancellare e copiare delle tabella da un db in un'altro db.
 
mi spiego meglio :
db1.mdb contenente le tabelle  (query o quello che siano)
db2.mdb database dove cancellare e ricopiare i nuovi oggetti
 
Ora avevo pensato con una maschera nel db1.mdb tramite un'azione di
eseguire :
 
Dim DB As Database
Set DB = OpenDatabase("C:\CartellaDB\Db2.mdb")
DB.TableDefs.Delete ("Tabella1")
' oppure
'DB.querydefs.delete ("query")
Set MioDB = Nothing
 
cosi elimino cio che mi serve :
il mio problema ora e dire al db1 di copiare tabelle query o cio che
sia nel db2
qualche suggerimento?
Grazie


Non so se ho capito bene ma non puoi aprire un nuovo db vuoto e nella
sez tabelle clicchi su tasto destro importa?
Dando importa da altro db puoi scegliere se copiarti solo la struttura
o anche i dati, relazioni ecc. di ogni singola tabella.
Spero che il mio suggerimento possa essere stato d'aiuto.
Ciao

Ciao!
 
Guarda l'help di docmd.CopyObject ;)
 
HTH
Popi


Ciao Grazie per la risposta , ma non e possibile , e un gestionale e
cerco di facilitare le manovre a chi deve  operare


Grazie popi , lo stavo vedendo proprio ora questo comando , vedevo se
devo generare un ciclo oppur eno .X ora grazie


Vorrei chiedervi se e possibile rinominare la tabella del db2 (quindi
sempre una tabella di db esterno a quello aperto).
stavo provando con DoCmd.Rename "C:\CartellaDB\Db2.mdb",
"tabella_old", acTable, "tabella_new", ma non va qualche suggerimento?

Ciao!
 
IMHO devi ricorrere ad una applicazione esterna.
 
dim appEsterna as access.application
 
set appesterna=createobject("access.application")
appesterna.opencurrentdatabase "c:\cartelladb\db2.mdb"
appesterna.docmd.rename "tabella_old", actable, "tabella_new"
appesterna.quit acsavenone
set appesterna=nothing
 
HTH
Popi


Sicuro che serva e sia utile approdare al latebinding....?
 
Ricorda che sei già all'interno di Access.Application... in quanto
Access è proprio il programma che stai usando.
 
Dim appesterna As Access.Application
Set appesterna= New Access.Application
        With appesterna
 
 
@Alex

Eh? Uh? Aiut ... !!!
 
Fermo restando che non sono sicuro di niente [1] (quelle 4 righe sono il frutto di un crampo al braccio destro :D ), mi spieghi cosa intendi dire (ti riferisci alla createobject?)?
 
Popi
[1] E no, non sono falso come un foglio da 28000 lire :)


Hai postato un'esempio di Codice che si usa normalmente per evocare
un'oggetto o Server di Automazione Esterno.
In questo caso è sostanzialmente inutile usare CreateObject per
evocare l'oggetto Access.Application.... visto che stiamo operando da
Access.
 
La questione del foglio da 28000 non l'ho capita e mi farebbe piacere
non fraintendere ricevendo un dettaglio.
 
Saluti.
@Alex

Capito, grazie :)
 
La questione del foglio è presto spiegata: qualche post fa mi è stato detto che la mia modestia è falsa come una banconota da 30 euro :D
 
Ho solo prevenuto una nuova possibile battuta in merito premettendo che non sono falso come una banconota da 28000 lire.
 
E sì, sono rimasto molto attaccato alla nostra vecchia moneta, anche perché l'euro è bello, ganzo, lo accettano dappertutto, ma ... se guardi la moneta da 1 ci sono due uomini, uno alle spalle dell'altro, messi come DiCaprio e la Winslet a prua del Titanic ... NON SO SE MI SPIEGO!!! :)))))
 
Popi

 Popi
 
@Alex