Wednesday 17 May 2017

Live Forex Rates In Excel


Taxas de Forex em Tempo Real no Excel Obtenha taxas de câmbio em tempo real em Excel com esta planilha gratuita. As aspas são adiadas por cerca de 15 ou 20 minutos, mas são atualizadas a cada minuto ou assim. Tudo é automatizado na VBA. O VBA pode ser visto e modificado. As porcas e parafusos do código é um QueryTable que extrai as taxas de forex mais recentes de finance. yahoo para as duas moedas especificadas. Tudo o que você precisa fazer é digitar dois códigos de moeda de três letras e clicar em um botão (você pode encontrar uma lista de códigos de moeda aqui). O VBA então baixa as taxas de câmbio mais recentes do Yahoo para o Excel, usando uma tabela de consulta. Em seguida, o Excel baixa as taxas de fechamento, aberto e atual do bidask para o par de moedas. Clicar no botão novamente atualiza as aspas com os valores mais recentes. Atualizado automaticamente Forex em tempo real no Excel Agora, here8217s onde podemos ser inteligente e obter o Excel para atualizar automaticamente as taxas de câmbio ao vivo. 1. Selecione a QueryTable como mostrado abaixo, clique com o botão direito do mouse e selecione Data Range Properties. 2. No menu External Data Range Properties, coloque uma verificação na opção Refresh every e escolha um tempo de atualização (você só pode escolher um número inteiro de minutos). Agora clique em OK. O Excel agora atualiza os dados no QueryTable automaticamente, sem que você precise clicar em botões ou executar macros. Legal, eh Eu uso uma variante desta planilha para acompanhar o valor da libra esterlina da minha poupança externa. Você pode, por exemplo, modificar o VBA para baixar taxas de Forex para muitos pares de moedas (deixe-me saber se você deseja esta planilha). Outra planilha do Excel recupera as taxas de câmbio históricas diárias entre duas datas. 9 pensamentos sobre as taxas de câmbio em tempo real do Excel em Excel Esta folha de cálculo do Excel tem uma função VBA (UDF) que raspa as taxas de câmbio ao vivo do Yahoo Finance. Leia sobre para a planilha de Excel livre e VBA. A função do Excel é perfeita para sempre que você precisar de uma conversão de moeda. Eu uso-o para manter-se a par do valor da libra britânica de uma conta bancária dos EU e do dólar canadense. As taxas são raspadas do Yahoo Finance e são em tempo real (mas atrasadas em 15 ou 20 minutos). O UDF é simples de usar. Aqui é a sintaxe. FXRate (8220currency18221, 8220currency28221,8220close8221, 8220open8221, 8220bid8221, 8220ask8221) Este é um exemplo de como utilizar FXRate () no Excel para uma conversão de moeda entre GBP e USD. Os dois primeiros argumentos são a moeda que você está convertendo ea moeda que você está convertendo para. Estes são códigos de moeda de três letras (por exemplo, GBP para Libras Esterlinas ou CAD para Dólares Canadenses) introduzidos como cadeias de caracteres. O terceiro argumento é um de 8220close8221, 8220open8221, 8220bid8221 ou 8220ask8221 (novamente como uma seqüência de caracteres). O preço próximo é o fechamento anterior. O link para a planilha do Excel está na parte inferior deste post, mas aqui é o VBA. Opção Função Explícita FXRate (moeda1 Como Cadeia, moeda2 Como Cadeia, taxaTipo como Cadeia) Como Dim Duplo str Como Cadeia Dim temp Como Cadeia Dim bidStart Como Long Dim bidEnd As Long Dim askStart Como Long Dim askEnd Como Long Dim openStart Como Long Dim openEnd As Long Dim closeStart Como Longo Dim closeEnd As Long Dim bid Como Double Dim ask Como Duplo Dim ropen Como Duplo Dim rclose Como Double str quotfinance. yahooqsquot amp currency1 amp cn2 amp quotXquot temp ExecuteWebRequest (str) bidStart InStr (temp, quotBid: quot) bidEnd InStr (bidStart, temp, quotquot) bid Meio (temp, bidStart 65, bidEnd - bidStart - 72) askStart InStr (temp, quotAsk: quot) StartStart InStr (temp, quotOpen: quot) openEnd InStr (openStart, temp, quotquot) ropen Mid (temp, openStart 38, openEnd - openStart - 38) closeStart InStr (temp, quotPrev Close: quot) closeEnd InStr (closeStart , Temp, quotquot) rclose Mid (temp, closeStart 4 4, closeEnd - closeStart - 44) If rateType quotaskquot Então FXRate perguntar ElseIf rateType quotbidquot Então FXRate lance ElseIf rateType quotopenquot Então FXRate ropen ElseIf rateType quotclosequot Então FXRate rclose End If End Função Função ExecuteWebRequest (ByVal url Como String) As String Dim oXHTTP As Object Se InStr (1, url, quotquot, 1) ltgt 0 Então url url amp quotampcbquot amp Timer () 100 Else url url amp quotcbquot amp Timer () 100 End If Definir oXHTTP CreateObject (quotMSXML2.XMLHTTPquot) oXHTTP. Open quotGETquot, url, False oXHTTP. send ExecuteWebRequest oXHTTP. responseText Definir oXHTTP Nothing End Function ExecuteWebRequest () foi copiado e modificado a partir daqui. ExecuteWebRequest () recupera o HTML de uma página da Web, enquanto FXRate () processa o HTML para extrair as taxas de câmbio. Tenha em mente que FXRate () raspa os dados do Yahoo Finance com algum processamento de seqüência simples. Assim, se a estrutura dos dados no Yahoo Finance mudar, então esta função pode não funcionar mais. Deixe-me saber se isso acontecer, e I8217ll atualizar o VBA para que ele funciona novamente. Se você quiser taxas de conversão de moeda histórica em um intervalo de datas, então confira esta planilha. Você também pode usar um QueryTable para extrair taxas de câmbio. Deixe um comentário se você tiver dúvidas ou comentários. 22 pensamentos sobre ldquo Taxa de Câmbio Função em Excel rdquo A função é interrompida quando as localizações das pesquisas de substring excedem o valor máximo de 32767 para o tipo de dados Integer. Se você alterar as declarações para bidStart, bidEnd, etc. para Long em vez de Integer, a função funcionará de forma confiável quando o comprimento da variável Temp é extremamente grande. Para uma página devolvida hoje, o comprimento da variável Temp era 76104 com o bidStart igual a 33422. As declarações Long permitem que a função novamente funcione conforme esperado. Obrigado I8217ve mudou o tipo de dados para Long no VBA e planilha. Muito apreciado Obrigado pelo código acima. I8217m tendo problemas com a posição das taxas fx na origem HTML. I8217m tentando recuperar a taxa de fx GBPSGD. Abaixo estão as posições para o 8220bid8221 (o primeiro preço que o código procura na fonte html) bidStart31180 bidEnd 31180 bidStart 65 31245 bidEnd 8211 bidStart 8211 72 -72 Assim, porque o bidStart e BidEnd são os mesmos a função Mid can8217t encontrar a taxa de lance . Por que você a posição bidEnd procurando por 82208221 bidEnd InStr (bidStart, temp, 82208221) I8217ve apenas tentei usar a função FXRate () na planilha para pegar a taxa de câmbio GBPSGD com ele parece funcionar bem 8211 o UDF corretamente raspa o lance Preço de Yahoo Finance. Então, porque o bidStart e BidEnd são os mesmos a função Mid não pode encontrar a taxa de lance Parece encontrar a taxa de lance para mim Eu tentei usar essa conversão, mas não está mais trabalhando ou dando não mais um valor de resultado. Eu usei antes função similar: (veja abaixo). Mas quando eu uso o abaixo e converter de IDR para EUR ele dá conversão de 5 euros em vez de 3,5Euro (que eu recebo quando eu ir on-line para o lado do conversor de Yahoo) Então eu olhei para uma solução melhor e veio do seu lado, No entanto, nenhum resultado é fornecido: Função YahooCurrencyConverter (ByVal strFromCurrency, ByVal strToCurrency, ByVal opcional strResultType 8220Value8221) Erro GoTo ErrorHandler 8216Init Dim strURL Como Cadeia Dim objXMLHttp como objeto Dim strRes As String, dblRes como conjunto duplo objXMLHttp CreateObject (8220MSXML2.ServerXMLHTTP8221) 8216strURL 8220finance. yahoodquotes. csve. csvampfc4l1amps8221 amp strFromCurrency amp strToCurrency amp 8220X8221 strURL 8220finance. yahooqs8221 amp strFromCurrency amp strToCurrency amp 8221 X8221 8216Send pedido XML Com objXMLHttp. Open 8220GET8221, strURL, False. setRequestHeader 8220Content-Type8221, 8220applicationx-www-form-URLEncoded8221.send strRes. responseText End Com 8216Parse resposta dblRes Val (Split (strRes, 8220,8221) (1)) Sel Ect Caso strResultType Caso 8220Value8221: YahooCurrencyConverter dblRes Caso Else: YahooCurrencyConverter 82201 8221 amp strFromCurrency amp 8221 8221 amp dblRes amp 8221 8221 amplificador strToCurrency End Select CleanExit: Set objXMLHttp Nada Sair Função ErrorHandler: YahooCurrencyConverter 0 GoTo CleanExit Função final Por favor, alguém pode me ajudar Eu Precisa de alguma planilha do Excel para mostrar as taxas de câmbio em uma data específica. Exemplos: Taxa de câmbio de USD para GBP em 10 de outubro de 2014. Taxa de câmbio de USD para BRL em 10 de outubro de 2014. Eu acho que poderia ser uma função, por exemplo: FXRateatDate (currency1, currency2,8221Date8221) Isso é possível A outra coisa é que ele Deve trabalhar com meu laptop brasileiro excel, que usa. Como separador decimal (International Units System) Obrigado antecipadamente VB funciona muito bem. Juntamente com a taxa de câmbio OPEN (que é a única parte que eu estou usando), eu gostaria de também extrair a data de troca em uma célula. Você pode sugerir algo Isso ainda funciona Porque ele doesn8217t parece estar funcionando quando eu usá-lo Eu tentei a seguinte fórmula: FXRate (8220EUR8221,8221USD8221,8221bid8221) e ele retornou 8220VALUE8221. Caros todos, trabalhou muito bem até o fim de dezembro 2016. Parece Yahoo mudou algo em seu local. Alguém poderia por favor olhar para o código e dar uma solução o que precisa ser alterado, obrigado. Este código ajustado parece funcionar. Eu didn8217t testá-lo com todos os possíveis combos, mas funcionou para os poucos que eu fiz teste Função FXRate (currency1 Como String, currency2 Como String, rateType As String) Como Dim Dim str Como Cadeia Dim temp Como Cadeia Dim bidStart As Long Dim bidEnd As Longo Dim askStart Como Longo DimorParar Como Longo DimObjecto Como Longo DimObreEnd Como Longo DimOstoar Como Longo DiminuirDome Como Longo DimObjecto Como Duplo DimOrdenar Como Duplo DimRobar Como Duplo DimRclose ComoDuplo Dim iComo Longo, i1Como Longo, I2 Como Longo Dim myArray () Como variante str 8220finance. yahooqs8221 amp1 currency1 amp2 currency 8220X8221 temp ExecuteWebRequest (str) ReDim myArray (1 para Len (temp) 500) Para i 1 para Len (temp) 500 i1 (i 8211 1) 500 1 i2 i1 500 8211 1 Se (i2 gt Len (temp)) Então i2 Len (temp) myArray (i) Mid (temp, i1, 500) Próxima i 8216ActiveSheet. Range (8220A508221) myArray bidStart InStr (1, 8220Bid: 8221) bidStart InStr (bidStart, temp, 8220x82218221gt8221) 4 bidEnd InStr (bidStart 1, temp, 82208221) 4 askEnd InStr (askSt (OpenStart 1, temp, 82208221) 7 closeEnd InStr (closeStart 1, temp, 8220ltquot) bid Meio (temp, bidStart, bidEnd 8211 bidStart) perguntar Mid (temp, askStart, askEnd 8211 askStart ) Ropen Mid (temp, openStart, openEnd 8211 openStart) rclose Mid (temp, closeStart, closeEnd 8211 closeStart) Se rateType quotaskquot Então FXRate perguntar ElseIf rateType quotbidquot Então FXRate lance ElseIf rateType quotopenquot Então FXRate ropen ElseIf rateType quotclosequot Então FXRate rclose End If Function ExecuteWebRequest (ByVal url como String) As String Dim oXHTTP como objeto Se InStr (1, url, quotquot, 1) 0 Então url url amp 8220ampcb8221 amp Timer () 100 Else url amp 8220cb8221 amp Timer () 100 End If Set oXHTTP CreateObject (8220MSXML2.XMLHTTP8221) oXHTTP. Open 8220GET8221, url, False oXHTTP. send ExecuteWebRequest oXHTTP. responseText Definir oXHTTP Nada Oops 8211 deixado em algum código de depuração. Você pode excluir este material: ReDim myArray (1 Para Len (temp) 500) Para i 1 Para Len (temp) 500 i1 (i 1) 500 1 i2 i1 500 1 Se (i2 gt Len (temp)) Então i2 Len Temp) myArray (i) Mid (temp, i1, 500) Próxima i ActiveSheet. Range (A50) myArray Grrr Moderador 8211 exclua os comentários acima. O corte e colar não funcionou corretamente e deixou algum código fora. Esperemos que o que está abaixo está completo e correto. Obrigado Função FXRate (currency1 Como String, currency2 Como String, rateType Como String) Como Dim Duplo str Como String Dim temp Como String Dim bidStart Como Longo Dim bidEnd como Long Dim askStart Como Long Dim askEnd Como Long Dim openStart Como Long Dim openEnd As Long Dim closeStart Como Long Dim closeEnd As Long Dim bid Como Duplo Dim ask Como Duplo Dim ropen Como Duplo Dim rclose Como Dupla Dim i Como Longo, i1 Como Longo, i2 Como Long temp ExecuteWebRequest (str) ReDim myArray (1 To Len (temp) 500) Para i 1 Para Len (temp) 500 i1 (i 8211 1) 500 1 i2 i1 500 8211 1 Se (i2 gt Len (temp)) Então i2 Len (temp) myArray (i) Mid (temp, i1, 500 ) Próxima i 8216ActiveSheet. Range (8220A508221) myArray bidStart InStr (1, temp, 8220Bid: 8221) bidStart InStr (bidStart, temp, 8220x82218221gt8221) 4 bidEnd InStr (bidStart 1, temp, 82208221) 82208221) 7 openEnd InStr (openStart 1, temp, 82208221) 7 closeEnd InStr (closeStart 1, temp, 8220ltquot) bid Meio (temp, bidStart, bidEnd 8211 bidStart) a Sk Mid (temp, openStart, openEnd 8211 openStart) rclose Mid (temp, closeStart, closeEnd 8211 closeStart) Se rateType quotaskquot Então FXRate perguntar ElseIf rateType quotbidquot Então FXRate lance ElseIf rateType quotopenquot Então FXRate Ropen ElseIf rateType quotclosequot Então FXRate rclose End If Função ExecuteWebRequest (ByVal url Como String) As String Dim oXHTTP Como Objeto Se InStr (1, url, quotquot, 1) 0 Então url url amp 8220ampcb8221 amp Timer () 100 Else url url amp 8220cb8221 Amp Timer () 100 End If Definir oXHTTP CreateObject (8220MSXML2.XMLHTTP8221) oXHTTP. Open 8220GET8221, url, False oXHTTP. send ExecuteWebRequest oXHTTP. responseText Definir oXHTTP Nada como o Free Spreadsheets Master Base de Conhecimento PostsWhat recente que tipo de planilhas de suporte uma fórmula como o Seguinte: O resultado deverá ser 3000 USD trocados em euros. Possivelmente uma data poderia ser fornecida para uma taxa de câmbio histórica. Alternativamente, a média para o mês passado ou assim. Eu usaria esse recurso o tempo todo e ele tem que ser relevante para tantos outros usuários. Eu prefiro trabalhar no Excel, mas planilhas on-line como o Google ou Zoho também está bem. Perguntou May 20 11 at 12:07 GOOGLE SPREADSHEETS Theres um script de planilha do Google que retorna a taxa de câmbio entre EURO e uma moeda que você especificar. Os dados são supostamente do Banco Central Europeu. Abra uma planilha do Google Docs. Clique em Inserir pesquisa de script para ECBExchangeRate Com aspas na data Isto irá devolver a taxa de câmbio entre USD e EUR para a data mmddyyyy. Infelizmente, a fonte de dados não é atualizada. Calculando entre 2 Moedas: Por exemplo, queremos obter a taxa USDJPY para hoje. Obtenha EURUSD e EURJPY usando a fórmula acima. Divida a taxa EURJPY pela taxa EURUSD. Você recebe o USDJPY. Eu não acredito que tal função existe para o Excel (pelo menos por padrão). Você pode, no entanto, configurar uma folha que importe os dados de uma tabela de taxas de câmbio on-line como a da página do Yahoo Finance (finance. yahoo Investing Currencies Investing Cross Rates). Você pode então configurar uma fórmula VLOOKUP ou INDEXMATCH para obter as taxas de câmbio relevantes para você. Crie uma nova folha (recomendado). Clique em Dados da Web Digite o seguinte URL: Clique na seta amarela ao lado da tabela de taxas de câmbio. A seta deve se transformar em uma marca de seleção verde. Clique em Importar. Clique em Propriedades. Em Controle de atualização. Especifique com que freqüência você deseja que o Excel recupere novos dados ou escolha Atualizar dados ao abrir o arquivo. Clique em OK e aguarde que o Excel carregue os dados. Para atualizar os dados, basta pressionar Ctrl-Alt-F5. Os dados na Página de Finanças do Yahoo são bastante limitados, mas cobrem as moedas mais populares. Você pode usar outras fontes, como: O website xeucc tem tabelas de taxas históricas que você pode consolidar. Você não encontrará nada construído em qualquer planilha para algo que muda constantemente como as taxas de câmbio. Felizmente, existem soluções lá fora já que outros criaram para este tipo de coisa, como WikiHow. Yahoo Respostas. OzGrid. EHow. Existem muitas outras soluções, mas a maioria delas segue os mesmos padrões gerais de design. Se nenhum dos links acima é o que você está procurando, eu sugiro pesquisar no site OzGrid. Seus fóruns são muitas vezes um dos melhores para encontrar soluções Excel. Respondeu May 20 11 at 12:27 Nenhum dos links são úteis. Eu ainda seria melhor copiar e colar na taxa de moeda atualizada. Tem que haver uma solução melhor. Ndash David May 20 11 at 13:25 Você pode usar Spearian para MS Excel, spearianforexcel. Para trabalhar e para baixar todo o histórico de qualquer taxa de câmbio. É muito confortável para obter acesso a todos os principais dados do mercado, incluindo o Yahoo Finance

No comments:

Post a Comment