Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用单元格中的值创建动态url_Url_Excel_Excel Web Query_Vba - Fatal编程技术网

使用单元格中的值创建动态url

使用单元格中的值创建动态url,url,excel,excel-web-query,vba,Url,Excel,Excel Web Query,Vba,我正在运行Excel工作表的web查询,并且能够正确地提取数据,但是我希望引用工作表中可以更改的单元格 我想把F引用设为一个单元格,这样我就可以在不更改代码的情况下轻松更改请求。我一直在尝试使用范围函数 Sub URL_Get_Query() With ActiveSheet.QueryTables.Add(Connection:= _ "URL;http://finance.yahoo.com/q/is?s=F+Income+Statement&annual", _

我正在运行Excel工作表的web查询,并且能够正确地提取数据,但是我希望引用工作表中可以更改的单元格

我想把F引用设为一个单元格,这样我就可以在不更改代码的情况下轻松更改请求。我一直在尝试使用范围函数

Sub URL_Get_Query()

With ActiveSheet.QueryTables.Add(Connection:= _
    "URL;http://finance.yahoo.com/q/is?s=F+Income+Statement&annual", _
    Destination:=Range("a1"))

    .BackgroundQuery = True
    .TablesOnlyFromHTML = True
    .Refresh BackgroundQuery:=False
    .SaveData = True
End With
End Sub

这将获取Sheet1单元格A1中的任何符号,并在查询中使用它。结果写入表2的单元格A1。如果需要,可以修改此选项以使用不同的范围并写入不同的图纸

Sub UseDynamicURL()
    Dim wb As Workbook
    Dim src As Worksheet
    Dim tgt As Worksheet

    Set wb = ThisWorkbook
    Set src = wb.Sheets("Sheet1")
    Set tgt = wb.Sheets("Sheet2")

    Dim url As String
    Dim symbol As String

    symbol = src.Range("A1")
    url = "URL;http://finance.yahoo.com/q/is?s="
    url = url & symbol & "+Income+Statement&annual"

    With tgt.QueryTables.Add(Connection:= _
        url, _
        Destination:=tgt.Range("A1"))

        .BackgroundQuery = True
        .TablesOnlyFromHTML = True
        .Refresh BackgroundQuery:=False
        .SaveData = True
    End With
End Sub

把标题弄清楚