Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 21.05.2010, 18:41   #1
НеВа6464
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 64
По умолчанию Нежелательное округление числа

Здравствуйте!
Копирую из Вордовской таблицы 20-ти значное число в Эксель.
В Экселе оно приобретает экспоненциальную форму. При этом округляет число, обнуляя младшие разряды. Игры с форматами ячеек не помогли.
Пример.
Число в таблице Ворда: 40702810702300000430
Результат копирования в Эксел: 4,07028E+19
В получивчемся числе уже обнулены три младших разряда, т.е. оно имеет значение 40702810702300000000.
Что делать? Как быть?
НеВа6464 вне форума
Старый 21.05.2010, 18:47   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

А вам нужно с ним вычисления производить или просто чтобы оно лежало в ячейке?
motorway вне форума
Старый 21.05.2010, 19:03   #3
ELE-COM
Пользователь
 
Регистрация: 08.05.2010
Сообщений: 48
По умолчанию

Я так понимаю, это номер банковского счета и никакие арифметические действия с ней производиться не будут.
Выберите формат ячейки "текстовый", а потом вставляйте.
ELE-COM вне форума
Старый 21.05.2010, 19:05   #4
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Если не поможет, можно поставить перед числом знак '
motorway вне форума
Старый 21.05.2010, 20:09   #5
НеВа6464
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 64
По умолчанию

Совершенно верно. Это номер банковского счёта. Вычислений с ним не производится, но он нужен для идентификации клиента. Т.е. требуется его точное значение.
К сожалению, выписка из банка конвертируется только в Ворд и представляет собой таблицу, в одном из столбцов которой указывается счёт клиента.
Копирование необходимой части выписки из Ворда в Эксель происходит вручную, а дальше средствами ВБА выписка причёсывается до нужной формы. Предварительное форматирование ячеек, в которые попадают номера счетов (в том числе и превращение их в текст) не дают искомого результата. Т.е. таблица из Ворда как бы накрывает исходное форматирование ячейки. Другими словами переформатирует её.
Прикладываю файл с кусочком исходной таблицы Ворд.
Вложения
Тип файла: rar Источник.rar (2.6 Кб, 26 просмотров)
НеВа6464 вне форума
Старый 21.05.2010, 20:13   #6
НеВа6464
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 64
По умолчанию частично решил проблему

Действительно, если апостроф поставить в исходную Вордовскую таблицу, то при копировании не происходит округления, т.к. такая вордовская яйчека воспринимается Экселем как текст. Только какой-то осадок от корявости решения
НеВа6464 вне форума
Старый 21.05.2010, 20:20   #7
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Если изменить формат на текстовый предварительно, а потом вставить число в строку формул, то должно получиться
motorway вне форума
Старый 21.05.2010, 20:31   #8
НеВа6464
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 64
По умолчанию

Да, так получается. Но это весьма муторное занятие. Таблица копируется целиком, а затем придётся отдельно номера счетов по одному копировать через строку формул. Выписка может содержать 20-30 строк.
НеВа6464 вне форума
Старый 21.05.2010, 21:00   #9
ELE-COM
Пользователь
 
Регистрация: 08.05.2010
Сообщений: 48
По умолчанию

Ну тогда наверное можно попробовать "поиск и замена"
407028 поменять на '407028, "заменить все" еще в Word перед вставкой в Excel.
ELE-COM вне форума
Старый 21.05.2010, 21:05   #10
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

Вариант-1
Прописывайте лидирующий апостроф в ячейки таблицы Word макросом
Word'а перед копированием в буфер.
Вариант-2
1. Форматируете столбец в Excel как текстовый (это необходимо хотя и не очевидно)
2. Копируете данные в Word в Clipboard
3. Вставляете скопированные данные с помощью "специальная вставка - текст в кодировке UNICODE"
Хвосты не теряются.

Последний раз редактировалось Aent; 21.05.2010 в 21:16.
Aent вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Округление числа в ячейке Aleksandr-St Microsoft Office Excel 1 17.04.2010 23:19
Округление числа Foxx Microsoft Office Excel 13 07.04.2010 07:09
Округление числа с точкой artemavd Общие вопросы Delphi 11 03.02.2010 02:06
Округление числа до заданной точности Siluet Общие вопросы Delphi 3 15.04.2009 17:39
Округление числа Pinya Microsoft Office Excel 2 18.09.2008 18:01