问题:
- 如何控制Excel的XML导出过程
- 选项是否可用,不包括保存到文件
大图,将数据从Excel XML表移动到ERP应用程序。
当前解决方案:
设置:
- 开发人员选项卡在最终用户的Excel中激活
- 向最终用户提供预加载和预映射XSD映射的电子表格
用户修改Excel中的数据并通过以下方式执行数据传输:
- [开发人员选项卡]、[导出]、[输出XML](类似"另存为"对话框),指定文件名,点击[导出]按钮,数据导出到XML文件
- 用户通过记事本(或任何不"渲染"XML的编辑器)打开保存的XML文件,"全选",复制到剪贴板
- 用户打开ERP应用程序运行的"粘贴对话框",从剪贴板粘贴XML,然后提交给ERP进行处理
更好的解决方案包括:
- 将XML直接保存到剪贴板
- 一键发布XML到ERP运行的Web服务
- 任何非技术用户在传输过程中不必操作/处理文件的解决方案
为了探索选项,让我们假设安全需求将得到适当的处理。
想法还是想法?TIA
对于#1:
Sub Tester()
Dim map As XmlMap, strXML As String
Set map = ActiveWorkbook.XmlMaps("data-set_Map")
map.ExportXml strXML 'puts the map XML into strXML
Debug.Print strXML
'requires project reference to Microsoft Form 2.0 Object Library
Dim dob As New DataObject
dob.SetText strXML
dob.PutInClipboard 'set xml in clipboard
End Sub
#2是可行的,但更多的工作