设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2858|回复: 4
打印 上一主题 下一主题

关于DOCMD.TRANSFERSPREADSHEET的EXPORT破解合并单元格的方法

[复制链接]
跳转到指定楼层
1#
发表于 2011-11-29 22:18:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 williamwangc 于 2011-11-29 22:23 编辑

一直以为合并单元格是以上方法的禁区,不过我试出了EXCEL表的列标题是由几个单元格合并的情况下导出数据的技巧。
方法很简单:在EXCEL合并单元格过程中,如果相邻N格单元格合并过程中总是先左后右,先上后下的。因此在合并几个含有内容的单元格,它总是最终合并为最左边的或是最上边的单元格。
同样地道理,如果遇到合并单元格,比如由几个同行上合并列标题。由于它导入后,会被EXCEL合并掉,因此只要在根据EXCEL合并单元格的数量,在ACCESS中对应地放几个只有字段名称的空字段。让它去合并就可以了。

PS.我在想导入的话,同样地方法应该也是可行的。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2011-11-30 18:40:19 | 只看该作者
还在研究这个问题啊?如果有模板,一切很方便(红尘写过相关例子,请搜索关键字:导出 模板);如果没有模板,其实也可以这样处理的:
先用TRANSFERSPREADSHEET导出,再创建Excel组件(CreateObject),打开之前导出的Excel表之后,通过对组件的操作(例如插入行、列,合并单元格,字体居中等等)来实现。
只是我觉得没必要非要在这上面大费周章,而是通过对导出的数据使用数据透视表来完成会更方便些。
3#
 楼主| 发表于 2011-11-30 20:21:19 | 只看该作者
本帖最后由 williamwangc 于 2011-11-30 20:22 编辑

没有人指点一下,只能慢慢摸索啊。正好再问版主一个问题。我要指定文件路径,由于该文件夹可能不存在。我是先判定文件夹是否存在,如不存在就创建文件夹,再指定路径。写法我基本知道,由于经常要用,我想先建一个public function,但是写的时候才发现写着有些偏向于sub了,不知道怎样的function写法才是最正确的。我在想些FUNCTION的时候能兼顾新建文件夹的过程呢?我以写出代码,正在查书,稍后奉上。
4#
 楼主| 发表于 2011-11-30 21:23:39 | 只看该作者
我的目的既要判定路径路径是否存在,之后要创建并指定该路径。这样应该做SUB还是做FUNCTION?我希望在一个FUNCTION里面实现这两个功能。
5#
 楼主| 发表于 2011-11-30 22:15:48 | 只看该作者
  1. Public Function str_SavePath(ByRef strCompanyName As String, ByRef strProjectName As String) As String
  2. Dim appFolders As scripting.FileSystemObject
  3. If Len(Dir(str_SavePath)) = 0 Then
  4. MsgBox "该文件夹不存在,将自动新建该文件夹"
  5. Set appFolders = New scripting.FileSystemObject
  6. appFolders.CreateFolder CurrentProject.Path & "\协力项目填写" & strCompanyName & "_" & strProjectName
  7. str_SavePath = CurrentProject.Path & "\协力项目填写" & strCompanyName & "_" & strProjectName
  8. Else
  9. str_SavePath = CurrentProject.Path & "\协力项目填写" & strCompanyName & "_" & strProjectName
  10. End If
  11. End Function
复制代码
这样的写法对不对?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-19 14:44 , Processed in 0.085195 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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