CONEXÃO DAO PARA ADO

JPAULO101 18/01/2016 09:39:22
#456241
Bom dia amigos, caros tenho essa rotina abaixo em DAO que funcionava perfeito no windows 7, mudei para o windows 10 e agora não funciona mais, informa que não existe o objeto DAO, teria como me ajudar a transformar essa rotina com a conexão ADO. Desde já agradeço.



Dim BD As Database
Dim TB(2) As Recordset
Dim Linha As Long
Private Sub UserForm_Activate()

[ô]Dim str As String


UnLeit = Null
Sequencia_MRU = Null

DADOS = EstaPasta_de_trabalho.Path & CAMINHO

Set BD = OpenDatabase(DADOS, False, False, [Ô];pwd=[Ô] & DBPass & [Ô][Ô])
[ô]Set TB(0) = BD.OpenRecordset([Ô]Ordenar_BD_Neoc[Ô], dbOpenTable)
Set TB(0) = BD.OpenRecordset([Ô]Ordenar_BD_Neoc_1[Ô], dbOpenTable)
TB(0).Index = [Ô]CONTRATO[Ô]


Menssagem ([Ô]Abrindo Base de dados...[Ô])
[ô]Busca pelo medidor
If Plan1.opMedidor.Value = True Then
Menssagem ([Ô]Localizando contrato pelo medidor...[Ô])
Set TB(1) = BD.OpenRecordset([Ô]SELECT * FROM [Ordenar_BD_Neoc_1] WHERE [N_série] = [ô][Ô] & Plan1.Cells(5, 8) & [Ô][ô][Ô], 2)
If Not TB(1).EOF Then TB(1).MoveLast
If TB(1).RecordCount = 0 Then
Menssagem ([Ô]Medidor não localizado...[Ô])
GoTo PROC_ERR3
ElseIf TB(1).RecordCount = 1 Then
Menssagem ([Ô]Contrato localizado: [Ô] & CStr(TB(1)([Ô]CTA_Contrato[Ô]).Value))
CONTRATO = TB(1)([Ô]CTA_Contrato[Ô]).Value
Else
TB(1).MoveFirst
UserForm1.ListBox1.Clear
Do While Not (TB(1).EOF)
UserForm1.ListBox1.AddItem TB(1)([Ô]CTA_Contrato[Ô])
TB(1).MoveNext
Loop
UserForm1.ListBox1.ListIndex = 0
UserForm1.Show 1
End If
ElseIf Plan1.OptionInstalacao.Value = True Then
Menssagem ([Ô]Localizando contrato pela instalacao...[Ô])
Set TB(1) = BD.OpenRecordset([Ô]SELECT * FROM [Ordenar_BD_Neoc_1] WHERE [INSTALACAO] = [ô][Ô] & CStr(Format(Plan1.Cells(5, 8), [Ô]0000000000[Ô])) & [Ô][ô][Ô], 2)
If Not TB(1).EOF Then TB(1).MoveLast
If TB(1).RecordCount = 0 Then
Menssagem ([Ô]Medidor não localizado...[Ô])
GoTo PROC_ERR3
ElseIf TB(1).RecordCount = 1 Then
Menssagem ([Ô]Contrato localizado: [Ô] & CStr(TB(1)([Ô]CTA_Contrato[Ô]).Value))
CONTRATO = TB(1)([Ô]CTA_Contrato[Ô]).Value
Else
TB(1).MoveFirst
UserForm1.ListBox1.Clear
Do While Not (TB(1).EOF)
UserForm1.ListBox1.AddItem TB(1)([Ô]CTA_Contrato[Ô])
TB(1).MoveNext
Loop
UserForm1.ListBox1.ListIndex = 0
UserForm1.Show 1
End If
ElseIf Plan1.opContrato.Value = True Then
CONTRATO = CStr(Format(E_contrato(Plan1.Cells(5, 8)), [Ô]0000000000[Ô]))
End If

