StoTisteg: влияет на скорость написания кода без ошибок
вот тут не соглашусь — скорее это просто не самый эффективный способ решения с лишними движениями. Но не ошибка… Спасибо за краткий ликбез по коллекциям
Цитата
Nordheim: Жду, я по вашим темам экспериментируя, много открываю нового для себя
это очень приятно слышать
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
' выход сразу из всех вложенных циклов …
Sub Lbl() ' … с помощью метки
Dim n1&, n2&, n3&
For n1 = 1 To 2
For n2 = 1 To 2
For n3 = 1 To 2
If n3 = 2 Then GoTo nx
Next n3
Next n2
Next n1
nx:
' code
End Sub
Sub NoLbl() ' … без помощи метки
Dim n1&, n2&, n3&, f As Boolean
For n1 = 1 To 2
If f Then Exit For
For n2 = 1 To 2
If f Then Exit For
For n3 = 1 To 2
If n3 = 2 Then f = True: Exit For
Next n3
Next n2
Next n1
' code
End Sub
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Select Case True
Case Copy + fKill + fRename <> -1: Stop
Case fCopy: tx = "Copy"
Case fKill: tx = "Kill"
Case Else: x = "Rename"
End Select
' или без отступов для выравнивания
Select Case True
Case Copy + fKill + fRename <> -1: Stop
Case fCopy: tx = "Copy"
Case fKill: tx = "Kill"
Case Else: x = "Rename"
End Select
вариант с меткой короче на 1 (всегда) или 2 (если после метки в строке идёт код) строки — это несущественная причина По скорости примерно тоже одинаково, но метки всё-таки хоть и незначительно, но стабильно быстрее
Для этого случая признаю использование меток совсем не обязательным
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