VBA EXCEL CODE:当前股价

时间:2016-07-10 21:38:54

标签: vba excel-vba excel

我是编码和编程的新手,非常感谢您在创建我的第一个真实代码时可以给我的任何建议。

我想要它做的是询问用户股票代码名称是什么,一旦输入,消息框应显示股票的当前价格。

我知道提取当前股票价格的公式。 例如:要查找Netflix的当前值,您只需在电子表格中输入" NFLX"在单元格(A1)和单元格(A2)中放入以下公式: =NUMBERVALUE(WEBSERVICE("http://finance.yahoo.com/d/quotes.csv?s="&A1&"&f=l1"))

昨天在学习如何在VBA中定义变量时,我试图尝试这个概念并提出以下代码,这些代码显然不起作用: -

Sub Declaring_Variables()

    Dim TickerName As String

    TickerName = InputBox("Ticker Symbol")

    Dim CurrentPrice As Integer

    CurrentPrice = Formula ="=NUMBERVALUE(WEBSERVICE("finance.yahoo.com/d/quotes.csv?s="&TickerName&"&f=l1"))

    MsgBox (CurrentPrice)
End Sub

我确信问题在于我已经为CurrentPrice声明了公式。如果您可以教我如何使用我们在VBA中的电子表格中使用的常规公式,我将非常感激。我认为这将是一个很好的例子让我变得更好,因为它涵盖了一个非常重要的概念。

感谢您的时间。

此致 InWoods

1 个答案:

答案 0 :(得分:2)

尝试一下:

Option Explicit

Sub Declaring_Variables()

    Dim TickerName As String

    TickerName = InputBox("Ticker Symbol")

    Dim CurrentPrice As String

    CurrentPrice = Application.WebService("finance.yahoo.com/d/quotes.csv?s=" & TickerName & "&f=l1")

    MsgBox "Text Format: " & CurrentPrice & Chr(10) & _
        "Number Format: " & Application.NumberValue(CurrentPrice)
End Sub