|
发表于 2007-2-17 21:12:50
|
显示全部楼层
原帖由 thinkinger 于 2007-2-17 16:07 发表
一个数据表的已用空间的对象是usedrange
那么下一个空行就是
sheet(theSheetYouWillCopyTo).usedRange.rows.count+1
注意,这个对象的这个属性值在某些情况下不是很准确,会返回一个稍微多于实际正在使用中的行数,主要原因是因为空白行中有些单元格曾经放入过数据或者设置过特别格式,虽然后来删除了内容,但是excel仍然认为你正在使用这个单元格。我的经验是从这行开始向前遍历,直到找到第一个有数据的单元格,速度快很多。
原帖由 takelook 于 2007-2-17 17:38 发表
谢谢啊:)
俺编了个函数,那个遍历回头再说了,先凑合着吧
Private Sub button_Click()
Dim r
r = Sheets("output").UsedRange.rows.Count + 1
Range("E23").Copy
Sheets("output").Select
Sheets("output").Range("B" & r).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("output").Range("A" & r) = Date
End Sub
研究学习一下,收获两点:
1、sheets(theSheetYouWillCopyTo).usedRange.rows.count+1
2、Range("B" & r)
谢谢。 |
|