java中if的嵌套循环_嵌套的多个“Next变量”if then循环

该博客讨论了一个涉及 Java 的代码片段,其中包含嵌套的 if 语句和循环。作者遇到的问题是,在遍历 Set SFR 时,如何在特定条件下正确地使用 'Next k' 语句来跳转到下一个元素,而不产生重复值。代码涉及到多个数据集的比较和数据赋值操作,作者寻求解决如何在满足条件时避免 'Next Without For' 错误的方法。
摘要由CSDN通过智能技术生成

我有一个代码,我在命名区域中引用变量“k”,然后执行一系列嵌套的“if”循环 . 但是,我只能将“下一个k”放在子中的一个位置 . 但是,如果满足某些条件,我还需要代码循环回到下一个k . 在添加第二个“下一个k”语句时,我得到“Next Without For”错误 .

这是相关的代码片段:

Set SFR = SF.Range("a2", SF.Range("a2").SpecialCells(xlCellTypeLastCell))

Set Sheetparent = Control.Range("b2", Control.Range("b2").End(xlDown))

Set SheetControl = Control.Range("a2", Control.Range("a2").End(xlDown))

Set TypeControl = Control.Range("c2", Control.Range("c2").End(xlDown))

Set BDMControl = Control.Range("E2", Control.Range("e2").End(xlDown))

Set ParentControl = Control.Range("f2", Control.Range("f2").End(xlDown))

If r.Value = POp.Name Then

For Each k In SFR

If SFR(k.Row, 6).Value = r.Offset(0, 1).Value Then

For Each b In ParentControl

If SFR(k.Row, 1).Value = ParentControl(b.Row, 1).Offset(0, -1).Value Then

With POp.Range("a2")

.Offset(i, 0).Value = SFR(k.Row, 3).Value

.Offset(i, 1).Value = SFR(k.Row, 4).Value

.Offset(i, 2).Value = SFR(k.Row, 1).Value

.Offset(i, 3).Value = SFR(k.Row, 4).Value

.Offset(i, 4).Value = SFR(k.Row, 6).Value

.Offset(i, 5).Value = SFR(k.Row, 8).Value

.Offset(i, 6).Value = SFR(k.Row, 9).Value

.Offset(i, 7).Value = SFR(k.Row, 10).Value

.Offset(i, 8).Value = SFR(k.Row, 2).Value

.Offset(i, 9).Value = SFR(k.Row, 11).Value

.Offset(i, 10).Value = SFR(k.Row, 13).Value

.Offset(i, 11).Value = SFR(k.Row, 15).Value

End With

i = i + 1

Else

End If

Next b

Else

End If

Next k

Else

End If

因此,问题是在公式移动到下一个SFR k之前,我得到了几行重复的相同值SFR(k.row,[column]) . 我希望能够告诉宏转到下一个k if

If SFR(k.Row, 1).Value = ParentControl(b.Row, 1).Offset(0, -1).Value

是的,并且值被复制了 . 有什么建议?提前致谢 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值