Excel公式查找最大值/最小值

用户名

我有两列,即X和Y列,它具有数据点,在绘制图表时(200多个数据点),它绘制了一个手绘正方形。我的职责是找到四个角的(X,y)点。为此,我需要找到X的最小值和Y最大值,以获取左上角点

我将需要确定最大X点和最大Y值,以找到左下角的点,依此类推。

但是,我不确定该怎么做,因为我可以找到X / Y的最大值/最小值,但是找不到四对角。有什么建议吗?

谢谢

geoB

如果边始终平行于坐标系,则这些点为:

A: min(x), min(y)
B: min(x), max(y)
C: max(x), min(y)
D: max(x), max(y)

如果两边不平行,则需要更加巧妙:

A: min(x), the value of y where x is minimum
B: the value of x where y is maximum,  max(y)
C: max(x), the value of y where x is maximum
D: the value of x where y is minimum,  min(y)

只有在最小或最大x处只有一个y且最小和最大x处只有一个x的情况下,这才起作用。该代码需要完成所有这些工作。

假设坐标在Sheet1中,x坐标在范围名称“ x”中,y坐标在范围名称“ y”中,以下代码应返回角坐标:

Option Explicit
Sub addresses()
Dim wks As Worksheet
Dim sXMinAddress As String, sXMaxAddress As String
Dim sXMinAddressY As String, sXMaxAddressY As String
Dim xMin As Double, xMax As Double
Dim xMinY As Double, xMaxY As Double
Dim sYMinAddress As String, sYMaxAddress As String
Dim sYMinAddressX As String, sYMaxAddressX As String
Dim yMin As Double, yMax As Double
Dim yMinX As Double, yMaxX As Double
Dim testAddress As String, i As Integer

Set wks = Worksheets("Sheet1")

sXMaxAddress = wks.Range("x").Cells(1, 1).Address
sXMinAddress = wks.Range("x").Cells(1, 1).Address
sXMaxAddressY = wks.Range(sXMaxAddress).Offset(0, 1).Address
sXMinAddressY = wks.Range(sXMinAddress).Offset(0, 1).Address
xMax = wks.Range(sXMaxAddress).Value
xMin = wks.Range(sXMinAddress).Value

sYMaxAddress = wks.Range("y").Cells(1, 2).Address
sYMinAddress = wks.Range("y").Cells(1, 2).Address
sYMaxAddressX = wks.Range(sYMaxAddress).Offset(0, -1).Address
sYMinAddressX = wks.Range(sYMinAddress).Offset(0, -1).Address
yMax = wks.Range(sYMaxAddress).Value
yMin = wks.Range(sYMinAddress).Value

For i = 2 To wks.Range("x").Count
    testAddress = wks.Range("x").Cells(i, 1).Address
    If wks.Range(testAddress).Value < xMin Then
        xMin = wks.Range(testAddress).Value
        sXMinAddress = testAddress
        sXMinAddressY = wks.Range(testAddress).Offset(0, 1).Address
        xMinY = wks.Range(sXMinAddressY).Value
    End If
    If wks.Range(testAddress).Value > xMax Then
        xMax = wks.Range(testAddress).Value
        sXMaxAddress = testAddress
        sXMaxAddressY = wks.Range(testAddress).Offset(0, 1).Address
        xMaxY = wks.Range(sXMaxAddressY).Value
    End If
Next i

For i = 2 To wks.Range("y").Count
    testAddress = wks.Range("y").Cells(i, 1).Address
    If wks.Range(testAddress).Value < yMin Then
        yMin = wks.Range(testAddress).Value
        sYMinAddress = testAddress
        sYMinAddressX = wks.Range(testAddress).Offset(0, -1).Address
        yMinX = wks.Range(sYMinAddressX).Value
    End If
    If wks.Range(testAddress).Value > yMax Then
        yMax = wks.Range(testAddress).Value
        sYMaxAddress = testAddress
        sYMaxAddressX = wks.Range(testAddress).Offset(0, -1).Address
        yMaxX = wks.Range(sYMaxAddressX).Value
    End If
Next i
Debug.Print "Vertices:"
Debug.Print "A: " & xMin & ", " & xMinY
Debug.Print "B: " & xMax & ", " & xMaxY
Debug.Print "C: " & yMaxX & ", " & yMax
Debug.Print "D: " & yMinX & ", " & yMin

