2016-07-05 49 views
1

我正在使用质量控制表,并且想要查找(或知道)包含最大单元格数的最长行。例如:如何知道工作表中最长的行的长度

aa | bb | cc | dd | 
aa | kk | 
aa | dd | ss | 

那么,我想程序可以告诉我最长的行是第一个,其中包含4列。我已经使用这个代码:

ActiveCell.End(xlDown).Select 
ActiveCell.End(xlToRight).Select 
my_line = Selection.Row 
my_column= Selection.Column + 1 

但它只能给我最后一行的长度,但不是最长的一个。所以,如果你有一些想法,请发表评论。

+0

你能澄清吗?我听起来像你想找到人口最多的单元格* aka *最后填充的列。最长的一行听起来像是在查看单元格内容而不是单元格本身。 – Jeeped

回答

3

使用带有通配符的Range.Find method。从A1开始并向后看(即xlPrevious)。查找将快速找到最后使用的单元格。

Dim lst As Range 
With Worksheets("Sheet7") 
    Set lst = .Cells.Find(What:=Chr(42), After:=.Cells(1, 1), LookIn:=xlFormulas, _ 
     LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious) 
End With 
Debug.Print lst.Row 
Debug.Print lst.Column 
+0

这是有效的!谢谢! – Hiddenllyy

相关问题