Excel VBA-比特币
我试图在Microsoft Excel上运行此宏,但每次运行时,都会收到 运行时错误“5” 我做错了什么? 这是我第一次做这样的事情 假设每次我运行键盘快捷键时,都会从区块链网站获取数据 它本质上只是一段代码,上面写着 1美元值这么多BTCExcel VBA-比特币,excel,bitcoin,currency-exchange-rates,vba,Excel,Bitcoin,Currency Exchange Rates,Vba,我试图在Microsoft Excel上运行此宏,但每次运行时,都会收到 运行时错误“5” 我做错了什么? 这是我第一次做这样的事情 假设每次我运行键盘快捷键时,都会从区块链网站获取数据 它本质上只是一段代码,上面写着 1美元值这么多BTC Sub USD_to_BTC() ' ' USD_to_BTC Macro ' Get the price of 1 btc if purchased by 1 USD ' ' Keyboard Shortcut: Ctrl+Shift+B ' Wi
Sub USD_to_BTC()
'
' USD_to_BTC Macro
' Get the price of 1 btc if purchased by 1 USD
'
' Keyboard Shortcut: Ctrl+Shift+B
'
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;https://blockchain.info/tobtc?currency=USD&value=1", Destination:=Range( _
"$D$8"))
.CommandType = 0
.Name = "tobtc?currency=USD&value=1_1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
End Sub
删除(或注释掉).CommandType=0
行
解释说
仅当查询表或数据透视表缓存的QueryType属性值为xlOLEDBQuery时,才能设置CommandType属性
删除(或注释掉).CommandType=0
行
解释说
仅当查询表或数据透视表缓存的QueryType属性值为xlOLEDBQuery时,才能设置CommandType属性
这里有两件事:
Sub RefreshQueryTable()
ActiveSheet.QueryTables("tobtc?currency=USD&value=1_1").Refresh
End Sub
Sub RefreshQueryTable()
ThisWorkbook.Sheets("Sheet1").QueryTables("tobtc?currency=USD&value=1_1").Refresh
End Sub
这里有两件事:
Sub RefreshQueryTable()
ActiveSheet.QueryTables("tobtc?currency=USD&value=1_1").Refresh
End Sub
Sub RefreshQueryTable()
ThisWorkbook.Sheets("Sheet1").QueryTables("tobtc?currency=USD&value=1_1").Refresh
End Sub
尝试使用XHR而不是QueryTable:
Sub USD_to_BTC()
使用CreateObject(“MSXML2.XMLHTTP”)
.打开“获取”https://blockchain.info/tobtc?currency=USD&value=1”“错
.发送
范围(“D8”)。值=.responseText
以
端接头
尝试使用XHR而不是QueryTable:
Sub USD_to_BTC()
使用CreateObject(“MSXML2.XMLHTTP”)
.打开“获取”https://blockchain.info/tobtc?currency=USD&value=1”“错
.发送
范围(“D8”)。值=.responseText
以
端接头
我是否要在我的整个代码下面加上你刚才提到的那三行代码?对不起,我是VBA新手。试图找出在我的代码中添加的位置,这样就不会出现错误9问题。你应该首先应用BruceWayne的解决方案来修复你的错误(我在上文第1点中已经提到。但是,如果工作表中已经存在您的查询表,您可以将我的3行代码添加到整个代码下面。并且确保更新您的键盘快捷键以调用RefreshQueryTable而不是方法。我是否将您刚才提到的3行代码添加到我的整个代码下面?对不起,我是VBA新手。试图找出在我的代码中添加的位置,这样就不会出现错误9问题。你应该首先应用BruceWayne的解决方案来修复你的错误(正如我在第1点中提到的。但是,如果工作表中已经存在查询表,则可以在整个代码下面添加我的3行代码。并确保更新键盘快捷键以调用RefreshQueryTable而不是方法。