Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

写入EXCEL问题

chinasa  发表于:2013-10-14 17:24:31  
复制

我原先做了自动写入EXCEL的程序,是通过交叉表查询,把数据表的内容转化成EXCEL表相同的格式,然后在逐条记录写入EXCEL对应的单元格。现在遇到的问题是:村的数量不固定,增加了很多,这样交叉表我就很难限定列的名称。

我的设想是:

1.在交叉表查询中不限定列名称(村和性别合并字段)。

2.在写入EXCEL时判断交叉表中是否存在该列。判断的方法是:先检索出村的名称,然后在村的后面加上“男”,判断该字段是否存在,如果存在则写入EXCEL对应的数据,如果不存在则写0.然后再判断村的后面加上“女”。然后下一个村。-------------------但这一步骤我不会。

 

或者是否有其它更好的方法?

 

 

 

例子

 

 

 

Top
chinasa 发表于:2013-10-14 17:27:13

需要说明的是:

村:通常有10个以内,但村的名称不确定。

目的地:不确定个数及名称。

性别:可以固定(我实际数据库并不是性别,实际上有5个相对固定的内容)



zhlk666 发表于:2013-10-15 22:47:39

在access中写查询

TRANSFORM Sum(XX乡.[人数]) AS 合计
SELECT XX乡.[目的地]
FROM XX乡
GROUP BY XX乡.[目的地]
PIVOT [村] & [性别];

就成



chinasa 发表于:2013-10-16 10:33:10

感谢zhlk666的回复。

    您所说的方法就是我现在在用的交叉表查询,但其结果没有体现无数据的“B村男”,这回影响到我写入EXCEL。

 

目前问题已经解决了,谢谢。



清风明月 发表于:2013-10-17 15:32:14

zhlk666 (等级:士兵 积分:2 城市:天津) 发表于2013/10/15 22:47:39 最佳答案

要是你直接将做好的ACCESS发上来就好揣摩学习了



总记录:4篇  页次:1/1 9 1 :