|
|
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
есть строка, например '1 000 000', т.е. между цифрами стоят пробелы. Как её преобразовать в число? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:26:23 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
Точно не знаю, но думаю так Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:31:17 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
Функция CInt CInt(Expression) Функция CInt(Conversion to Integer) используется для приведения выражения в тип Integer Возвращаемое значение Функция CInt возвращает значение аргумента, преобразованное в числовой целый тип данных Integer. Дробная часть при этом округляется Параметры Expression Любое числовое выражение или строка,представляющая число от -32768 до 32767 Если числовое значение Expression не попадает в диапазон допустимых значений, происходит ошибка стадии выполнения Overflow. Если Expression имеет тип данных String,то он должен быть числом, иначе возникает ошибка стадии выполнения Type mismatch. Если дробная часть Expression равна 0.5, CInt всегда округляет его до ближайшего четного числа, т.е. CInt(2.5)= 2, a CInt(1.5)= 2 Пример Dim A, retval A=1234.5678 ' A имеет тип Double retval = CInt(A)' преобразуем в Integer Debug.Print retval ' получаем 1235 Категория отсюда А обрезать пробелы можно Replace(Str," ","")... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:35:20 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
=ЗНАЧЕН(A1) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:25:38 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
Вот в справке есть: Type Conversion Functions Each function coerces an expression to a specific data type . Syntax CBool( expression ) CByte( expression ) CCur( expression ) CDate( expression ) CDbl( expression ) CDec( expression ) CInt( expression ) CLng( expression ) CSng( expression ) CStr( expression ) CVar( expression ) The required expression argument is any string expression or numeric expression . ну и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:28:33 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
Подскажите,почему не получается преобразовать? iString="3.333" iDouble=cdbl(iString) ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2009, 15:33:32 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
S-Pon, мб так Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2009, 15:49:11 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
Да,так работает. Но вот что у меня в реальной жизни: на листе данные в формате "#,##" -> эти данные загружатся в combobox. Далее я хочу переменной типа double присвоить: iDouble=CDbl(comboBox1.value). Выдается ошибка 13. И я вижу,что comboBox1.value="3.33". Что за беда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2009, 16:22:46 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
iDouble=CDbl(Left(comboBox1.value, Len(comboBox1.value) - 3) & "," & Right(comboBox1.value, 2)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2009, 16:43:46 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
или так: iDouble=CDbl(Replace(comboBox1.value, ".", ",")) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2009, 16:50:22 |
|
||
|
Преобразование строки в число в VBA
|
|||
|---|---|---|---|
|
#18+
Да, можно и так.. Но я просто сделал combobox1.addItem cstr(cells(i,3)) (до этого было combobox1.addItem cdbl(cells(i,3)), и все заработало. Теперь combobox1.value="3,33" и ф-я cdbl() преобразует прекрасно. Спасибо за советы) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2009, 17:00:36 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34957586&tid=2179579]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
58ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
| others: | 228ms |
| total: | 409ms |

| 0 / 0 |
