我是VBA新手,我需要将this form中的值提取到Excel电子表格中。用户点击估算后,将显示汇率。 Excel电子表格的列标题与表单中的字段名称相匹配。
在表格中,“发送金额”将为50,100,500,1000,2500和7000.“来自”国家将始终为“美国”。工作表中应填写表格中其他字段中针对“美国”及其相应汇率的所有可能选择。
答案 0 :(得分:0)
Santosh ......有两种方法可以做到这一点
您需要了解数据库详细信息或在VBA for XML中创建COM模块(这又需要服务器详细信息)
如果你什么都不知道的话。我建议去youtube寻找“VBA com连接”或“VBA XML”。有一些很好的视频,在开放的论坛上交换服务器细节不是一个理想的事情
答案 1 :(得分:0)
这里没有运气,网站永远写下“正在连接...”。但是要解决你的问题,这里有一个示例代码:
请注意:在Excel的VBA(ALT)中+ F11)您必须将参考(工具 - >参考)添加到Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim myIE As InternetExplorer, myDoc As HTMLDocument, mySubDoc As HTMLDivElement Dim sVal As String, lVal As Long
Set myIE = New InternetExplorer With myIE .Visible = True Call .navigate("http://stackoverflow.com/") While Not .readyState = READYSTATE_COMPLETE DoEvents Wend Set myDoc = .document End With 'SAMPLE With mySubDoc Set mySubDoc = myDoc.getElementsByClassName("question-summary narrow").Item(0) sVal = CStr(mySubDoc.ID) lVal = CLng(mySubDoc.NodeType) Call MsgBox(sVal) Call MsgBox(CStr(lVal)) End With On Error Resume Next Call mySubDoc.Close Call myDoc.Close Call myIE.stop Call myIE.Quit On Error GoTo 0 Set mySubDoc = Nothing Set myDoc = Nothing Set myIE = Nothing
Set myIE = New InternetExplorer With myIE .Visible = True Call .navigate("http://stackoverflow.com/") While Not .readyState = READYSTATE_COMPLETE DoEvents Wend Set myDoc = .document End With 'SAMPLE With mySubDoc Set mySubDoc = myDoc.getElementsByClassName("question-summary narrow").Item(0) sVal = CStr(mySubDoc.ID) lVal = CLng(mySubDoc.NodeType) Call MsgBox(sVal) Call MsgBox(CStr(lVal)) End With On Error Resume Next Call mySubDoc.Close Call myDoc.Close Call myIE.stop Call myIE.Quit On Error GoTo 0 Set mySubDoc = Nothing Set myDoc = Nothing Set myIE = Nothing
End Sub
和Microsoft HTML Object Library
项目。