Debug.Print "Sheet addresses"
Debug.Print "A: " & sXMinAddress & "," & sXMinAddressY
Debug.Print "B: " & sYMaxAddressX & "," & sYMaxAddress
Debug.Print "C: " & sXMaxAddress & "," & sXMaxAddressY
Debug.Print "D: " & sYMinAddressX & "," & sYMinAddress
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel:使用什么公式返回一组查找值的最小值或最大值?

来自分类Dev

在Python中查找列表的最小值,最大值

来自分类Dev

查找函数的最小值和最大值

来自分类Dev

在.json中查找最大值和最小值

来自分类Dev

awk查找数组的最小值和最大值

来自分类Dev

查找局部最小值和局部最大值

来自分类Dev

使用Comparable查找最大值/最小值

来自分类Dev

在.json中查找最大值和最小值

来自分类Dev

查找矩阵的最大值和最小值

来自分类Dev

使用awk查找最小值和最大值?

来自分类Dev

查找连续行的最小值/最大值

来自分类Dev

使用c#在excel中查找每个月的最小值和最大值

来自分类Dev

从数组中查找最小值和最大值,最小值始终为0

来自分类Dev

从数组中查找最小值和最大值,最小值始终为0

来自分类Dev

最小值和最大值

来自分类Dev

数组的最小值/最大值

来自分类Dev

Excel:在与另一列匹配的那些值中查找一列的最小值/最大值

来自分类Dev

Excel 2010-Visual Basic在彩色单元格中查找最小值和最大值

来自分类Dev

Excel VBA根据对应范围的最小值到最大值查找范围内的单元格地址

来自分类Dev

Crystal Reports 2008中求和公式的最大值和最小值

来自分类Dev

在Crystal Report公式中获取最大值和最小值

来自分类Dev

在 VBA 中查找字典值中的最大值/最小值

来自分类Dev

Excel公式在数组中查找最大值

来自分类Dev

在OpenGL ES纹理中查找最小值/最大值的最佳方法是什么

来自分类Dev

SQL查询以查找基于日期的本地最大值,最小值

来自分类Dev

通过用户输入在c ++中查找最大值和最小值

来自分类Dev

Python / Scipy:查找矩阵的“有界”最小值/最大值

来自分类Dev

在二维数组中查找最小值/最大值

来自分类Dev

递归查找数组中的最小值和最大值

Related 相关文章

  1. 1

    Excel:使用什么公式返回一组查找值的最小值或最大值?

  2. 2

    在Python中查找列表的最小值,最大值

  3. 3

    查找函数的最小值和最大值

  4. 4

    在.json中查找最大值和最小值

  5. 5

    awk查找数组的最小值和最大值

  6. 6

    查找局部最小值和局部最大值

  7. 7

    使用Comparable查找最大值/最小值

  8. 8

    在.json中查找最大值和最小值

  9. 9

    查找矩阵的最大值和最小值

  10. 10

    使用awk查找最小值和最大值?

  11. 11

    查找连续行的最小值/最大值

  12. 12

    使用c#在excel中查找每个月的最小值和最大值

  13. 13

    从数组中查找最小值和最大值,最小值始终为0

  14. 14

    从数组中查找最小值和最大值,最小值始终为0

  15. 15

    最小值和最大值

  16. 16

    数组的最小值/最大值

  17. 17

    Excel:在与另一列匹配的那些值中查找一列的最小值/最大值

  18. 18

    Excel 2010-Visual Basic在彩色单元格中查找最小值和最大值

  19. 19

    Excel VBA根据对应范围的最小值到最大值查找范围内的单元格地址

  20. 20

    Crystal Reports 2008中求和公式的最大值和最小值

  21. 21

    在Crystal Report公式中获取最大值和最小值

  22. 22

    在 VBA 中查找字典值中的最大值/最小值

  23. 23

    Excel公式在数组中查找最大值

  24. 24

    在OpenGL ES纹理中查找最小值/最大值的最佳方法是什么

  25. 25

    SQL查询以查找基于日期的本地最大值,最小值

  26. 26

    通过用户输入在c ++中查找最大值和最小值

  27. 27

    Python / Scipy:查找矩阵的“有界”最小值/最大值

  28. 28

    在二维数组中查找最小值/最大值

  29. 29

    递归查找数组中的最小值和最大值

热门标签

归档