Ir ao conteúdo
  • Cadastre-se

Excel Dados CNPJ para Excel


Ir à solução Resolvido por Midori,

Posts recomendados

Saudações!

Necessito importar dados públicos da empresa ao inserir o CNPJ numa célula do excel, exemplo:

A1=33683111000280

A2="https://minhareceita.org/"&ESQUERDA(A1;2)&"."&EXT.TEXTO(A1;3;3)&"."&EXT.TEXTO(A1;6;3)&"/"&EXT.TEXTO(A1;9;4)&"-"&DIREITA(A1;2)

através do site:

https://minhareceita.org/33.683.111/0002-80

que é uma alternativa para evitar o captcha da Receita Federal:

https://solucoes.receita.fazenda.gov.br/Servicos/cnpjreva/Cnpjreva_Solicitacao.asp

Ideal que as informações sejam importadas ao pressionar enter ou pressionando um botão/macro do Excel e que os dados resultantes estejam separados em linhas diferentes.

 

Quem pode ajudar??

Link para o comentário
Compartilhar em outros sites

@UmAmigo Veja se assim resolve. Entre com o CNPJ em A1 e execute a macro.

 

Sub Executar()
    Call ImportaMinhaReceita([A1].Value)
End Sub

Sub ImportaMinhaReceita(CNPJ As String)
    Dim PlanConsulta    As Worksheet
    
    On Error Resume Next
    ThisWorkbook.Queries("ConsultaCNPJ").Delete
    On Error GoTo 0
    
    CNPJ = Format(CNPJ, """""00"".""000"".""000""/""0000-00")
    
    Call ThisWorkbook.Queries.Add( _
        Name:="ConsultaCNPJ", _
        Formula:="let" & Chr(13) & "" & Chr(10) & _
        "    Source = Json.Document(Web.Contents(""https://minhareceita.org/" & CNPJ & """))," & _
        Chr(13) & "" & Chr(10) & "    #""Converted to Table"" = Record.ToTable(Source)" & _
        Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & "    #""Converted to Table""")
    
    With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
        "OLEDB;Provider=Microsoft.Mashup.OleDb.1;" & _
        "Data Source=$Workbook$;Location=ConsultaCNPJ;Extended Properties=""""" _
        , Destination:=Range("$A$5")).QueryTable
        .CommandType = xlCmdSql
        .CommandText = Array("SELECT * FROM [ConsultaCNPJ]")
        .Refresh BackgroundQuery:=False
    End With
End Sub

 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • Solução

@UmAmigo O valor vem como [List] porque é referente a um conjunto de valores ou outra tabela. Modifiquei o código para criar uma tabela com esses registros, veja se resolve,

 

Sub ImportaMinhaReceita(CNPJ As String)
    Dim FormulaCNPJ     As String
    Dim FormulaCNAES    As String
    Dim PlanCNPJ        As Worksheet
    Dim PlanCNAES       As Worksheet
    
    CNPJ = Format(CNPJ, """""00"".""000"".""000""/""0000-00")

    FormulaCNPJ = "let" & Chr(13) & "" & Chr(10) & _
        "Source = Json.Document(Web.Contents(""https://minhareceita.org/" & CNPJ & """))," & _
        Chr(13) & "" & Chr(10) & "#""Converted to Table"" = Record.ToTable(Source)" & Chr(13) & _
        "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & "#""Converted to Table"""
    
    FormulaCNAES = "let" & Chr(13) & "" & Chr(10) & _
        "Source = Json.Document(Web.Contents(""https://minhareceita.org/" & CNPJ & """))," & _
            Chr(13) & "" & Chr(10) & "#""Converted to Table"" = Record.ToTable(Source)," & Chr(13) & _
            "" & Chr(10) & "Value1 = #""Converted to Table""{24}[Value]," & Chr(13) & "" & Chr(10) & _
            "#""Converted to Table1"" = Table.FromList(Value1, Splitter.SplitByNothing(), null, null, ExtraValues.Error)," & _
            Chr(13) & "" & Chr(10) & "#""Expanded Column1"" = Table.ExpandRecordColumn" & _
            "(#""Converted to Table1"", ""Column1"", {""codigo"", ""descricao""}, {""Column1.codigo"", ""Column1.descricao""})" & _
            Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & "#""Expanded Column1"""
    
    On Error Resume Next
    ThisWorkbook.Queries("ConsultaCNPJ").Delete
    ThisWorkbook.Queries("ConsultaCNAES").Delete
    Application.DisplayAlerts = False
    ThisWorkbook.Sheets("TBL_CNPJ").Delete
    ThisWorkbook.Sheets("TBL_CNAES").Delete
    Application.DisplayAlerts = True
    On Error GoTo 0
    
    Set PlanCNPJ = ThisWorkbook.Sheets.Add
        PlanCNPJ.Name = "TBL_CNPJ"
    Set PlanCNAES = ThisWorkbook.Sheets.Add
        PlanCNAES.Name = "TBL_CNAES"
            
    Call ThisWorkbook.Queries.Add(Name:="ConsultaCNPJ", Formula:=FormulaCNPJ)
    Call ThisWorkbook.Queries.Add(Name:="ConsultaCNAES", Formula:=FormulaCNAES)
    
    With PlanCNPJ.ListObjects.Add(SourceType:=0, Source:= _
        "OLEDB;Provider=Microsoft.Mashup.OleDb.1;" & _
        " Data Source=$Workbook$;Location=ConsultaCNPJ;Extended Properties=""""" _
        , Destination:=PlanCNPJ.[A1]).QueryTable
        
        .CommandType = xlCmdSql
        .CommandText = Array("SELECT * FROM [ConsultaCNPJ]")
        .ListObject.DisplayName = "ConsultaCNPJ"
        .Refresh BackgroundQuery:=False
    End With
    
    With PlanCNAES.ListObjects.Add(SourceType:=0, Source:= _
        "OLEDB;Provider=Microsoft.Mashup.OleDb.1;" & _
        "Data Source=$Workbook$;Location=ConsultaCNAES;Extended Properties=""""" _
        , Destination:=PlanCNAES.[A1]).QueryTable
        
        .CommandType = xlCmdSql
        .CommandText = Array("SELECT * FROM [ConsultaCNAES]")
        .ListObject.DisplayName = "ConsultaCNAES"
        .Refresh BackgroundQuery:=False
    End With
End Sub

 

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

@Midori Massa! Mas eu sou meio analfabeto em VBA. Até eu conseguir preencher com os dados que eu preciso vai demorar mais um mês. Anexei uma planilha com o que preciso, gostaria que ao digitar o CNPJ e clicar no botão de macro aparecesse  os dados das células em amarelo, será que você consegue preencher ela e se possível colocar uma chave PIX para eu retribuir a gratidão! 

CNPJS.zip

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!