Excluir tabelas específicas
Nota importante: para ter acesso aos vídeos e arquivos exemplos deste site, adquira um dos planos apresentados abaixo. Você pode comprar em até 5x no Cartão de Crédito.
Veja como comprar e saiba mais sobre o material oferecido, clicando aqui.
Através da instrução FOR EACH podemos percorrer pelos objetos das diversas coleções existentes do Access, como por exemplo a coleção de formulários, tabelas, consultas, relatórios, controles e outros.
Neste caso, em particular, quero percorrer a coleção de tabelas para excluir todas as que comecem com o prefixo tmp ( tmp_tblCliente, tmp_tblFornecedores, ... ). Adotei este prefixo tmp para identificar no meu projeto, as tabelas temporárias que preciso excluir com periodicidade.
Acompanhe os comentários do código:
Public sub fncExcluirTabelasTemporarias()
'------------------------------------------------------------
'Cria uma variável que irá retornar com os nomes das tabelas
'------------------------------------------------------------
Dim tbl As TableDef
'---------------------------------------------
'Percorre por cada objeto da coleção de tabelas
'-------------------------------------------- For Each tbl In CurrentDb.TableDefs
'--------------------------------------------------- 'Se a tabela tiver o prefixo tmp_ ao nome, deletar
'--------------------------------------------------- If InStr(tbl.Name, "tmp_") > 0 Then DoCmd.DeleteObject acTable, tbl.Name End If Next 'Atualiza a lista de objetos Application.RefreshDatabaseWindow
End sub
Outra situação: caso precise excluir todas as tabelas vinculadas, basta verificar dentro do loop For Each se a propriedade connect de cada tabela está preenchida. Observe atentamente o código abaixo:
'------------------------------------ 'Deletar todas as tabelas vinculadas '------------------------------------ For Each tbl In CurrentDb.TableDefs If Len(tbl.Connect & "") > 0 Then
'-------------------------------------------------------------------
'Excluir a tabela vinculada, identificada pela presença de valor na
'propriedade connect
'------------------------------------------------------------------- DoCmd.DeleteObject acTable, tbl.Name End If Next
Bom estudo!
Os dez artigos mais visitados
MontaRibbons v.7.0 - Assistente completo para criar ribbons no Access
Vídeo - Controle personalizado de Acesso de Usuários
Vídeo - Aprenda sobre filtragens
Vídeo - Segurança máxima, usando o OPEN
Uma ajuda para quem está começando um negócio ou um projeto
Integrando o Access com Servidor MySQL - Introdução
Desabilitando a faixa(ribbon) superior do Access
Vídeo - Programação de relatórios - Parte 1
Como carregar o seu menu sem que ele vá para lista de suplementos
Vídeo - Criando Ribbons parte 1 - Conhecendo a estrutura Xml
Não há comentário |