to tentando rodar um modulo q um colega fez para um banco de dados, q tinha rodado em outro computador, agora ta dando erro, o banco de dados e o mesmo, porem mais atualizado.
Sub union()
Dim after As Recordset
Dim names As Recordset
Set after = CurrentDb.OpenRecordset("select * from after")
Do While Not after.EOF
Debug.Print after.Fields("nome") & "-" & after.Fields("sobrenome")
DoEvents
For i = 3 To after.Fields.Count - 1
Set names = CurrentDb.OpenRecordset("select distinct [" & after.Fields(i).Name & "] from names where [nome]='" & _
Replace(after.Fields("nome") & "", "'", "''") & "' and [sobrenome]='" & Replace(after.Fields("sobrenome") & "", "'", "''") & _
"' and len([" & after.Fields(i).Name & "])>0")
a = ""
If names.EOF = False Then
Do While Not names.EOF
a = a & names.Fields(0)
names.MoveNext
If Not names.EOF Then a = a & " | "
Loop
'Debug.Print a
CurrentDb.Execute "update after set [" & after.Fields(i).Name & "]='" & Replace(a & "", "'", "''") & "' " & _
"where [sobrenome]='" & Replace(after.Fields("sobrenome") & "", "'", "''") _
& "' And [nome] = '" & Replace(after.Fields("nome") & "", "'", "''") & "'"
End If
names.Close
Set names = Nothing
Next
after.MoveNext
Loop
End Sub
ps: ele da o erro na ultima linha do "set name".
ps: originalmente os campos nome e sobrenome estao em outra lingua q não o ingles.
Ps: acho q talvez algum campo esteja vazio e ai ele da o erro?
Pergunta
zeevpoli
to tentando rodar um modulo q um colega fez para um banco de dados, q tinha rodado em outro computador, agora ta dando erro, o banco de dados e o mesmo, porem mais atualizado.
ps: ele da o erro na ultima linha do "set name".
ps: originalmente os campos nome e sobrenome estao em outra lingua q não o ingles.
Ps: acho q talvez algum campo esteja vazio e ai ele da o erro?
Editado por zeevpoliLink para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.