Bom dia pessoal, adaptei um código que peguei num exemplo aqui no forum, ele faz a pesquisa no site da receita federal e pega as informações e coloca no formulário do access, porem estou com um pequeno problema, que quando ha cnaes secundários ele não consigo organizá-los um abaixo do outro para colocar numa tabela, porque cada linha de cnae tem q ser um registro, ele esta trazendo as informações assim em uma caixa de texto:
90.01-9-99 - Artes cênicas, espetáculos e atividades complementares
não especificadas anteriormente 73.19-0-02 - Promoção de vendas
preciso que ele traga as informações da seguinte forma:
90.01-9-99 - Artes cênicas, espetáculos e atividades complementares não especificadas anteriormente
73.19-0-02 - Promoção de vendas
Eis o código completo, se alguém puder ajudar desde já agradeço
obrigado
Private Sub TIPO_DE_SOLICITAÇÃO_AfterUpdate()
Me.Texto180 = Forms![LOGADO]![Usuário]
'Me.Texto211 = [Combinação207] & "-" & [CNPJ]
Dim objIE As InternetExplorer
Dim elem, tbl, tr
Set objIE = CreateObject("InternetExplorer.Application")
With objIE
.StatusBar = False
.Toolbar = False
.Width = 800
.Height = 600
.Resizable = False
.AddressBar = False
.visible = True
.Top = 60
.Left = 560
.Navigate "http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao2.asp"
Do While .Busy Or _
.ReadyState <> 4
DoEvents
Loop
.Document.all.ITEM("cnpj").innerText = Me.CNPJ
reset:
For Each tr In .Document.getElementsByTagName("tr")
If tr.innerText = "Erro na Consulta - Esclarecimentos adicionais. " Then GoTo reset
Next
'Aguarda até a página ser carregada totalmente----
Do While objIE.LocationURL <> "http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Comprovante.asp"
Loop
If objIE.LocationURL = "http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Comprovante.asp" Then
Do While .Busy Or .ReadyState <> READYSTATE_COMPLETE:
Loop
End If
Dim tamanho As Integer
For Each elem In .Document.all
If elem.tagName = "TABLE" Then
Set tbl = elem
If tbl.Rows.Length >= 1 Then
Set tr = tbl.Rows(0)
If tr.Cells.Length >= 1 Then
If Not InStr(tbl.Rows(0).innerText, "REPÚBLICA FEDERATIVA DO BRASIL") > 0 Then
If InStr(tr.Cells(0).innerText, "NÚMERO DE INSCRIÇÃO") > 0 Then
End If
'Nome da Empresa
If InStr(tr.Cells(0).innerText, "NOME EMPRESARIAL") > 0 Then
Me.RAZÃO_SOCIAL = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 21))
End If
'Nome da Fantasia
If InStr(tr.Cells(0).innerText, "TÍTULO DO ESTABELECIMENTO (NOME DE FANTASIA)") > 0 Then
Me.NOME_FANTASIA = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 50))
End If
'Atividade Econômica Primária da Empresa
If InStr(tr.Cells(0).innerText, "CÓDIGO E DESCRIÇÃO DA ATIVIDADE ECONÔMICA PRINCIPAL") > 0 Then
Me.CNAE = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 55))
Me.CNAE = Left(Me.CNAE, 3) & Mid(Me.CNAE, 5, 2) & "-" & Mid(Me.CNAE, 8, 1) & "/" & Mid(Me.CNAE, 10)
End If
'Atividade Econômica Secundária da Empresa
If InStr(tr.Cells(0).innerText, "CÓDIGO E DESCRIÇÃO DAS ATIVIDADES ECONÔMICAS SECUNDÁRIAS") > 0 Then
Me.DESCRIÇÃO_AU = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 57))
End If
End If
End If
End If
End If
'Dim j, k%
'j = Split(Me.DESCRIÇÃO_AU, vbCrLf)
'For k = 1 To UBound(j)
Next
DoCmd.RunSQL "INSERT INTO [tblLicenciamentoCNAE] ( CNPJ, SERVIDOR, N_DOC, TIPO_DOC, D_SOLICITAÇÃO, CNAE, DESCRIÇÃO, CNAE_PRINCIPAL )" & _
"SELECT [Formulários]![formLicenciamento]![Texto209] AS CNPJ" & _
",[Formulários]![formLicenciamento]![TEXTO180] AS SERVIDOR" & _
",[Formulários]![formLicenciamento]![PROCESSO] AS N_DOC" & _
",[Formulários]![formLicenciamento]![TEXTO83] AS TIPO_DOC" & _
", DATE() AS D_SOLICITAÇÃO" & _
",mid ([Formulários]![formLicenciamento]![CNAE],1,9) AS CNAE" & _
",mid ([Formulários]![formLicenciamento]![CNAE],14) AS descrição" & _
", ('SIM') AS CNAE_PRINCIPAL"
' DoCmd.SetWarnings True 'recoloca avisos do access"
DoCmd.RunSQL "DELETE tblLicenciamentoCNAE.CNAE " & vbCrLf & _
"FROM tblLicenciamentoCNAE " & vbCrLf & _
"WHERE (((tblLicenciamentoCNAE.CNAE)=""Nã i-f/rm""));"
'Next
DoCmd.RunSQL "INSERT INTO [tblLicenciamento_Protocolos] ( CNPJ, LOG_SERVIDOR_LANÇAMENTO, n_doc_capa, TIPO_DOC_capa, D_SOLICITAÇÃO, LOG_DATA_LANÇAMENTO, ASSUNTO)" & _
"SELECT [Formulários]![formLicenciamento]![Texto209] AS CNPJ" & _
",[Formulários]![formLicenciamento]![TEXTO180] AS LOG_SERVIDOR_LANÇAMENTO" & _
",[Formulários]![formLicenciamento]![PROCESSO] AS N_DOC_CAPA" & _
",[Formulários]![formLicenciamento]![TEXTO83] AS TIPO_DOC_CAPA" & _
",[Formulários]![formLicenciamento]![TEXTO0] AS D_SOLICITAÇÃO" & _
",[Formulários]![formLicenciamento]![logdata] AS LOG_DATA_LANÇAMENTO" & _
",[Formulários]![formLicenciamento]![TIPO_DE_SOLICITAÇÃO] AS ASSUNTO"
MsgBox "Atividade registrada com sucesso !"
Me.email.SetFocus
Refresh
End With
objIE.Quit
Set objIE = Nothing
End Sub
90.01-9-99 - Artes cênicas, espetáculos e atividades complementares
não especificadas anteriormente 73.19-0-02 - Promoção de vendas
preciso que ele traga as informações da seguinte forma:
90.01-9-99 - Artes cênicas, espetáculos e atividades complementares não especificadas anteriormente
73.19-0-02 - Promoção de vendas
Eis o código completo, se alguém puder ajudar desde já agradeço
obrigado
Private Sub TIPO_DE_SOLICITAÇÃO_AfterUpdate()
Me.Texto180 = Forms![LOGADO]![Usuário]
'Me.Texto211 = [Combinação207] & "-" & [CNPJ]
Dim objIE As InternetExplorer
Dim elem, tbl, tr
Set objIE = CreateObject("InternetExplorer.Application")
With objIE
.StatusBar = False
.Toolbar = False
.Width = 800
.Height = 600
.Resizable = False
.AddressBar = False
.visible = True
.Top = 60
.Left = 560
.Navigate "http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao2.asp"
Do While .Busy Or _
.ReadyState <> 4
DoEvents
Loop
.Document.all.ITEM("cnpj").innerText = Me.CNPJ
reset:
For Each tr In .Document.getElementsByTagName("tr")
If tr.innerText = "Erro na Consulta - Esclarecimentos adicionais. " Then GoTo reset
Next
'Aguarda até a página ser carregada totalmente----
Do While objIE.LocationURL <> "http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Comprovante.asp"
Loop
If objIE.LocationURL = "http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Comprovante.asp" Then
Do While .Busy Or .ReadyState <> READYSTATE_COMPLETE:
Loop
End If
Dim tamanho As Integer
For Each elem In .Document.all
If elem.tagName = "TABLE" Then
Set tbl = elem
If tbl.Rows.Length >= 1 Then
Set tr = tbl.Rows(0)
If tr.Cells.Length >= 1 Then
If Not InStr(tbl.Rows(0).innerText, "REPÚBLICA FEDERATIVA DO BRASIL") > 0 Then
If InStr(tr.Cells(0).innerText, "NÚMERO DE INSCRIÇÃO") > 0 Then
End If
'Nome da Empresa
If InStr(tr.Cells(0).innerText, "NOME EMPRESARIAL") > 0 Then
Me.RAZÃO_SOCIAL = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 21))
End If
'Nome da Fantasia
If InStr(tr.Cells(0).innerText, "TÍTULO DO ESTABELECIMENTO (NOME DE FANTASIA)") > 0 Then
Me.NOME_FANTASIA = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 50))
End If
'Atividade Econômica Primária da Empresa
If InStr(tr.Cells(0).innerText, "CÓDIGO E DESCRIÇÃO DA ATIVIDADE ECONÔMICA PRINCIPAL") > 0 Then
Me.CNAE = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 55))
Me.CNAE = Left(Me.CNAE, 3) & Mid(Me.CNAE, 5, 2) & "-" & Mid(Me.CNAE, 8, 1) & "/" & Mid(Me.CNAE, 10)
End If
'Atividade Econômica Secundária da Empresa
If InStr(tr.Cells(0).innerText, "CÓDIGO E DESCRIÇÃO DAS ATIVIDADES ECONÔMICAS SECUNDÁRIAS") > 0 Then
Me.DESCRIÇÃO_AU = ret_carac(Mid(Trim(tbl.Rows(0).Cells(0).innerText), 57))
End If
End If
End If
End If
End If
'Dim j, k%
'j = Split(Me.DESCRIÇÃO_AU, vbCrLf)
'For k = 1 To UBound(j)
Next
DoCmd.RunSQL "INSERT INTO [tblLicenciamentoCNAE] ( CNPJ, SERVIDOR, N_DOC, TIPO_DOC, D_SOLICITAÇÃO, CNAE, DESCRIÇÃO, CNAE_PRINCIPAL )" & _
"SELECT [Formulários]![formLicenciamento]![Texto209] AS CNPJ" & _
",[Formulários]![formLicenciamento]![TEXTO180] AS SERVIDOR" & _
",[Formulários]![formLicenciamento]![PROCESSO] AS N_DOC" & _
",[Formulários]![formLicenciamento]![TEXTO83] AS TIPO_DOC" & _
", DATE() AS D_SOLICITAÇÃO" & _
",mid ([Formulários]![formLicenciamento]![CNAE],1,9) AS CNAE" & _
",mid ([Formulários]![formLicenciamento]![CNAE],14) AS descrição" & _
", ('SIM') AS CNAE_PRINCIPAL"
' DoCmd.SetWarnings True 'recoloca avisos do access"
DoCmd.RunSQL "DELETE tblLicenciamentoCNAE.CNAE " & vbCrLf & _
"FROM tblLicenciamentoCNAE " & vbCrLf & _
"WHERE (((tblLicenciamentoCNAE.CNAE)=""Nã i-f/rm""));"
'Next
DoCmd.RunSQL "INSERT INTO [tblLicenciamento_Protocolos] ( CNPJ, LOG_SERVIDOR_LANÇAMENTO, n_doc_capa, TIPO_DOC_capa, D_SOLICITAÇÃO, LOG_DATA_LANÇAMENTO, ASSUNTO)" & _
"SELECT [Formulários]![formLicenciamento]![Texto209] AS CNPJ" & _
",[Formulários]![formLicenciamento]![TEXTO180] AS LOG_SERVIDOR_LANÇAMENTO" & _
",[Formulários]![formLicenciamento]![PROCESSO] AS N_DOC_CAPA" & _
",[Formulários]![formLicenciamento]![TEXTO83] AS TIPO_DOC_CAPA" & _
",[Formulários]![formLicenciamento]![TEXTO0] AS D_SOLICITAÇÃO" & _
",[Formulários]![formLicenciamento]![logdata] AS LOG_DATA_LANÇAMENTO" & _
",[Formulários]![formLicenciamento]![TIPO_DE_SOLICITAÇÃO] AS ASSUNTO"
MsgBox "Atividade registrada com sucesso !"
Me.email.SetFocus
Refresh
End With
objIE.Quit
Set objIE = Nothing
End Sub