single -3.402823E38 to -1.401298E-45 и 1.401298E-45 to 3.402823E38 double -1.79769313486231E308 to -4.94065645841247E-324 и 4.94065645841247E-324 to 1.79769313486232E308
какой тип данных следует выбрать для переменных которые будут принимать значения типа 1.33169
есть вроде decimal но для как я понял для этого нужно обозначить массив.
обрабатываются значения в интервале 1.2хххх - 1.3хххх
макрос отработал без проблем на предыдущем массиве данных - 82000 строки и не одной ошибки.
тот же самый макрос на другом массиве данных (данные идентичны т.е значения в таком же интервале 1.2хххх-1.3хххх) ругается на type mismatch (13 error) возникает когда переменной типа double пытаюсь присвоить значение 1.33169
читаю хелп - вроде 1.33169 это ваще не single и не double ???
snigman, ну а что, так уж трудно пример с Вашими трудностями выложить? Раз уж подсказка Владимира(ZVI) не помогла. Из темы ухожу. Неинтересно. И уговаривать, угадывать давно надоело.
Более того я же написал что до этого макрос отработал на массиве в 82000 строк и значение присваивалось трем переменным типа double на каждой строке. я выбрал 5 случайных строк и перепроверил ручками на бумаге - все посчитано верно.
Юрий М пишет: Это для VBA в качестве разделителя целой и дробной части нужна точка, а на листе - запятая.
точно ! я получаю исходные данные из csv файлов. в предыдущем случае я конвертировал данные сам с помощью макроса и все работало. а в этот раз я загрузил средствами excel данные>из текста и соответственно и точки... стыдно даже как-то стало огромное спасибо всем!