|
在看一本書的時(shí)候沒(méi)搞明白例子上寫的一句話,如上。 經(jīng)調(diào)試才搞明白。分享給大家。 NextRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1 這句話的意思是 取活動(dòng)單元表的第一列最后一個(gè)有值的行的下一行行號(hào)。 Rows.Count是指當(dāng)前活動(dòng)工作表的行數(shù),為數(shù)字 1048576,很熟悉的一個(gè)數(shù)字,為Excel工作表的最大行數(shù) Cells(Rows.Count, 1),則是定位到第一列的最后一行cell,即單元格“A1048576” 主要是End(xlUp)比較難理解。 Range.End屬性是返回一個(gè) Range 對(duì)象,該對(duì)象代表包含源 區(qū)域的區(qū)域尾端的單元格。 End(xlUp)等同于End mode下+UP鍵,或Ctrl+Up, 若活動(dòng)單元格為空,其上一個(gè)單元格也為空,將會(huì)向上尋找該列第一次出現(xiàn)的非空單元格; 若活動(dòng)單元格非空,其上一個(gè)單元格也非空,將會(huì)選中活動(dòng)單元格所在列的最后一個(gè)非空單元格; 其上一個(gè)單元格為空,將繼續(xù)向上尋找該列第一次出現(xiàn)的非空單元格,直到第一個(gè)單元格為止,如A1。 另外三個(gè)XlDirection常量為xlDown, xlToRight, xlToLeft 功能分別為 End+DOWN, END+RIGHT, END+LEFT. 這樣Cells(Rows.Count, 1).End(xlUp)就是沿著單元格“A1048576”向上尋找第一列第一次出現(xiàn)的非空單元格。 連起來(lái)Cells(Rows.Count, 1).End(xlUp).Row,就是取第一列第一次出現(xiàn)的非空單元格的行號(hào) ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1,自然就是取該非空單元格的下面的空單元格,以便進(jìn)行輸入等操作。 比如下面事例,將把數(shù)據(jù)插入到工作表中的系一個(gè)空白行,這里A7為下一個(gè)空白行。 補(bǔ)充內(nèi)容 (2013-5-15 22:13): 上面有句話沒(méi)說(shuō)清楚,改一下: 若活動(dòng)單元格非空,其上一個(gè)單元格也非空,將會(huì)向上選中活動(dòng)單元格所在列的最后一個(gè)非空單元格; |
|
|