EXCLUIR DADOS DUPLICADOS DO BD ACCESS
esta é a conexão que uso:
Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public path As String
Public Sub ConexaoBD()
path = App.path & [Ô]\Banco.mdb[Ô]
db.Open [Ô]Provider=microsoft.jet.oledb.4.0;data source=[Ô] & path
End Sub
Grato a todos que possam ajudar....
Se não fez,olhe isto.
http://www.codelines.com/portugues0/deldupli.htm
Select Distinct Campos Into TabelaNova From Tabela
depois renomeia a tabelaNova
DELETE * FROM tabela WHERE Id NOT IN (SELECT MAX(Id) As IdMaximo FROM tabela GROUP BY Nome, Endereço)
Citação::
assim
DELETE * FROM tabela WHERE Id NOT IN (SELECT MAX(Id) As IdMaximo FROM tabela GROUP BY Nome, Endereço)
Tentei assim mas dá erro:
ConexaoBD
rs.Delete *from TBMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TBMesRef GROUP BY MesRef, Ano_Ref)
rs.Close: Set rs = Nothing
db.Close: Set db = Nothing
Minha intenção é deletar os registros repetidos em MesRef e Ano_Ref na tabela TBMesRef
Tô quase lá, só preciso de um empurrãozinho galera....
Citação::
Fez alguma pesquisa no google.
Se não fez,olhe isto.
http://www.codelines.com/portugues0/deldupli.htm
Omar, segui os passos do link mas conforme mostra a imagem meu vb não tá dando a referencia IdMaximo, qual componente devo
habilitar??
IdMaximo não é referência.
CódigoMaximo também não é referência.
Testei com mesmo tipo de tabela e excluiu sem erros
CodigoMaximo e IdMaximo é????????????????????????????????????
Vou deixar você pesquisar e quando achar o significado vai gritar ou pedir ajuda para os universitários.
Valeu
Citação::
Con.Execute [Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô]
IdMaximo não é referência.
CódigoMaximo também não é referência.
Testei com mesmo tipo de tabela e excluiu sem erros
CodigoMaximo e IdMaximo é????????????????????????????????????
Vou deixar você pesquisar e quando achar o significado vai gritar ou pedir ajuda para os universitários.
Valeu
Dá uma força pelo amor de Deus cara, já não sei mais o que fazer, só não largo esse projeto porque meu amigo precisa muito
Dim Con As ADODB.Connection
Dim rs As ADODB.Recordset
Private Sub Command1_Click()
Con.Execute [Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô]
MsgBox [Ô]Excluido[Ô]
End Sub
Private Sub Command2_Click()
rs.Open [Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô], Con
MsgBox [Ô]Excluido[Ô]
End Sub
Private Sub Command3_Click()
Set rs = Con.Execute([Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô])
MsgBox [Ô]Excluido[Ô]
End Sub
Private Sub Form_Load()
Set Con = New ADODB.Connection
Set rs = New ADODB.Recordset
Dim Caminho As String
Caminho = App.Path & [Ô]\Bras2015.accdb[Ô]
Con.Open [Ô]Provider = Microsoft.ACE.OLEDB.12.0;Data Source=[Ô] & App.Path & [Ô]\Bras2014.accdb;Persist Security Info=False[Ô]
End Sub
Citação::
Exemplo simples.
Dim Con As ADODB.Connection
Dim rs As ADODB.Recordset
Private Sub Command1_Click()
Con.Execute [Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô]
MsgBox [Ô]Excluido[Ô]
End Sub
Private Sub Command2_Click()
rs.Open [Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô], Con
MsgBox [Ô]Excluido[Ô]
End Sub
Private Sub Command3_Click()
Set rs = Con.Execute([Ô]DELETE * FROM TbMesRef WHERE Codigo NOT IN (SELECT MAX(Codigo) As CodigoMaximo FROM TbMesRef GROUP BY Ano_Ref,Mes_Ref)[Ô])
MsgBox [Ô]Excluido[Ô]
End Sub
Private Sub Form_Load()
Set Con = New ADODB.Connection
Set rs = New ADODB.Recordset
Dim Caminho As String
Caminho = App.Path & [Ô]Bras2015.accdb[Ô]
Con.Open [Ô]Provider = Microsoft.ACE.OLEDB.12.0;Data Source=[Ô] & App.Path & [Ô]Bras2014.accdb;Persist Security Info=False[Ô]
End Sub
Funcionooooooooooooooooooooooooooooooouuuuuuuuuuuuuuuuuuuuuuu!!!!!!Vallllllllllllllllllllleeeeuuuuu mesmo, obrigado a todos que contribuÃram!!!!!