5 способов сделать массив в VBA на примере одной задачи

Поділитися
Вставка
  • Опубліковано 16 гру 2024

КОМЕНТАРІ • 10

  • @ExcelStore
    @ExcelStore 3 роки тому +4

    Материал изложен в доступной для понимания форме. Спасибо.

  • @АлексейГомырин
    @АлексейГомырин 3 роки тому +2

    Очень познавательно!

  • @Rusia-16
    @Rusia-16 Рік тому +1

    Я все делаю без этих массивов, вложенными циклами и логическими операторами, обычно таблицу закидываю в переменную для работы кода. Не понимаю вообще зачем массивы нужны. Еще For Each...Next удобная штука.

    • @evgeniyatim3976
      @evgeniyatim3976  Рік тому

      Пришлите, пожалуйста, ваш пример. Мне очень интересно посмотреть.

    • @Rusia-16
      @Rusia-16 Рік тому

      @@evgeniyatim3976 Sub КопияСП3()
      Dim z, x, v, y As Long
      v = ThisWorkbook.Worksheets("КП").Range("D14").End(xlDown).Row
      y = ThisWorkbook.Worksheets("СП Покупателю").Range("B5").End(xlDown).Row
      ThisWorkbook.Worksheets("КП").Activate
      For z = 5 To y
      Range("D15").Activate
      For x = 15 To v
      If ActiveCell.Value ThisWorkbook.Worksheets("СП Покупателю").Cells(z, 2) Then
      ActiveCell.Offset(1, 0).Activate
      End If
      If ActiveCell.Value = ThisWorkbook.Worksheets("СП Покупателю").Cells(z, 2) Then
      ThisWorkbook.Worksheets("СП Покупателю").Cells(z, 8) = ActiveCell.Offset(0, 1)
      End If
      Next
      Next
      End Sub Это аналог ВПР на VBA с перебором ячеек двух таблиц двумя циклами. Метод End(xlDown) определяет нижние границы таблиц. Логический оператор If забирает значения когда выполняется условие =. Если условие не выполняется Offset переключается на следующую строку.

  • @Котик-н2ч
    @Котик-н2ч 3 роки тому

    Очень хорошо, но для меня, как начинающего, некоторые моменты сложноваты. Например, что такое "максимальная вторая размерность"? Массив вроде как одномерный же? А если он многомерный, то размерностей больше, чем две.

    • @evgeniyatim3976
      @evgeniyatim3976  3 роки тому

      Пришлите адрес почты и я направлю Вам информацию. Тут все легко

  • @666saturation7
    @666saturation7 3 роки тому

    очень тихая запись