MSXML:无效类字符串
问题描述:
我已经安装在我的电脑 MSXML 2.6 MSXML 3.0 MSXML 4.0 MSXML 6.0MSXML:无效类字符串
当我试图分析我的执行时间XSL我有错误无效类字符串 这些被代码
Public Sub PreviewDOCUMENT()
Dim ObjXMLTransformDoc
Dim ObjXMLTransformStyle
Dim ObjXMLDoc
Dim ObjXMLStyle
Dim ObjXsltSettings
On Error GoTo ERR_HANDLER
If mResultPath <> "" Then
Set ObjXMLTransformDoc = CreateObject("Msxml2.DOMDocument.4.0")
ObjXMLTransformDoc.Load (mResultPath & MyDocument.DOC_TYPE & "_XML_TO_XSL.xml")
Set ObjXMLTransformStyle = CreateObject("Msxml2.DOMDocument.4.0")
ObjXMLTransformStyle.Load ActiveWorkbook.path & "\RESULT\form_generation.xsl"
ObjXMLTransformStyle.setProperty "AllowXsltScript", True
Set ObjXMLStyle = CreateObject("Msxml2.DOMDocument.4.0")
ObjXMLTransformDoc.transformNodetoObject ObjXMLTransformStyle, ObjXMLStyle
KillFile mResultPath & MyDocument.DOC_TYPE & "_DOCUMENT_STYLE.xsl"
DoEvents
AppendToTextFile mResultPath & MyDocument.DOC_TYPE & "_DOCUMENT_STYLE.xsl", ObjXMLStyle.XML
Dim mSE As New CShellExecute
mSE.LaunchDocument 0, mResultPath & MyDocument.DOC_TYPE & "_XML_TO_XML.xml", ActiveWorkbook.path & "\RESULT\", sesSW_SHOWDEFAULT
Else
MsgBox "Create documents first!"
End If
Exit Sub
ERR_HANDLER:
MsgBox "Error: " & Err.Number & ". " & Err.Description
End Sub
答
至于我记得默认加载是异步的所以您的代码序列是有道理的,你需要的ObjXMLTransformDoc.Load
负载通话和ObjXMLTransformStyle.async = False
b之前加ObjXMLTransformDoc.async = False
在ObjXMLTransformStyle.Load
之前致电。 您得到的错误消息是否与我不确定有关。你能告诉我们确切的陈述或者你得到那个错误的行吗?
+0
该行是:ObjXMLTransformDoc.transformNodetoObject ObjXMLTransformStyle,ObjXMLStyle – 2012-03-29 07:08:25
您是否在项目中添加了对msxml4的引用?除此之外,我将使用msxml6,因为这是Windows的一部分,不需要单独部署。 – Dabblernl 2012-03-28 19:24:17
当我使用MSXML 6.0时出现错误:Javascript不是脚本语言。 – 2012-03-29 07:09:23
这完全是莫名其妙的;-)。你在哪一行得到有关无效类字符串的VB6错误? – Dabblernl 2012-03-29 12:47:57