VBA Урок_10 | Оператор цикла While | Программирование для начинающих Просто и Доступно | Язык VBA

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 พ.ย. 2024

ความคิดเห็น • 14

  • @ДинРид-в4ы
    @ДинРид-в4ы 5 ปีที่แล้ว +2

    Сколько я читал, а так все просто объяснил за несколько минут. Молодец!

  • @name_last_name
    @name_last_name 9 ปีที่แล้ว +1

    Благодаря этому видео, после трех часов танцев, мне удалось отладить первый свой цикл.
    Алилуя. Теперь время расчетов сократится вдвое только на одной операции.
    Однозначно плюс.
    Автор, не плохо было бы акцентироваться на случаях, когда обрабатываемый диапазон отличен от Cells(1,1)
    У меня это вызвало значительное затруднение, ибо во всех найденных инструкциях эта проблема присутствует.

    • @RobotoborPro
      @RobotoborPro  9 ปีที่แล้ว

      +Юрий Мешков Спасибо за плюс, поздравляю, что не сдались, а пробили отладчиком стену логической ловушки! С каждым разом будет все легче и легче. А по поводу другого диапазона, ну, возможно, нужно было сделать больше примеров, но урок тогда бы растянулся, поэтому показал основу, остальное на "поиграться с кодом" самостоятельно

    • @СергейЧуриков-л5ь
      @СергейЧуриков-л5ь 8 ปีที่แล้ว

      ROBOTOBOR.PRO ✌ Доступное Программирование да мы бы и подольше смотрели )

  • @V._A._S.
    @V._A._S. 4 ปีที่แล้ว

    Как всегда хорошее видео. Всё просто и понятно. Всего один вопрос.
    Я убрал из конструкции i + 1 просто посмотреть что будет. Естественно программа начала бесконечно выводить 1 столбец и 1 строку. И я не мог остановить выполнение кода. Пришлось эксель закрыть и заново открыть. Есть какая-нибудь кнопка останавливающая выполнение кода?

    • @RobotoborPro
      @RobotoborPro  4 ปีที่แล้ว

      Можно Alt+Ctrl+Break

  • @mariapetrukhina1550
    @mariapetrukhina1550 4 ปีที่แล้ว

    А что делать, чтобы после пустого значения цикл посчитал? Написать какое-то дополнительное условие или еще один цикл написать?

    • @RobotoborPro
      @RobotoborPro  4 ปีที่แล้ว

      После цикла дописать код. Либо в условии цикла все же принимать пустую строку, а в самом цикле написать условие отслеживающие пустую строку, в этом условии делаем то что нужно и принудительно завершаем цикл.

  • @Serega_Zaicev
    @Serega_Zaicev 4 ปีที่แล้ว

    смешной цикл с петлёй Do Loop я пытался поигратса с ней и доигрался что программа зависла)))

  • @AnonimusAnonimusAnon
    @AnonimusAnonimusAnon 6 ปีที่แล้ว

    Не понял зачем дважды дублировать строку valueCell = Cells (i,1). Можете обьяснить поподробнее?(((

    • @dimitripasmore
      @dimitripasmore 5 ปีที่แล้ว

      Удали valueCell = Cells (i,1) и узнаешь. Я удалил ) Как остановить выполнение процедуры?

    • @qqeverdx5691
      @qqeverdx5691 4 ปีที่แล้ว

      @@dimitripasmore можно так написать
      Sub MainProc()
      Dim i As Integer
      Dim Value As String
      i = 1
      Do While (Cells(i, 1) "")
      Value = Cells(i, 1)
      i = i + 1
      MsgBox Value
      Loop
      End Sub

    • @Gorich181
      @Gorich181 4 ปีที่แล้ว

      сначала мы проверяем условие, что valueCell не пустое и выводим msgBox,
      потом увеличиваем i на 1, но внутри цикла while, valueCell всё ещё равно значению при i = 1,
      после loop нас возвращает на строчку проверки условия Do While (valueCell "")
      т.е. если внутри цикла снова не присвоить valueCell = Cells(i, 1), то не смотря на увеличение i, значение переменной valueCell не изменится т.к. первоначальная строка "valueCell = Cells (i,1)" находится выше строки do while
      Думаю спустя год уже все разобрались, но может кому ещё помогу))

  • @АлексейДемидов-р6э
    @АлексейДемидов-р6э 4 ปีที่แล้ว

    +