stackoverflow社区!
我正在研究一个可以帮助我从网上获取数值数据的宏。问题出现在某些值的不同位数,因此我无法对所有数据正确使用InSrt / Mid函数。现在,代码中的InSrt / Mid给出了两个文本行,第一行是合适的,第二行是不相关的。即。
日期:11.04.14< ---必需行
Terfdgid< ---不需要行
这两行都出现在UserForm.TextBox中。
有人可以建议VBA代码消除TextBox中的第二行,这样只会显示第一行吗?不幸的是,我所有尝试实现它的尝试都没有成功。
这是我使用的代码:
Private Sub CommandButton1_Click()
Set browser = CreateObject("InternetExplorer.Application")
browser.Visible = False
Dim URL As String: URL = "http://www.internet.com"
the_start:
browser.Navigate (URL)
Do
DoEvents
If Err.Number <> 0 Then
browser.Quit
Set browser = Nothing
GoTo the_start:
End If
Loop Until browser.ReadyState = 4
WebText = browser.Document.Body.InnerText
Dim data As String
Dim Nmbr As String
data = "Something:"
If InStr(WebText, data) > 0 Then
WebText2 = Mid(WebText, InStr(WebText, data), Len(data) + 12)
Nmbr = Mid(WebText2, Len(WebText2) - 11, 16)
Else
Nmbr = "0"
End If
UserForm1.TextBox1.Text = Nmbr
MsgBox "Download Complete."
End Sub
提前感谢您和最好的问候!
答案 0 :(得分:1)
首先确定哪个字符分隔文本行。如果角色是 chr(10),则使用类似:
的内容UserForm1.TextBox1.Text = Split(Nmbr,chr(10))(0)