跪求一个可以计算不同直径圆的最小外切圆的VBA代码
vba吧
全部回复
仅看楼主
level 3
在表格中输入多种圆直径及对应数量,点击计算后自动求出其最小外切圆
2025年05月11日 02点05分 1
level 7
Sub CalculateMinEnclosingCircle()
Dim ws As Worksheet
Dim lastRow As Long
Dim totalDiameter As Double
Dim i As Long
Set ws = ThisWorkbook.ActiveSheet iveSheet,%E7%BD%91%E9%A1%B5%E9%93%BE%E6%8E%A5) lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
totalDiameter = 0
For i = 2 To lastRow
If IsNumeric(ws.Cells(i, 1).Value) And IsNumeric(ws.Cells(i, 2).Value) Then
' 累加所有圆的直径(直径 × 数量)
totalDiameter = totalDiameter + (ws.Cells(i, 1).Value * ws.Cells(i, 2).Value)
Else
MsgBox "第 " & i & " 行数据格式错误,请检查!"
Exit Sub
End If
Next i
' 输出结果(假设排列为直线,外切圆直径为总长度)
ws.Range("C2").Value = totalDiameter
MsgBox "最小外切圆直径为:" & totalDiameter
End Sub
2025年05月12日 10点05分 0
level 6
我数学不好,你先告诉我如何计算一个圆的最小外切圆
2025年05月12日 05点05分 2
我也不知道咋计算,以前都是在绘图软件上把这些圆画出来,紧密排列在一起,然后再画个外切圆。发现太慢了,想着有没有办法通过程序的方式实现
2025年05月12日 05点05分
@街头艺人123 你会使用Illustrator的话直接就有这个功能
2025年05月12日 05点05分
level 12
按这个说法,外切圆可以无穷小
2025年05月25日 04点05分 5
1