Sunday 27 August 2017

Foreign Trading System Vb Code


Função de Taxa de Câmbio no Excel Esta planilha do Excel possui uma função VBA (UDF) que raspa as taxas de câmbio em tempo real do Yahoo Finance. Leia mais para a planilha gratuita do Excel e VBA. A função Excel é perfeita para sempre que você precisa de uma conversão de moeda. Eu uso isso para acompanhar o valor da libra esterlina de uma conta bancária dos EUA e do dólar canadense. As taxas são recuperadas do Yahoo Finance e são em tempo real (mas atrasadas em 15 ou 20 minutos). A UDF é simples de usar. Aqui a sintaxe. FXRate (8220currency18221, 8220currency28221,8220close8221, 8220open8221, 8220bid8221, 8220ask8221) Este é um exemplo de como usar o FXRate () no Excel para uma conversão de moeda entre GBP e USD. Os dois primeiros argumentos são a conversão de moeda que você converteu e a conversão da moeda que você está convertendo. Estes são códigos de moeda de três letras (por exemplo, GBP para libras esterlinas ou CAD para dólares canadenses) inseridos como cordas. O terceiro argumento é um de 8220close8221, 8220open8221, 8220bid8221 ou 8220ask8221 (novamente como uma string). O preço de fechamento é o fechamento anterior. O link para a planilha do Excel está na parte inferior desta postagem, mas here8217s o VBA. Opção Função explícita FXRate (currency1 As String, currency2 As String, rateType As String) Como Double Dim str Como String Dim temp Como String Dim StartStart Como Long Dim BidEnd Como Long Dim askStart Como Long Dim askEnd Como Long Dim openStart Como Long Dim openEnd Como Long Dim closeStart As Long Dim closeEnd Como Long Dim lance como Double Dim perguntar como Double Dim ropen Como Double Dim rclose Como Double str quotfinance. yahooqsquot amp currency1 amp currency2 amp quotXquot temp ExecuteWebRequest (str) bidStart InStr (temp, quotBid: quot) bidEnd InStr (bidStart, temp, quotquot) bid Mid (temp, bidStart 65, bidEnd - bidStart - 72) askStart InStr (temp, quotAsk: quot) askEnd InStr (askStart, temp, quotquot) ask Mid (temp, askStart 65, askEnd - AskStart - 72) openStart 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) Se rateType quotaskquot Então FXRate pedir ElseIf rateType quotbidquot Então FXRate lance ElseIf rateType quotopenquot Então FXRate ropen ElseIf rateType quotclosequot Então FXRate rclose End If End Function Função ExecuteWebRequest (ByVal url As String) Como 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 Set oXHTTP CreateObject (quotMSXML2.XMLHTTPquot) oXHTTP. Open quotGETquot, url, Falso 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 o FXRate () processa o HTML para extrair as taxas de câmbio. Tenha em mente que FXRate () arranca os dados do Yahoo Finance com algum processamento de string simples. Então, se a estrutura dos dados no Yahoo Finance for alterada, essa função pode não funcionar mais. Deixe-me saber se isso acontece, e I8217ll atualizar o VBA para que ele funcione novamente. Se desejar taxas de conversão de moeda histórica durante um período, verifique esta planilha. Você também pode usar um QueryTable para extrair as taxas de câmbio. Deixe um comentário se você tiver dúvidas ou comentários. 18 pensamentos sobre a função de taxa de câmbio de ldquo no Excel rdquo A função quebra quando as localizações das buscas de substring excedem o valor máximo 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 for extremamente grande. Para uma página retornada hoje, o comprimento da variável Temp foi 76104 com o bidStart igual a 33422. As declarações longas permitem que a função funcione novamente conforme o esperado. Obrigado I8217ve alterou o tipo de dados para Long no VBA e na planilha. Muito apreciado Obrigado pelo código acima. I8217m tendo problemas com a posição das taxas fx na fonte HTML. I8217m tentando recuperar a taxa FPS 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 Então, como o bidStart e o BidEnd são os mesmos, a função Mid can8217t encontra a taxa de lance . Por que você faz a posição bidEnd procurando por 82208221 bidEnd InStr (bidStart, temp, 82208221) I8217ve só tentou usar a função FXRate () na planilha para pegar a taxa de câmbio GBPSGD com parece funcionar bem 8211 a UDF corretamente raspa o lance Preço do Yahoo Finance. Então, porque o bidStart e o BidEnd são iguais, a função Mid não consegue encontrar a taxa de oferta. Parece achar a taxa de lance para mim, tentei usar essa conversão, mas não está funcionando ou não deixando mais um valor de resultado. Eu usei antes de uma função semelhante: (veja abaixo). Mas quando eu uso o abaixo e convertei de IDR para EUR, ele concede uma conversão de 5 euros em vez de 3.5Euro (o que eu recebo quando eu entrar em linha com o lado do conversor do Yahoo) Então eu procurei uma solução melhor e veio do seu lado, No entanto, nenhum resultado é dado: Função YahooCurrencyConverter (ByVal strFromCurrency, ByVal strToCurrency, Opcional ByVal strResultType 8220Value8221) On Error GoTo ErrorHandler 8216Init Dim strURL como String Dim objXMLHttp como objeto Dim strRes como String, dblRes como Double Set 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 Case strResultType Case 8220Value8221: YahooCurrencyConverter dblRes Case Else: YahooCurrencyConverter 82201 8221 amp strFromCurrency amplificador 8221 8221 amp dblRes amplificador 8221 8221 amp strToCurrency Final Selecionar CleanExit: Set objXMLHttp Nothing Exit Function ErrorHandler: YahooCurrencyConverter 0 GoTo CleanExit End Function Por favor, alguém pode me ajudar? Precisa de uma planilha de 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. Penso que poderia ser uma função, por exemplo: FXRateatDate (currency1, currency2,8221Date8221) Isso é possível. O outro é que isso Deve trabalhar com o meu laptop excel do Brasil, que usa. Como separador decimal (International Units System) Obrigado antecipadamente a VB funciona de forma excelente. Junto com a taxa de câmbio aberta (que é a única parte que estou usando), eu também gostaria de extrair a data de troca em uma célula. Você pode sugerir algo Isso ainda funciona Porque ele não parece estar funcionando quando eu uso isso. Eu tentei a seguinte fórmula: FXRate (8220EUR8221,8221USD8221,8221bid8221) e retornou 8220VALUE8221. Deixe uma resposta Cancelar resposta Como o Free Spreadsheets Master Knowledge Base Posts recentesI8217ve sido ensinar golfistas de iniciantes a profissionais de turismo, jogadores colegiados para amadores realizados e nossos jovens locais para celebridades de Hollywood. Eu ensinei milhares de lições e ajudei todos os níveis de golfistas a construir, crescer e melhorar seu jogo de golfe há mais de 25 anos aqui em Torrey Pines, incluindo o balanço total, o shortgame, a colocação, a gestão do curso eo lado mental do jogo. Programas personalizados são oferecidos para que você atinja a bola mais reta e mais longe com menos traços, mais compreensão, menos esforço e diversão adicional. Me ligue na minha celular em 619-322-8333 ou preencha meu formulário de contato para qualquer uma das suas necessidades de serviço de golfe. Faço uma promessa para você fazer o meu melhor para melhorar seu jogo geral. Clique aqui para verificar minha Bio. Serviços de Lição Ofertados: Pacotes personalizados com tudo incluído, incluindo reservas avançadas, green fees, instruções, carrinho, bolas de gama, escolha de ampères do Curso de Torrey Pines North ou South com aulas de jogo ou times de golfe, sem taxa de reserva avançada em Aulas de jogo, Prepare E Play Package ou Golf Schools Bolas de alcance ilimitadas em aulas particulares e escolas de golfe Análise de video de computador de alta tecnologia com lições particulares, Pacotes PampP e escolas de golfe Inspeção de golfe PGA insuperável com mais de 20 anos de experiência em Torrey Pines Iniciantes: se você é iniciante, seja seu Feminino, masculino, júnior, sénior ou com deficiência física, meus serviços irão ajudá-lo a alcançar um nível de conforto com conhecimento adicional, conscientização e compreensão. Quando estiver jogando em um curso, praticando em um intervalo ou em qualquer lugar na instalação de golfe, o fator de intimidação será facilitado. Intermediários: Como intermediário, você melhorará seus conhecimentos e começará a entender o que seu clube faz para a bola e o que seu swing faz para o clube. Transforme o agravamento e a frustração em conhecimento e compreensão, para que você aproveite seu jogo. Jogadores cumpridos: quanto ao jogador consumado, aperfeiçoe suas habilidades e incorpore a proficiência física e mental para elevar seu jogo para o próximo nível. 8221 Fui afortunado o suficiente para que minha filha mais velha compre um plano de instrução particular de 6 lições de Michael Major em Torrey Pines. Como quase 70 anos de novo no jogo de golfe (4-5 anos pirateando), queria tentar melhorar meu jogo. Michael dedicou tempo aos fundamentos do balanço, pitching, putting, areia e técnicas de melhoria básica. Bem, eu definitivamente melhorou em todas as áreas e vi os traços caírem das minhas pontuações Não só percebi e sinto a diferença, mas meus amigos de golfe também. Eu recomendo Michael Major como instrutor e agradeço as instruções que me forneceu.8221 Dr. Bob Stein, San Diego Notícias do blog

No comments:

Post a Comment