设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 3679|回复: 13
打印 上一主题 下一主题

[Access本身] 如何把表导出成固定格式的XML文件

[复制链接]
跳转到指定楼层
1#
发表于 2015-1-21 09:06:48 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
求助
想在窗体按钮上占击,把12134表里的数据生成1234文件,(见附件)要怎么实现,
各位大大,请指导。谢谢,wuheng敬上

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
14#
 楼主| 发表于 2016-9-1 16:18:51 | 只看该作者
哪位大侠帮忙看看,施予援手~~~~`````谢谢
13#
 楼主| 发表于 2016-8-25 10:18:38 | 只看该作者
顶一下~~~~~~~~~~```各位大侠请援手~``谢谢
12#
 楼主| 发表于 2016-8-21 16:29:22 | 只看该作者
wuheng 发表于 2015-1-22 08:43
可以,(本次附件为把字段改type......的表)字段可以增减、更改,我主要是要能把type以下的那些数据(如图 ...

Sub WriteTxt(foldername As String, filename As String)
    Dim fso As New FileSystemObject
    Dim filepath1 As String, filepath2 As String
    Dim txt As String
    Dim tag As String, ssql As String
   
    filepath1 = foldername & "\" & Replace(filename, ".txt", "") & ".txt"
    fso.CreateTextFile filepath1, True


    Open filepath1 For Output As 1#
    '写入声明
    txt = "<?xml version='1.0' encoding='GB2312'?>"
    txt = Replace(txt, "'", Chr(34))
    Print #1, txt
   
    '写入Data节点
    txt = "<Data TYPE='SPBIANMA'>"
    txt = Replace(txt, "'", Chr(34))
    Print #1, txt
   
    '写入FENLEI节点
    tag = "FENLEI"
    ssql = "select "
    ssql = ssql & "[/FENLEI/Row/@MC] as MC,"
    ssql = ssql & "[/FENLEI/Row/@PID] as PID,"
    ssql = ssql & "[/FENLEI/Row/@BM] as BM"
   
   'ssql = ssql & "[/FENLEI/Row/@OLD_BM] as OLD_BM"
   ' ssql = ssql & "[/FENLEI/Row/@OLD_PID] as OLD_PID"

   
    ssql = ssql & " from 表1 where ([/FENLEI/Row/@PID] is null)=false"
    Call WriteRe(tag, ssql)
   
    '写入SPXX节点
    tag = "SPXX"
    ssql = "select "
   
   
   ssql = ssql & "[/SPXX/Row/@MC] as MC,"
    ssql = ssql & "[/SPXX/Row/@PID] as PID,"
    ssql = ssql & "[/SPXX/Row/@BM] as BM,"
    ssql = ssql & "[/SPXX/Row/@HSBZ] as HSBZ,"
    ssql = ssql & "[/SPXX/Row/@DJ] as DJ,"
    ssql = ssql & "[/SPXX/Row/@JLDW] as JLDW,"
    ssql = ssql & "[/SPXX/Row/@GGXH] as GGXH,"
    ssql = ssql & "[/SPXX/Row/@SL] as SL,"
    ssql = ssql & "[/SPXX/Row/@SPSM] as SPSM,"
    ssql = ssql & "[/SPXX/Row/@JM] as JM "
   
    'ssql = ssql & "[/SPXX/Row/@OLD_BM] as OLD_BM "
    'ssql = ssql & "[/SPXX/Row/@OLD_PID] as OLD_PID "
    'ssql = ssql & "[/SPXX/Row/@SCBM] as SCBM "
    'ssql = ssql & "[/SPXX/Row/@SLLX] as SLLX "
    'ssql = ssql & "[/SPXX/Row/@SPFLBM] as SPFLBM "
    'ssql = ssql & "[/SPXX/Row/@SPFLBMPID] as SPDLBMPID "
    'ssql = ssql & "[/SPXX/Row/@SYYHBZ] as SYYHBZ "
    'ssql = ssql & "[/SPXX/Row/@YHZC] as YHZC "

   
   
   
   
   
   
   
   
   
   
   
    ssql = ssql & " from 表1 where ([/SPXX/Row/@BM] is null)=false"
    Call WriteRe(tag, ssql)
   
    '写入Data闭合标签
    Print #1, "</Data>"
   
    Close #1
   
    filepath2 = foldername & "\" & Replace(filename, ".txt", "") & ".xml"
    If fso.FileExists(filepath2) = True Then
        Kill filepath2
    End If
   
    Name filepath1 As filepath2
   
    Set fso = Nothing
   
    MsgBox "XML清单已成功导出!", vbInformation, "系统消息"
End Sub

为什么加了红色字体的那些语句就导不出来XML文件了,报错了,请百忙中能再次解答。谢谢
wuheng敬上
11#
 楼主| 发表于 2015-1-29 14:29:22 | 只看该作者
终于整好了~~~~~~~~~~~再次对两位大侠表示感谢~~~~~~~~~~~~~~{:soso_e181:}{:soso_e181:}
10#
发表于 2015-1-22 17:22:37 | 只看该作者
本帖最后由 todaynew 于 2015-1-23 10:23 编辑
wuheng 发表于 2015-1-22 08:43
可以,(本次附件为把字段改type......的表)字段可以增减、更改,我主要是要能把type以下的那些数据(如图 ...

http://www.office-cn.net/thread-119352-1-1.html





9#
 楼主| 发表于 2015-1-22 08:43:55 | 只看该作者
本帖最后由 wuheng 于 2015-1-22 08:48 编辑
roych 发表于 2015-1-21 17:52
能给表加上字段么?例如,第一个字段为type,第二个为BM……这样的话可能好处理些。不然代码要写很多


可以,(本次附件为把字段改type......的表)字段可以增减、更改,我主要是要能把type以下的那些数据(如图)能按1234.xml的那种文件格式导出来,谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
8#
 楼主| 发表于 2015-1-22 08:35:44 | 只看该作者
todaynew 发表于 2015-1-21 17:29
.net比较好处理xml,Access太麻烦,呵呵。如果用.net处理的话,可以给你搞一下。

不管用什么,主要是要能把里面的数据导出成1234.xml的文件(固定格式,ACCESS表里的数据是随时变化的),谢谢
7#
发表于 2015-1-21 17:52:13 | 只看该作者
能给表加上字段么?例如,第一个字段为type,第二个为BM……这样的话可能好处理些。不然代码要写很多
6#
发表于 2015-1-21 17:29:15 | 只看该作者
wuheng 发表于 2015-1-21 17:15
第一次接触XML,不是很了解,请百忙中给予援手,能否在附件上修改一下,以达到导出时有1234.XML的效果,谢 ...

.net比较好处理xml,Access太麻烦,呵呵。如果用.net处理的话,可以给你搞一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-17 17:17 , Processed in 0.089554 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表