Excel VBA在特定工作表的范围内查找最大值

我发现以下代码在范围内获得最大值:

Cells(Count, 4)=Application.WorksheetFunction.Max(Range(Cells(m, 1),Cells(n, 1))) 

我如何在特定的表格中search? Data表在这种情况下

喜欢:

 Worksheets(d).Cells(x, 4).Value = Worksheets("Data")... ????? FIND MAX ???? 

这通常会起作用,但缺less一个参考:

  worksheets("Data").Cells(Count, 4)= Application.WorksheetFunction.Max _ ( worksheets("Data").range( cells(m,1) ,cells(n,1) ) 

应该在文本“单元格”之前引用单元格所在的工作表,我会这样写:

 worksheets("Data").Cells(Count, 4) = Application.WorksheetFunction.Max _ ( worksheets("Data").range( worksheets("Data").cells(m,1) ,worksheets("Data").cells(n,1) ) 

这也可以写成这样更清楚:

 with worksheets("Data") .Cells(Count, 4) = Application.WorksheetFunction.Max _ ( .range( .cells(m,1) ,.cells(n,1) ) End With 

我希望这有帮助。

哈维

您可以将任何有效的excel单元格引用作为string传递给range方法。

 Application.WorksheetFunction.Max(range("Data!A1:A7")) 

在你的情况下,像这样使用它,在你的范围的边缘定义两个单元格:

 Application.WorksheetFunction.Max _ (range(worksheets("Data").cells(m,1),worksheets("Data").cells(n,1)))