VBA大功能没有选择正确的数据表

时间:2015-12-21 18:08:30

标签: excel vba

我目前在数据表中有两个表。

表1是原始形式的数据。

表2列出了表1的绝对值。

我想找到表2的第1,第2和第3高数(包含绝对值的表)。

我的第一和第二高的大公式返回正确的值。但是,我的第三大数字将给出表1的第三大值而不是选定的表格2。

以下是我的代码。

Application.Run "ATPVBAEN.XLAM!Mcorrel", myRange, _
    Worksheets("Statistics").Range("$A$3"), "C", True

Range("A3").CurrentRegion.Select
nRows = Selection.Rows.Count

Selection.Copy


' Identify Three Strongest Correlation

Range("B3").End(xlToRight).Offset(0, 2).Select
Selection.PasteSpecial

Set myTable2 = Selection

For Each c In myTable2

    If c.Value = 1 Then
    c.Value = 0
    End If

Next c

For Each c In myTable

    If IsNumeric(c.Value) Then
    c.Value = Abs(c.Value)

    End If

Next c

Application.CutCopyMode = False

Range("A2") = "Correlation Table"
With Range(Cells(2, 1), Cells(2, nCols))
    .Merge
    .Font.Bold = True
    .HorizontalAlignment = xlCenter
    .Interior.ColorIndex = 36
End With

myMax1 = WorksheetFunction.Large(myTable2, 1)
myMax2 = WorksheetFunction.Large(myTable2, 2)
myMax3 = WorksheetFunction.Large(myTable2, 3)

除了大函数之外,还有另一种方法可以找到范围内的第三大值吗?

Table

enter image description here

^上面是左边的表1和左边的表2,myMax3返回1,这是表1中的第3大值,但不是表2中

0 个答案:

没有答案