Ошибка типа 13 Ошибка 13 при установке значения массива - PullRequest
0 голосов
/ 27 ноября 2018

Я не уверен, что происходит, хотя это был бы простой код.

По сути, я просто создаю список массивов, основываясь на том, является ли значение ячейки True.Но я получаю ошибку при установке массива в значение ячейки.Я что-то пропустил?

Sub test()
    Dim chklst() As String
    Dim i As Long

    With Worksheets("Select")
        For i = 1 To 10
            If .Cells(14 + i, 12).Value = "True" Then
                chklst() = .Cells(14 + i, 13).Value 'This is where the error shows up
            End If
        Next i
    End With
End Sub

При добавлении часов обнаружилось, что .Cells(14 + i, 13).Value - это вариант / строка.Изменение переменной на Variant не работает.Изменение значения .Text также не работает .. Справка.

1 Ответ

0 голосов
/ 27 ноября 2018

Вы не объявили размер массива.Без объявления размера некуда что-либо положить.

Sub test()

    With Worksheets("Select")

        Dim chklst() As String
        ReDim chklst(1 To Application.CountIf(.Range(.Cells(15, 12), .Cells(24, 12)), "True"))


        Dim i As Long
        For i = 1 To 10
            If .Cells(14 + i, 12).Value = "True" Then
                chklst(i) = .Cells(14 + i, 13).Value 'This is where the error shows up
            End If
        Next i
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...