Excel VBA BMC发现CSV URL查询字符串长度错误

时间:2019-02-06 13:56:08

标签: excel vba bmc

我正在尝试向BMC发现发出URL查询,以使用Excel VBA将CSV数据检索到电子表格中。我遇到的问题是查询字符串经过编码后,长度为2060个字符。当我尝试将字符串粘贴到VBA编辑器中时,出现语法错误。我确定可以使用的最大字符串长度约为980个字符。如果我将字符串分成3个长度少于980个字符的字符串,然后将它们串联在一起,则会出现错误“需要常量表达式”。我知道一个字符串可以是64k个字符,所以这些错误使我感到困惑。

查询的格式为:

https://*INSERT_SERVER_HERE*/ui/api/CsvApi?query=*INSERT_ENCODED_QUERY_HERE*&username=*USERNAME*&password=*PASSWORD*

我用来测试的代码可以很好地适用于短查询字符串:

Option Explicit

Public Sub BMC_CSV_API_Test()
Dim qt As QueryTable
Dim ws As Worksheet

Set ws = ThisWorkbook.Worksheets("Sheet1")

Const URL As String = "PUT URL QUERY STRING HERE"

Set qt = ws.QueryTables.Add(Connection:="URL;" & URL, Destination:=ws.Range("A1"))

With qt
    .RefreshOnFileOpen = True
    .FieldNames = True
    .WebSelectionType = xlSpecifiedTables
    .WebTables = 1
    .Refresh BackgroundQuery:=False
End With

End Sub

任何建议,评论,技巧和建议都得到赞赏

0 个答案:

没有答案