刚刚自己找到完美解决方案,不需要推倒重来了。(其实还是 xf-wangyi 的 Cells 办法)
都是给那个该死的字母s搞的,差点晕死我!
其实 sid033 在下面的帖子中已经提醒我了,只是我没有看出来,以为它是提醒别人的。
(来自:sid033, 时间:2005-2-16 16:28:04, ID:2990607
to 搂猪:是columnwidth不是columnswidth呀 )
谁知道“搂猪”就是指“楼主”我呀!
columnswidth 里多出的那个s是我在DFW其它地方找帖子时“复制”产生的,不知道被哪个家伙害惨了!这里的 XiaoLing79 朋友也犯了我同样的错误,害人不浅!
我反复看了各位的帖子,总结为控制Excel的方法不外乎两种:
方法一: 用 ExcelWookSheet的 Cells.Item[i,j] 属性控制;
方法二: 用 createoleobject('Excel.Application') 的 Variant 属性控制;
(不知道这么说法对不对,我只知道怎么用,具体原理我不清楚)
(来自:xf-wangyi, 时间:2005-2-16 1:28:57, ID:2990034)
现在去掉那个该死的s再试,xf-wangyi朋友上面的那个帖子已经完满解决了我的问题,
只需要把
Fexcelworksheet.Cells.Item[1, 1].ColumnWidth := 20; //列宽
这句中的 Fexcelworksheet 换成我程序中相应的 ExcelWorksheet1 就 OK 了!
用方法一的有两位朋友:xf-wangyi 和 wildrose_sorhero ;
用方法二有三位朋友:XiaoLing79,sid033 和 caelsw ;
感谢sgs125朋友帮我调试,他的成功坚定了我解决这个问题的信心。
还要感谢另外几个朋友—> 刘麻子,fphuang 和 jianguobu 帮我顶这个帖子。
遗憾的是,我迟迟还没有结帖的原因是我仍在调试 XF.Lian 朋友介绍的那个用VBA代码解决的办法(可惜到目前为止没有成功,不知道是这位朋友说的太简单了还是我太菜了?):
(来自:XF.Lian, 时间:2005-2-15 23:08:42, ID:2989989
Columns("A:A"
.Select //并不是不能设置某一列的宽度,而是要先选中此列
Selection.ColumnWidth = 20 //选中整列之后,设置宽度 )
而 caelsw 朋友也说采用XF的方法对,且在D7中试过.愿意给我一个源码。EMAIL?
可是我没有收到caelsw 朋友的 Email。
在Excel中,我会用宏,知道VBA代码,可是不知道往Delphi里帖时要怎么修改一下,不会是直接帖吧,那样编译通不过或者不生效啊!哪位高手能指点一下吗?
不管怎样,遗憾有一点,但是问题总算圆满解决了,再次感谢各位的回帖,可惜分太少了,我都不好意思分了。