OLEDB 怎么操作合并了的Excel单元格

yang1216 2010-05-02 08:59:37
我需要修改一个已经订好格式的Excel文件。
形如
F1 F2 F3 F4
a b cccc
这里的F3与F4已经合并为一列。
我只知道修改a可以用 update [Sheet1$A1:A1] set F1=aa,可是合并了的单元格应该怎么表示呢?
请问,怎么写UPDATE语句来修改这个合并了的单元格呢?
...全文
372 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
skep99 2010-05-03
  • 打赏
  • 举报
回复
不知道是不是你说的这样的结构,
做了下,ok的.
yang1216 2010-05-03
  • 打赏
  • 举报
回复
海松兄,你的办法对格式复杂的表格不起作用。
我的表格如下
UNIT 这是合并单元格
FIL CODE 这是合并单元格
SAP CODE 这是合并单元格
MADD1 MADD2 MADD3 MADD4 MADD5 MADD6 MADD7 MADD8
GCAS 123 123 123 123 123 123 123 123//这些不是合并单元格
WEIGHT 123 123 123 123 123 123 123 133
STEP PPM#1
1 这是合并单元格,这里要写东西!!!
我要修改的是最后这一行。"update [PPM$] set F2='999' where F1='1'";
结果是看不见变化。如果把上面的几行删掉,再用同样的语句就能写入了。
wuyq11 2010-05-03
  • 打赏
  • 举报
回复
Excel._Application exc=new Excel.ApplicationClass();
exc.Application.Workbooks.Add(true);
Excel._Worksheet ws=new Excel.WorksheetClass();
ws=(Excel._Worksheet)exc.ActiveSheet;

Excel.Range r;
r=ws.get_Range(ws.Cells[1,1],ws.Cells[1,6]);
r.MergeCells=true;
yang1216 2010-05-03
  • 打赏
  • 举报
回复
海兄,我想我知道为什么了。
我一直写的都是UPDATE [PPM$B8:I8] SET F2= 'bbb‘ ,这样是不是取的range太小了,把它写成UPDATE [PPM$A8:J8] SET F2= 'bbb‘ ,结果就好了。
谢谢。
asppine 2010-05-03
  • 打赏
  • 举报
回复
关注...........
skep99 2010-05-03
  • 打赏
  • 举报
回复
另外你的连接词是怎么写的?
我的是这个

string strExcel = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended Properties='Excel 8.0;HDR=no;'";
skep99 2010-05-03
  • 打赏
  • 举报
回复
这回一样了,还是ok的.
应该不是合并格的问题,你用我写的语句试一下.
yang1216 2010-05-03
  • 打赏
  • 举报
回复
我第一次学习贴图。见笑见笑。
yang1216 2010-05-03
  • 打赏
  • 举报
回复
谢谢海松兄一直帮忙。
你的图片和我需要的很相像了。我的excel表如图所示:
http://hi.csdn.net/attachment/201005/3/1938457_1272866999fd23.jpg
skep99 2010-05-03
  • 打赏
  • 举报
回复
我的,CD两列合并,如图
yang1216 2010-05-02
  • 打赏
  • 举报
回复
海松兄,我想用update [Sheet1$A1:C1] set F1=‘aa’,但是报错啊。
skep99 2010-05-02
  • 打赏
  • 举报
回复
合并的单元格都是计算左上角的坐标
yang1216 2010-05-02
  • 打赏
  • 举报
回复
是不是这种情况不能用oledb,只能用COM啊?
高人们,求解答。
实例1:汉语中的“和”与逻辑运算中的“或” (一楼) 实例2:ADO查询 (一楼) 实例3:带窗体进度条的筛选 (一楼) 实例4:通用多文件条件汇总 (二楼) 实例5:sql中的分类汇总、对字段使用函数 (二楼) 实例6:sql中的横向间隔显示字段值、排序 (二楼) 实例7:将没有打开的文件汇总到当前表中 (三楼)(2006年4月10日新增) 实例7:改进版:将查询结果保存在临时对象中,而不再使用工作表单元格作为临时区域 (第3页23楼)(2006年4月19日新增) 实例8:使用 Union 进行多表查询,并对月份表进行汇总 (三楼)(2006年4月13日新增) 实例9:使用 IMEX=1 对于数据类型不一致的列强制为文本型处理 (第3页22楼) (2006年4月18日新增) 实例10:对于大数量文件,不打开源文件及目标文件而进行重新分类(第4页39楼) (2006年6月6日新增) 实例11:ADO批量处理ACCESS数据库 (第5页48楼)(2006年6月14日新增) 实例12 查询ACCESS后的结果直接产生新文件 实例13:批量导出DBF为对应Excel文件 实例14:不打开文件而引用单列、单行或某个单元格(第6页57楼) 实例 15:格式相同的多文件多表去除空行后顺序汇入一张表中(第7页68楼) 实例16 :替代 VLOOUP、SUMPRODUCT 的VBA编码-多重 Join 的使用(第7页69楼) 实例17:列出库中欠缺编号-NOT IN 的应用(第8页71楼) 实例18:用 Union 从字段不相同的两个 Access 表中筛选记录后按相似字段排序(第11页102楼) 实例19:用 Union 进行忽略某种数值的汇总(第11页104楼)

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