поэтому у меня есть простая проблема, которую я пытаюсь решить. У меня есть столбец чисел, который я читаю как строку. Затем я хочу преобразовать строку в Long и сохранить ее в массиве типа Long.VBA Excel Преобразование элемента String Array в длинное «несоответствие типа»
Я попробовал это первоначально:
ElseIf stArray(0, i) = "SrcWth" Then
Debug.Print "Found the Width Column"
For j = 0 To UBound(stArray)
whArray(0, j) = CLng(stArray(j, i))
Next j
stArray является 2d массив, который держит CSV файл информацию. Это тип String. whArray - это массив 2d, который будет содержать два столбца чисел, которые я хочу. Однако он жалуется на несоответствие типов.
Я подумал, что, возможно, он видел пробелы, поэтому я попробовал обрезать его.
ElseIf stArray(0, i) = "SrcWth" Then
Debug.Print "Found the Width Column"
For j = 0 To UBound(stArray)
whArray(0, j) = CLng(Trim(stArray(j, i)))
Next j
Это не имело значения. Что я делаю неправильно? Я предполагаю, что у него проблемы с CLng, поэтому я не уверен.
Благодаря
Да, это была ошибка, которую я исправил по вашему предложению. Но я получаю ту же ошибку в той же строке. – Soolkiki
Вы проверили, что вы переходите в 'CLng', когда появляется ошибка с помощью отладчика? – arcadeprecinct
Я опробовал ваш if-statement. Похоже, я пытаюсь ничего не пропускать, что дало бы несоответствие типа. Это странно. В массиве есть определенные данные, потому что я могу распечатать все, что просто отлично, как строка. – Soolkiki