注册 登录
编程论坛 VFP论坛

office2007下如何使VFP设置的单元格合并有效

wengjl 发布于 2020-08-21 14:33, 1803 次点击
各位狐友:

我的电脑里装的是OFFICE2007,在VFP中通过 copy to LS type xl5 生成EXCEL表后,再继续用VFP打开(因为循环生成有百余个,手工设置表头很费时,所以用VFP的PRG代码来设置)设置表头,进行一些单元格的命名、合并等处理,自动保存。VFP执行完成后,退出。

手工打开LS.XLS文档,发现单元的命名内容在,单元格合并且没有合并了。 在PRG的合并处理语句后 加上 RETURN  可观察到单元格的合并操作是完成的,可见这些单元格合并是在保存时被高版本不兼容取消了。

请问:如何能不被取消? 或者 如何在VFP处理中直接操控另存为2007的高版本,以保留单元格的合并工作? 麻烦高手赐教!谢谢!
2 回复
#2
厨师王德榜2020-08-21 14:53
我采用的方法是这样:
有一个Excel表,以下简称表A,A的格式已经固定了(主要是指表头已经固定, 前三行是表头,表头有可能一些合并的单元格),表头以下内容是空白.而且,表A的格式是Excel2010版本的格式.
另一个Excel表,是由VFB产生的,以下简称表B,既然是VFP产生的,那么B就不可能含有复杂表头.而且表B应该是Excel2003版本的.
打开B 和 A ,由程序代码控制,把B的数据(纯数据,不含表头)粘贴进表A,表A保存并退出, 表B关闭退出.
至于B数据-->A 的 程序代码,可以用VFP来写,也可以用VB来写,可以用复制/粘贴,也可以用数组--再用单元格的Resize()方法,
其实调用的是OLE对象,用什么编程语言来写,都差不多.
这个思路,避开了合并单元格,也避开的高版本/低版本的问题.

思路就是这样,代码我这台电脑上暂时没有找到现成的.不过有了思路,代码不难.
#3
wengjl2020-08-21 15:00
谢谢!厨师的菜,味好。再次感谢!
1