Newsgroup: it.comp.appl.access
Titolo: convertire tabella access da collegata a locale

buongiorno,
ho un database che utilizza due tabelle collegate che non sono nient'altro che due file di testo
 
il database sta diventando molto lento
 
se le converto in locale ho visto che divento super veloce
 
vorrei da vba fare una copia di questa tabella collegata e fare diventare questa copia una tabella locale
 
facendo una copia con vba della tabella  anche la copia rimane collegata
 
grazie in anticipo

Non si capisce NULLA.
Parli di tabelle ma sono file di testo... di cosa parli... dal momento che solo un matto lavorerrbbe su file ti testo collegati... sempre siano editabili.
Se invece hai un DB remoto... Usa l'importazione guidata.
 
@Alex

facendo una copia con vba della tabella  anche la copia rimane collegata
 
Ho risolto cosi: lascia pure il file di testo collegato, potrebbe servirti 
se un domani esso verrà aggiornato da un nuovo file di testo con lo stesso 
formato (di fatto è un analogo del csv di excel).
Quindi non usare VBA, ma usa una query di creazione tabella, la quale ti 
crea una tabella interna ad access con gli stessi nomi-campo (oppure li 
rinomini).
Se sono stato poco chiaro, dimmi pure.
 

mario mengozzi laid this down on his screen :

Dalla finestra database seleziona la prima tabella collegata,
quindi CTRL+INS poi SHIFT+INS specificando Structure and Data.
Analogamente per la seconda tabella collegata.
 
Cancella le due tabelle collegate (verranno eliminati solo i
collegamenti al database corrente).
 
Rinomina le due nuove tabelle col nome dei due vecchi link.
 
Bruno

 vorrei da vba fare una copia di questa tabella collegata e fare diventare questa copia una tabella locale
 
 
nota aggiuntiva:
SE i file di testo NON rimangono fissi nel tempo
(generati e aggiornati da un altro sistema),
può risultare limitativo procedere SENZA una routine VBA
(in modo solo manuale)
 
e quindi dovrai "mettere in VBA" le operazioni suggerite:
in fondo si tratta solo di IMPORTARE di volta in volta i file testo
(ed eventualmente ANCHE di collegarli per scopo di controllo)

on 12-04-18, GiorgioDaPrato supposed :

Ottimo suggerimento.
La procedura seguente importa dall'esterno una tabella,
sostituendo l'omonima esistente (Table ovvero Link) nel
database corrente.
=========================
Private Sub Command81_Click()
Dim SourceDatabase As String, SourceTable As String, DestinationTable 
As String
 
SourceDatabase = "D:\Access\MDB\BC1.accdb"
SourceTable = "Immobili"
DestinationTable = "Immobili"
 
On Error Resume Next
DoCmd.DeleteObject acTable, DestinationTable
On Error GoTo 0
 
DoCmd.TransferDatabase _
    TransferType:=acImport, _
    DatabaseType:="Microsoft Access", _
    DatabaseName:=SourceDatabase, _
    ObjectType:=acTable, _
    Source:=SourceTable, _
    Destination:=DestinationTable, _
    StructureOnly:=False, _
    StoreLogin:=False
 
End Sub
==================================
 
Sostituendo in TransferType, acImport con acLink si
creerà un collegamento anziché una tabella.
 
Bruno


e, nel caso in questione, la routine, 
DOPO aver eliminato le tabelle da rinnovare,
farà più propriamente uso di DoCmd.TransferText 
 
http://access-excel.tips/access-vba-docmd-transfertext-method/
 
 
per usare questo comando è meglio anticipare 
una importazione/collegamento a mano
con la quale definire E REGISTRARE la specifica di importazione
(argomento SpecificationName)

It happens that GiorgioDaPrato formulated :

Io uso specifioche di import/export solo se l'istruzione
dove essere usata più volte da più procedure.
Nella fattispecie verrà presumibilmente usata più volte
ma da una sola procedura.
 
Bruno