powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / преобразование
5 сообщений из 5, страница 1 из 1
преобразование
    #39245334
Ekael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер, такой вопрос.
Имеется ячейка с числовым форматом, в которой записано число.Надо через vba число, которое находиться в этой ячейке в числовом формате преобразовать в текстовой формат.
Код: vbnet
1.
2.
3.
4.
dim a as integer ' a - переменная
dim b as string
a = worksheets(1).cells(1,1) 'cells(1,1) в этой ячейке находиться число
a.value = b.string 'выбивает ошибку
...
Рейтинг: 0 / 0
преобразование
    #39245336
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ekael
Код: vbnet
1.
a.value = b.string 'выбивает ошибку

где вы взяли такой синтаксис и что вообще вы хотели этим сказать?

Да и в целом непонятно, что нужно сделать с числом после преобразования в текстовый формат.
...
Рейтинг: 0 / 0
преобразование
    #39245339
Ekael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
С числом после преобразования ничего делать не надо, к примеру в ячейке с числовым форматом была цифра 1, а после преобразования в ней остаётся единица но только формат ячейки уже текстовый
...
Рейтинг: 0 / 0
преобразование
    #39245340
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) включить запись макроса
2) поменять формат ячейки
3) остановить запись макроса
4) посмотреть, что записалось
...
Рейтинг: 0 / 0
преобразование
    #39245393
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде бы простым изменением формата не поправить - после изменения формата надо же и само значение еще изменить. И то, насколько помню, если это делать макросом, то ничего не получится.

А вот так(даже без изменения формата ячейки - только изменяя формат самого значения) будет нормально работать:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
dim a as Long ' лучше Long, т.к. число может быть и больше 32767
a = worksheets(1).cells(1,1).Value 'запоминаем число в ячейке
'эта строка вообще по всем параметрам неправильная
'a.value = b.string
'записываем в ячейку Cells(1,1) значение переменной а, преобразованное в текст
'при помощи встроенной функции преобразования CStr()
worksheets(1).cells(1,1).Value = CStr(a)


а можно еще проще:
Код: vbnet
1.
worksheets(1).cells(1,1).Value = CStr(worksheets(1).cells(1,1).Value)


или
Код: vbnet
1.
worksheets(1).cells(1,1).Value = "'" & worksheets(1).cells(1,1).Value
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / преобразование
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]