Boa tarde a todos, tenho um código VBA que o pessoal daqui do forum me ajudou, o que ele faz na prática é pegar o CNAE com a descrição das atividades das empresas e apos consultar o site da receita federal e jogar numa tabela, acontece que justamente o campo que tem o numero do CNAE ele importa no seguinte formato por exemplo (84.11-6-00), preciso que ele importe no formato (8411-6/00). Mas nao estou conseguindo fazer isso pensei em um UPDATE apos a importação mas nao deu certo. Eis o codigo de importacao. Se alguem puder ajudar agradeço.
- Código:
Dim elem
Dim tbl
Dim tr
For Each elem In Me!WebBrowser4.Document.all
DoCmd.SetWarnings False 'tirar avisos do acces
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, "NOME EMPRESARIAL") > 0 Then
Me.RAZÃO_SOCIAL = WebBrowser4.Document.all.tags("b")(8).innertext
End If
If InStr(tr.Cells(0).innertext, "NOME DE FANTASIA") > 0 Then
Me.NOME_FANTASIA = WebBrowser4.Document.all.tags("b")(9).innertext
End If
If InStr(tr.Cells(0).innertext, "ATIVIDADE ECONÔMICA PRINCIPAL") > 0 Then
Me.CNAE = WebBrowser4.Document.all.tags("b")(10).innertext
Refresh
DoCmd.RunSQL "INSERT INTO [tblLicenciamentoCNAE] ( CNPJ, SERVIDOR, N_DOC, TIPO_DOC, D_SOLICITAÇÃO, CNAE, DESCRIÇÃO, CNAE_PRINCIPAL )" & _
"SELECT [Formulários]![formLicenciamento]![CNPJ] 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,10) AS CNAE" & _
",mid ([Formulários]![formLicenciamento]![CNAE], 14) AS descrição" & _
", ('SIM') AS CNAE_PRINCIPAL"
DoCmd.SetWarnings True 'recoloca avisos do access"
MsgBox "Atividade registrada com sucesso !"
Refresh
End If
If InStr(tr.Cells(0).innertext, "ATIVIDADES ECONÔMICAS SECUNDÁRIAS") > 0 Then
Me.DESCRIÇÃO_AU = tbl.Rows(0).Cells(0).innertext
Dim j, k%
j = Split(Me!DESCRIÇÃO_AU, vbCrLf)
For k = 1 To UBound(j)
CurrentDb.Execute "INSERT INTO tblLicenciamentoCNAE (CNPJ ,CNAE , Descrição, SERVIDOR, D_SOLICITAÇÃO)" & _
"values ('" & Me.CNPJ & "', '" & Mid(j(k), 1, 10) & "', '" & Mid(j(k), 14) & "','" & Me.Texto180 & "', '" & Date & "');"
Refresh
DoCmd.RunSQL "DELETE tblLicenciamentoCNAE.CNAE " & vbCrLf & _
"FROM tblLicenciamentoCNAE " & vbCrLf & _
"WHERE (((tblLicenciamentoCNAE.CNAE)=""Não inform""));"
DoCmd.RunSQL "INSERT INTO [tblLicenciamento_Protocolos] ( CNPJ, LOG_SERVIDOR_LANÇAMENTO, n_doc, TIPO_DOC, D_SOLICITAÇÃO, LOG_DATA_LANÇAMENTO, ASSUNTO)" & _
"SELECT [Formulários]![formLicenciamento]![CNPJ] AS CNPJ" & _
",[Formulários]![formLicenciamento]![TEXTO180] AS LOG_SERVIDOR_LANÇAMENTO" & _
",[Formulários]![formLicenciamento]![PROCESSO] AS N_DOC" & _
",[Formulários]![formLicenciamento]![TEXTO83] AS TIPO_DOC" & _
",[Formulários]![formLicenciamento]![TEXTO0] AS D_SOLICITAÇÃO" & _
",[Formulários]![formLicenciamento]![logdata] AS LOG_DATA_LANÇAMENTO" & _
",('PROCESSO CAPA') AS ASSUNTO"
Refresh
Next
End If
End If
End If
End If
End If
Next
Refresh
Me.TIPO_DE_SOLICITAÇÃO.SetFocus
End Sub