vba转c#的问题

honey3565 honey3565 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
'
Sub Macro1()
'

'
' ActiveSheet.Unprotect
Range("F47").GoalSeek Goal:=1, ChangingCell:=Range("F46")
End Sub
'

'************************************************************
Sub Macro2()
' Macro2 Macro
'
'

'
Range("F52").Select
Range("F52").GoalSeek Goal:=1, ChangingCell:=Range("F42")
Range("F53").Select
Range("F53").GoalSeek Goal:=1, ChangingCell:=Range("F38")
End Sub
'*******************************************
Sub Macro3()
'
' Macro3 Macro
'
'
'
Set WS1 = Worksheets(ActiveCell.Worksheet.Name)
' MsgBox ActiveCell.Worksheet.Name
'
Application.MaxChange = 0.000001
ActiveWorkbook.PrecisionAsDisplayed = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

For I = 1 To 100
Application.Run "Macro1"
Application.Run "Macro2"
a = WS1.Cells(47, 6)
b = WS1.Cells(52, 6)
c = WS1.Cells(53, 6)
If ((a > 0.999 And a < 1.001) And (b > 0.999 And b < 1.001) And (c > 0.999 And c < 1.001)) Then GoTo 200
100 Next I
200 Rem

End Sub


*********************************************

以上代码改编成C#,如果三个变量循环+0.000001,嵌套3层for循环会造成假死,请问有什么解决办法或其他思路?

for (F46 = 0.000001; F47 > 1.001 || F47 < 0.999; F46 = F46 + 0.000001)
{
for (F42 = 0.000001; F52 > 1.001 || F52 < 0.999; F42 =F42 + 0.000001)
{
for (F38 = 0.000001; F53 > 1.001 || F53 < 0.999; F38 = F38 + 0.000001)
{
...全文
评论 1
收藏 已收藏
分享
返回顶部
honey3565
C# 111,129 成员 642,538 内容