我想從網站檢索數據,將其存儲在字符串中,並使用字符串函數將其放入行和列中:逗號用於列,而分號是新行。使用兩種方法並傳遞數據的VBA
我分別使用了兩種方法,他們的工作,但他們沒有這樣工作:
gettse()
應該在單元格中檢索數據,並split2()
應該分開的字符串。 當我運行每種方法時,他們工作正常。當然,我使用的split1()
與split2()
類似,但沒有參數並從cell(1,1)
中讀取。
你能告訴我們這個代碼使用了兩者的問題嗎?
我的猜測是它取決於互聯網的速度,當它檢索數據時,第二種方法已經運行。我用了5秒的延遲,但沒有奏效。
Sub main()
gettse
Dim data As String
data = Sheet1.Cells(1, 1).Value
split2 (data)
End Sub
Sub gettse()
Set shFirstQtr = Workbooks(1).Worksheets(1)
Set qtQtrResults = shFirstQtr.QueryTables _
.Add(Connection:="URL;http://www.tsetmc.com/tsev2/data/ClientTypeAll.aspx", _
Destination:=shFirstQtr.Cells(1, 1))
With qtQtrResults
.WebFormatting = xlNone
.WebSelectionType = xlSpecifiedTables
.WebTables = "1"
.Refresh
End With
End Sub
Sub split2(data As String)
Dim aColumns, aRows
Dim x As Long
aRows = split(data, ";")
For x = 0 To UBound(aRows)
aColumns = split(aRows(x), ",")
Range("A" & Rows.Count).End(xlUp).Offset(1).Resize(1, UBound(aColumns) + 1) = aColumns
Next
End Sub
問題是什麼,它是否拋出任何錯誤或者是你的實際結果與預期結果不同,如果是這樣,你能分享樣本投入和預期產出嗎? – Siva
在您上一篇文章中,我建議這可能是由於您重疊了數據源,顯示在下面的屏幕截圖中,您的分割代碼有效,並且我剛剛使用另一個數據源進行了複製,並且沒有重疊,請嘗試啓動您的粘貼在另一張紙上。 –
你是說當你運行main()它不運行其他兩個潛艇? –