Copiando informação...
 
Notifications
Clear all

Copiando informação da internet.

9 Posts
2 Usuários
0 Reactions
1,130 Visualizações
(@fabiosp)
Posts: 291
Reputable Member
Topic starter
 

Olá prezados colegas bom dia.

Tenho um problema e espero que alguém possa me ajudar.
Tenho uma planilha onde registramos operações com moeda estrangeira e devo copiar a cotação para conversão de moeda de um site da internet a cada operação efetuada.
Pesquisando na internet encontrei um rotina onde abre o site indicado e copia toda a informação em uma plan.
O problema é que na hora da execução da macro aparece essa mensagem em um msg box "Não é possível baixar conteúdo desta página web"
O estranho e que manualmente consigo fazer cópia e colar na plan.
Será que existe algum problema com o site de onde retiro a informação ou a rotina que copie da internet esta errada?

Desde já agradeço a ajuda e a colaboração de todos colegas deste fórum.

Abraços

 
Postado : 21/01/2014 7:35 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Qual é o endereço do site?

Talvez alguém possa ajuda-lo.

Att

 
Postado : 21/01/2014 12:38 pm
(@fabiosp)
Posts: 291
Reputable Member
Topic starter
 

Olá alexandrevba tudo bem?

Os sites são esses
http://www4.bcb.gov.br/pec/taxas/batch/ ... id=txdolar
https://internacional.bb.com.br/displayRatesBR.bb

Acho que pode haver alguma coisa errada com a rotina que encontrei na internet.
Se alguém souber de alguma outra forma para eu poder executar esta tarefa agradeço.

Desde de muito obrigado.

Abraços.

 
Postado : 21/01/2014 5:06 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Tente isso:

Sub COTDOLAR()

    Range("A1").Select
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;https://www3.bcb.gov.br/ptax_internet/consultarUltimaCotacaoDolar.do", _
        Destination:=Range("$A$1"))
        .Name = "consultarUltimaCotacaoDolar.do_1"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlAllTables
        .WebFormatting = xlWebFormattingNone
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub

Me avise.

Abs,

 
Postado : 21/01/2014 6:56 pm
(@fabiosp)
Posts: 291
Reputable Member
Topic starter
 

Boa noite Mandrix.xls

Muito obrigado pela ajuda.
Tentei executar sua rotina e deu certo para copiar dados do site http://www4.bcb.gov.br/pec/taxas/batch/ ... id=txdolar porem não funciona para o site https://internacional.bb.com.br/displayRatesBR.bb sai um erro 1004 falando que não foi possível abrir a página e baixar o conteúdo.
Qual será o problema?

Desde já agradeço.

Abraços.

 
Postado : 21/01/2014 7:28 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

No meu funciona.

Qq coisa fala.

Abs

Sub MOSTRATAXAS()

    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;https://internacional.bb.com.br/displayRatesBR.bb", Destination:=Range( _
        "$A$1"))
        .Name = "displayRatesBR.bb"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "7"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub
 
Postado : 21/01/2014 9:09 pm
(@fabiosp)
Posts: 291
Reputable Member
Topic starter
 

Bom dia MANDRIX.xls.

Muito obrigado pela ajuda.
Testei sua rotina mas continua aparecendo a mensagem de erro.
Fazendo a depuração o campo .Refresh BackgroundQuery:=False fica amarelo.
Você disse que testou e funcionou.
A rotina para baixar dados da outra página funciona
Seria problema com a versão do meu Internet Explorer ou sistema operacional?
Eu utilizo Win XP com IE8.

Desde já agradeço a ajuda e compreensão.

Abraços.

 
Postado : 22/01/2014 5:20 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Realmente não sei cara...

Por que vc não faz o procedimento normal e grava (GRAVAR MACROS)?.

Depois vc dá uma analisada no código. Foi o que eu fiz.

Abs,

 
Postado : 22/01/2014 12:04 pm
(@fabiosp)
Posts: 291
Reputable Member
Topic starter
 

Olá Mandrix.xls

Muito obrigado pela resposta.
Então, tentei fazendo o procedimento utilizando gravar macros mas quando vou rodar a macro também aparece aquele erro.
Acho que deve ser algo com o OS ou a versão do IE que eu uso pois nem utilizando a função Obter Dados Externos do excel funciona.

Pesquisei na net e não achei nada a respeito.

Será que algum colega do fórum já teve problema parecido??

Abraços.

 
Postado : 22/01/2014 5:18 pm