弱弱的问个问题

弱弱的问个问题:
j = Cells(rows.count,2).end(3).row+1
Cells(rows.count,2).是指第二列最后一个有值的行的交叉的单元格,对吗?
end(3)怎么解释?

第1个回答  2014-01-23

    Cells(rows.count,2)是当前Sheet页B列(即第2列)的最后一个单元格;

    Cells(rows.count,2).end(3)是从B列最后一个单元格开始自下而向上获得最后一个非空单元格;

    Cells(rows.count,2).end(3).row就是获得B列最后一个非空单元格的行标签。

end(3)就等于end(xlUP),就是自下而上的意思。

追问

多谢指导,我查了一下Excel帮助,上面写的是
xlDown -4121 向下。
xlToLeft -4159 向左。
xlToRight -4161 向右。
xlUp -4162 向上。
为什么你写成3?不胜赐教!我是初学者,多谢费心。

追答

呵呵我也是初学者,写成3、-4162和xlUP的效果是等价的,我理解应该是一种简写,作为VBA代码的默认可执行方式,是预先设定好的,在了解的基础上遵循这个规则就可以了。
关于这个问题,比较经典的回答,可以参考下面这个链接,我想对楼主一定有帮助。http://zhidao.baidu.com/link?url=DG0l4p4YhNmcX2VsvIeJWbmkontkqCyJDNEvaqU9ccEh9MSFCmcks0i5KyHnCyUOqfLmGl6TCecUCSKI-9Sl2_

追问

太感谢了!抱歉还有个问题:

如果我需要指定到工作表中的某一个表格,如何改写你之前的程序,我试了一下,如果不改,那么新拷贝的数据在我建的表格的下方出现了

    j = .Cells(.Rows.Count, 2).End(3).Row + 1 

    .Range("B" & i, "Q" & i).Copy .Range("B" & j, "Q" & j)

追答

在.Cells(.Rows.Count, 2).End(3).Row + 1前面加上Sheet(x),如原始数据在Sheet1,需要在Sheet2中进行判断和粘贴,可以改为:

j = Sheet2.Cells(.Rows.Count, 2).End(3).Row + 1 '获取Sheet2 B列中最后一个非空单元格的下一行行标
Sheet1.Range("B" & i, "Q" & i).Copy Sheet2.Range("B" & j, "Q" & j)

追问

抱歉没说清楚,我不是指不同的sheet工作表,而是指table表格,我建了一个表格,引用了表格的格式等,要把这些数据加到这个表格中。

追答

这是因为B列在你的表格区域内,.Cells(.Rows.Count, 2).End(3).Row这行代码在进行判断时,会将B列非空单元格的下一行判断在表格底部的下一行,因此数据正好复制到了表格下方。

解决方法:可以在表格外部增加一个“复制标记列”,代码和图例如下。

Sub 复制2()
'模拟表格为B列到F列,设定A列为复制标记列;
'在表格标题行(第44行)和A列的交叉单元格处(即[A44])写上"复制标记列"的标题;
'这样下面的变量j根据截图示例,其初始值等于45,则第一次复制就会被复制到B45:Q45的区域中
'之后,一次复制一行,均可以写入表格。
Dim i%, j%
i = 42 '设定初始行,根据本案例需求设定Row = 42
With Sheet1
    j = .Cells(.Rows.Count, 1).End(3).Row + 1 '根据截图示例,此时j = 45
    .Cells(j, 1) = "Copied"
    .Range("B" & j, "Q" & j).Value = .Range("B" & i, "Q" & i).Value
End With
End Sub

来自:求助得到的回答本回答被提问者采纳
第1个回答  2014-01-23
通过Y线可以,但是先要把其中一个电调的bec输出关掉,只用其中一个电调的bec输出,然后把2个同型号,同固件版本的电调的各项性能调整成一样的
第2个回答  2019-11-03
没问题,你150米无障碍,可能路由直接都能组网成功,一块平板做发射,另一端全向接收都可以啦。
第3个回答  2019-04-05
5楼正解,简单来说就是刻面数不同,有些一卡以上的钻只都只有十几个刻面,没有切工等级。
第4个回答  2019-01-18
没问题,你150米无障碍,可能路由直接都能组网成功,一块平板做发射,另一端全向接收都可以啦。
相似回答
大家正在搜