回复一下203楼sunsoncheng朋友提出的问题
关于直接写cells()和.cells()有些区别,有时又是一致的。在这个代码里,复制总表后(也就是copy后),就产生新的表,此时模块里直接输入cells(),表示是当前工作表的单元格,我在里面又用了with结构,所以在这里时
For i = 2 To irow Cells(i, ICol) = "'" & Cells(i, ICol) '在原工作表生成文本符号
因为这是copy之后,activesheet为表2,故这里省略.跟加.是没有区别的,这句也可以改为.Cells(i, ICol) = "'" & .Cells(i, ICol) 跟上面的效果一样(说句实话,如果用with结构了,还是用有点比较好,兄台真是心细啊)
后面循环时,在sheets.add之后,此时,当前活动工作表就是新增加的这个表,故后面的
irow1 = [a1].CurrentRegion.Rows.Count '表示的是add的新表
另外一个问题,之所以要增加文本符号,兄台可以删除这样的看看,也就会产生早先出现的问题,数字、日期等非文本的分开,会出现问题。
表的关系搞清楚之后,我想就很容易理解增加的文本符号是在原始表里,还是后来复制出来的表了 |