Страницы: 1
RSS
Проблема со слиянием даты: дата в Word отображается неправильно.
 
Уважаемые специалисты подскажите почему при слиянии когда открыта таблица с данными дата в документе ворд в виде цифры, а при закрытой таблице все нормально?
Заранее спасибо.
 
Стик, видимо, разные механизмы доступа к открытому приложению и к закрытому файлу.
Попробуйте указать формат явно, типа { MERGEFIELD дата \@ "dd.MM.yyyy" }
 
Спасибо за совет. Но дело в том, что в коде это все указано. Вот я и в тупике почему так получается(
 
Стик,  В каком коде? Казанский, Вам про поле в Word.  
По вопросам из тем форума, личку не читаю.
 
БМВ и я именно про это в документе Word "{ MERGEFIELD дата \@ "dd.MM.yyyy" }" вставляется  при нажатии ПКМ - Коды/Значения полей
 
Стик,  Хм. проверил и у меня тоже не форматирует именно дату Office 2016.
По вопросам из тем форума, личку не читаю.
 
У меня 2010. Уже всю голову сломал((( Попробуйте закрыть Экселевский файл и открыть вордовский все заработает. Но нужно чтобы работало при открытом.
Изменено: Стик - 27.12.2017 22:21:12
 
У меня совсем перестало форматировать, что так, что этак.
По вопросам из тем форума, личку не читаю.
 
Подождем может кто подскажет в чём проблема.
 
Цитата
Стик написал:
дата в документе ворд в виде цифры,
Имеется в виду дата отображена числом, как в Excel при числовом формате?
У меня тоже 2010, но всё нормально отображает и при открытом и при закрытом. А может в ячейке не дата в числовом формате, а текст? Посмотреть бы на оба файла. Оставьте пару ячеек, может покажите файлы?
 
Такая же ерунда на Office2010.
Есть натруженный файл XLS с персональными данными, которые экспортируются в документ Word.
При этом даты отображаются в виде чисел - "42701" и так далее.
В таблице Excel даты лежат в формате даты, т.е. вбиваются вручную или копипастится текст, а Excel его корректно преобразует в дату вида 11.03.2022, например.
Большинство жалующихся на проблему при слиянии полей, имеют в виду преобразование формата даты, например из даты 11.05.2022 получается 5/11/2022.
У меня же совсем другой косяк - дата отображается в виде числа.
Соответственно, рекомендация добавить в поле формат вида \@ "dd.ММ. yy" ничем не помогает.
Однако замечу, что если я создаю чистый файл XLS и вобью в него даты, то они переносятся в Word относительно корректно, т.е. меняется только формат даты. Если беру данные из боевого файла, то дата превращается в число.
В рабочей таблице ничего особенного нет - некоторое условное форматирование (окраска) ячеек, некоторые небольшие строковые формулы, вроде подставления инициалов вместо  отчества и имени. Есть стандартные фильтры по заголовкам, есть объединённые ячейки опять же, в заголовках..
Кроме того, я вставлял в таблицу колонки, автоматически менялся тип содержимого, но не думаю, что проблема в этом..
Помогите, создавать таблицу с нуля, отслеживая, когда начнёт слетать дата, мне как-то совершенно не хочется.  
 
сделайте в Excel еще одну колонку, в ней =ТЕКСТ(СсылкаНаЯчейкуСДатойВТойжеСтроке;"ДД.ММ.ГГГГ")
передавайте в Word именно это поле
Изменено: Ігор Гончаренко - 29.12.2022 13:49:05
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
написал:
создавать таблицу с нуля, отслеживая, когда начнёт слетать дата, мне как-то совершенно не хочется.
Вероятность успешного решения проблемы всегда выше, если задающий вопрос подготовит пример.
Владимир
 
У меня Офис 2010, Ворд корректно вставляет в поля слияния даты из Ексел. В Ексел формат ячеек "дата", Тип: *14.03.2001  (стандартный). Тип файла - xls. (достался по наследству).
В Ворде поля слияния типа { MERGEFIELD дата \@ "dd.MM.yyyy" }.
Изменено: Zagadka - 29.12.2022 15:10:15
 
Цитата
написал:
Вероятность успешного решения проблемы всегда выше, если задающий вопрос подготовит пример.
Безусловно, но парадокс в том, что когда я начинаю обрезать всё лишнее, чтобы получить аскетичный файл без ПнД, то в последний момент дата начинает вставляться нормально и я не могу точно определить этот момент, поэтому понадеялся, что похожая проблема уже имеет своё решение. В противном случае я бы не стал обращаться за помощью, а разобрался бы сам. Цивилизация построена на том, что люди делятся полученным опытом друг с другом, а не повторяют ошибки по много раз. Так появилась речь, книги, интернет.
 
Цитата
написал:
Цитата
написал:
Вероятность успешного решения проблемы всегда выше, если задающий вопрос подготовит пример.
Безусловно, но парадокс в том, что когда я начинаю обрезать всё лишнее, чтобы получить аскетичный файл без ПнД, то в последний момент дата начинает вставляться нормально и я не могу точно определить этот момент, поэтому понадеялся, что похожая проблема уже имеет своё решение. В противном случае я бы не стал обращаться за помощью, а разобрался бы сам. Цивилизация построена на том, что люди делятся полученным опытом друг с другом, а не повторяют ошибки по много раз. Так появилась речь, книги, интернет.
Пока обнаружил странный эффект. Если файл - источник закрыт, то Word печатает дату корректно, "24.12.2022", не требуется даже уточнять формат. Если открываешь сначала Excel , потом Word - 44906. Файл XLS в однопользовательском режиме.
Соответственно, если сначала открыть Word, то при попытке открыть следом XLS выдаётся предупреждение, что файл заблокирован.
Копаю дальше.
 
Проведён эксперимент: 1. Сначала открыт Вордовский файл слияния, потом Екселовский файл с данными - даты отображаются нормально.
2. Сначала открыт Екселовский файл с данными, потом Вордовский файл слияния - тоже с датами всё нормально.
В Ексел формат ячеек "дата", Тип: *14.03.2001  (стандартный). Тип файла - xls.
В Ворде поля слияния типа { MERGEFIELD дата \@ "dd.MM.yyyy" }.
 
Song774, подтверждаю ваше наблюдение, перед распечаткой в Ворде все делаю в Ексель, ЗАКРЫВАЮ и  все "унцо- унцо"
У меня при слиянии две разные даты, если смотреть через вкладку "изменить список получателей"
одна мм/дд/гг решение через \@ "dd.MM.yyyy
вторая 45702 если Ексель открыт, а закрыт все норм
Изменено: xsander - 24.05.2023 13:48:09
Страницы: 1
Читают тему
Наверх