Menssagem ([Ô]Localizando a rota e o roteiro do contrato...[Ô])
TB(0).Seek [Ô]=[Ô], CONTRATO
If TB(0).NoMatch Then
Menssagem ([Ô]Rota e roteiro não localizados...[Ô])
Else
Menssagem ([Ô]OK, localizado: Rota [Ô] & CStr(TB(0)([Ô]UnLeit[Ô]).Value) & [Ô] Roteiro [Ô] & CStr(TB(0)([Ô]Sequencia_MRU[Ô]).Value))
Plan1.Cells(6, 3) = TB(0)([Ô]UnLeit[Ô]).Value
Plan1.Cells(6, 7) = TB(0)([Ô]Sequencia_MRU[Ô]).Value
Plan1.Cells(6, 12) = TB(0)([Ô]LOCALIDADE[Ô]).Value
Plan1.Cells(7, 12) = TB(0)([Ô]PTO_REFERENCIA[Ô]).Value
Plan1.Cells(6, 21) = TB(0)([Ô]Latitude[Ô]).Value
Plan1.Cells(7, 21) = TB(0)([Ô]Longitude[Ô]).Value

str = [Ô]https://maps.google.com.br/maps?q=[Ô] & Replace(TB(0)([Ô]Latitude[Ô]).Value, [Ô],[Ô], [Ô].[Ô]) & [Ô],[Ô] & Replace(TB(0)([Ô]Longitude[Ô]).Value, [Ô],[Ô], [Ô].[Ô]) & [Ô]&iwloc=A&hl=pt-br[Ô]
[ô]Plan1.Cells(3, 8) = str

Menssagem ([Ô]Localizando o contrato em: Rota [Ô] & CStr(TB(0)([Ô]UnLeit[Ô]).Value) & [Ô] Roteiro [Ô] & CStr(TB(0)([Ô]Sequencia_MRU[Ô]).Value))
Set TB(1) = BD.OpenRecordset([Ô]SELECT * FROM [Ordenar_BD_Neoc_1] WHERE [UnLeit] = [ô][Ô] & Plan1.Cells(6, 3) & [Ô][ô][Ô] & [Ô] ORDER BY Ordenar_BD_Neoc_1.[UnLeit], Ordenar_BD_Neoc_1.[Sequencia_MRU][Ô], 2)
If TB(1).RecordCount > 0 Then
TB(1).FindFirst ([Ô]CTA_CONTRATO = [Ô] & CONTRATO)
[ô]Plan1.Cells(6, 13) = TB(1)([Ô]Propriedade[Ô]).Value
Linha = 22
For i = 1 To 13
TB(1).MovePrevious
If TB(1).BOF Then
TB(1).MoveNext
Exit For
End If
Linha = Linha - 1
Next
For i = Linha To 35
Preenche_Linha
Linha = Linha + 1
TB(1).MoveNext
If TB(1).EOF Then
Exit For
End If
Next
End If
End If


PROC_ERR3:
TB(0).Close


[ô]Fecha o formulário
Unload Me

End Sub

Sub Preenche_Linha()



Plan1.Cells(Linha, 1) = Trim(TB(1)([Ô]Sequencia_MRU[Ô]))
Plan1.Cells(Linha, 2) = Trim(TB(1)([Ô]CTA_CONTRATO[Ô]))
Plan1.Cells(Linha, 4) = Trim(TB(1)([Ô]N_série[Ô]))
Plan1.Cells(Linha, 7) = Trim(TB(1)([Ô]NOME[Ô]))
Plan1.Cells(Linha, 13) = Trim(TB(1)([Ô]RUA[Ô]))
Plan1.Cells(Linha, 21) = Trim(TB(1)([Ô]PTO_REFERENCIA[Ô]))
[ô]Plan1.Cells(Linha, 21) = Trim(TB(1)([Ô]N[Ô]))
Plan1.Cells(Linha, 24) = Trim(TB(1)([Ô]QUADRA[Ô]))
Plan1.Cells(Linha, 25) = Trim(TB(1)([Ô]MEDIA_03M[Ô]))
Plan1.Cells(Linha, 26) = Trim(TB(1)([Ô]MEDIA_06M[Ô]))
Plan1.Cells(Linha, 27) = Trim(TB(1)([Ô]MEDIA_12M[Ô]))
Plan1.Cells(Linha, 28) = Trim(TB(1)([Ô]COD[Ô]))
Plan1.Cells(Linha, 29) = Trim(TB(1)([Ô]DATA[Ô]))
Plan1.Cells(Linha, 30) = Trim(TB(1)([Ô]NOTA[Ô]))

End Sub
OMAR2011 18/01/2016 21:11:26
#456250
Verifica se existe as dll que é a dao360.dll e caso exista,registre novamente.
Caso não,baixe e registre.
Faça seu login para responder