微软的Openxml在2006年底杀出重围,成为那个年代标准之争的胜利者。时至今日,已经有6个年头了。可是遍翻各个博客,涉及到Openxml操作Excel的原创文章屈指可数,而且往往没有深度,所说的东西也都没有说到问题的点子上。
之所以有上面的抱怨,是因为我最近研究Openxml操作Excel,问题一个接着一个,而且诡异的要命。网上的帖子没有一个说道根儿上的,当然肯定有人敝帚自珍了。其实安装完openxml sdk之后,在开始菜单有一个小程序是很好用的,可以看到某一个Excel的完整生成代码(C#)Microsoft Office Open XML SDK 2.0\Open XML SDK 2.0 Productivity Tool。好了,下面写一下我最近遇到的问题、解决办法和分析(代码就不贴了,没什么意思,下面的分析才算最主要的)
- 创建Cell和Row
这里需要注意的是:Excel中的物理行列存储是按照从上到下、从左到右的规则。而且不创建的行列,在xml中是不存在的。举例来说,我们新建一个空的Excel,此时SheetData节点是空的
我们在B3中填入Hello world,SheetData值如下
此时我们插入行列必须使用