![]() |
![]() |
![]() |
|
Цифры после запятой при сохранении ексель | ☑ | ||||||
---|---|---|---|---|---|---|---|---|
0
smaharbA
12.05.11
✎
23:14
|
Куда пропадают ?
Все прижато вправо, может [:]||||||||||[:] - напомните. (с региональными и прочими запятыми в ветку не соваться) Начало тут http://forums.kuban.ru/showthread.php?t=1101444 |
|||||||
1
smaharbA
12.05.11
✎
23:15
|
+ убить Асмодю и Рому за удафком и другие маты
перенесите в 77 |
|||||||
2
smaharbA
13.05.11
✎
08:42
|
апну, переведите в v7
|
|||||||
3
andrewks
13.05.11
✎
08:53
|
OO как открывает такой xls?
|
|||||||
4
ДенисЧ
13.05.11
✎
08:55
|
Что за дурная манера давать ссылки на чужие форумы?
Что, трудно тут описать картину? |
|||||||
5
andrewks
13.05.11
✎
08:55
|
(4) он же в бане был
|
|||||||
6
ДенисЧ
13.05.11
✎
08:55
|
(5) Мне пофиг, куда он ходил.
|
|||||||
7
smaharbA
13.05.11
✎
08:59
|
(3) не зависит от открывальщика, дело не в нем
(4) При сохранении печатной формы в ексель и интерактивно и программно отбрасывает знаки после запятой, причем оставляя то количество нулей сколько знаков было, региональные и прочие настройки в норме, поведение хоть от админа, хоть от убогого. На терминале. При сохранении из адинески запущенной по сети из того же каталога программы (с шары) все нормально. Еще неделю - две назад все сохраненные в ексель формы выглядят нормально ексель тоже не при делах, сохраненные на другой машине нормально и в нем. |
|||||||
8
andrewks
13.05.11
✎
09:03
|
(7) "причем оставляя то количество нулей сколько знаков было" - пример пожалуйста, чё-то в пятницу мозг не воспринимает таких верчёных фраз
|
|||||||
9
andrewks
13.05.11
✎
09:03
|
(7) 1. это то по теории говоришь, или проверял?
|
|||||||
10
smaharbA
13.05.11
✎
09:05
|
(8) в мокселе к примеру
12345.546 при сохраненении в ексель 12345.000 если 0.12 то соответственно 0.00 |
|||||||
11
smaharbA
13.05.11
✎
09:06
|
(9) конечно проверял
да и в екселях ранее сохраненные отчеты нормальны (как компаунд разбирал то же - знаков нету) |
|||||||
12
andrewks
13.05.11
✎
09:07
|
(10) э? не встречал такого. весьма странно
|
|||||||
13
smaharbA
13.05.11
✎
09:09
|
(12) вот и я также думаю, голову переломал уже, по сути ексель тут никаким боком, конвертер чисто адинесовский
пусть даже международные кривые - тогда тупо как текст или как дату восприняло, а тут и формат верный выставляет у ячейки |
|||||||
14
andrewks
13.05.11
✎
09:09
|
а копипастом если - всё нормуль?
|
|||||||
15
smaharbA
13.05.11
✎
09:18
|
оно нормально и копипастом и если к примеру апостроф спереди вогнать
|
|||||||
16
PuhUfa
13.05.11
✎
09:19
|
(9) если на сервер просто залогинится (не терминалом), запустить 1С и сохранить форму, такая же бяда?
|
|||||||
17
smaharbA
13.05.11
✎
09:21
|
(16) нет возможности пока, только если подключиться консольно по рдп
(буквально неделя-две взад все было ок, правдо один момент - не помню когда была добавлена 8.2 базовая, других изменений не было) |
|||||||
18
Denp
13.05.11
✎
09:27
|
случаем галка "Точность как на экране" не стоит?
|
|||||||
19
andrewks
13.05.11
✎
09:27
|
(17) нескромный вопрос: сервак перезагружать пробовал?
|
|||||||
20
Drac0
13.05.11
✎
09:33
|
Такая фигня во всех сессиях или в некоторых?
|
|||||||
21
smaharbA
13.05.11
✎
09:41
|
(20) в 3 точно, в остальных не проверял
|
|||||||
22
smaharbA
13.05.11
✎
09:41
|
(19) да
|
|||||||
23
smaharbA
13.05.11
✎
09:42
|
(18) ексель тут не приделах, сохраненный открывал и на других, пример мокселя в ссылке сабжа есть, там же и результат в екселе
|
|||||||
24
andrewks
13.05.11
✎
09:42
|
(21) на свежесозданном виндовом и/или 1с-овском юзере пробовал?
|
|||||||
25
smaharbA
13.05.11
✎
09:43
|
(24) нет пока, не подумал, счас попробую
|
|||||||
26
Drac0
13.05.11
✎
09:48
|
Обновления автоматические происходят? Если "само сломалось", то возможно дело в них.
|
|||||||
27
smaharbA
13.05.11
✎
09:50
|
создал нового виндового и нового адинесовского (с каталогом пользователя конечно) - таже песня
|
|||||||
28
smaharbA
13.05.11
✎
09:50
|
(26) обновлений нет
|
|||||||
29
andrewks
13.05.11
✎
09:52
|
(27) ещё более странно. осталось только предложить почистить кэш ;-)
|
|||||||
30
andrewks
13.05.11
✎
09:53
|
платформа 27-я? не менялась перед "этим"?
|
|||||||
31
Drac0
13.05.11
✎
09:54
|
А если снести и заново установить сам Excel? Так, для профилактики ... Некоторые косяки с ним так и решались порой.
|
|||||||
32
smaharbA
13.05.11
✎
10:02
|
(31) это не ексель ! при открытии в другом месте - тоже самое.
Скриншоты http://www.n-d.ru/files/20110513_11_53_01.png http://www.n-d.ru/files/20110513_11_57_47.png от числа после запятой не зависит |
|||||||
33
smaharbA
13.05.11
✎
10:02
|
(30) платформы при проверке 21,23,25,26
|
|||||||
34
andrewks
13.05.11
✎
10:03
|
(31) при чём здесь эксель, mxl2xls не пользует для сохранения msoffice
|
|||||||
35
smaharbA
13.05.11
✎
10:04
|
+(33) 21-ю не могу сменить по причине ВК от раруса, хотя проверял на нескольких разных конфах конечно
с тойже самой платформой и той же конфой (из тогоже места по сети) - на рабочей станции все ок |
|||||||
36
smaharbA
13.05.11
✎
10:06
|
(34) при использовании mxl2xl как фильтра в екселе, мокселевские доки открываются со знаками (они и в адинеске со знаками)
(к слову mxl2xl не участвует в конвертации на сколько помню, это просто дополнение в поставке для возможности работы екселя с мокселем) |
|||||||
37
andrewks
13.05.11
✎
10:09
|
(36) про mxl2xl врать не буду, подзабыл.
но в любом случае 1с при сохранении в xls msoffice не использует |
|||||||
38
smaharbA
13.05.11
✎
10:09
|
это так
|
|||||||
39
Denp
13.05.11
✎
10:18
|
а как в эксель выгружаешь? может в коде накосячил?
|
|||||||
40
smaharbA
13.05.11
✎
10:21
|
(39) штатно конечно, в первую голову речь об интерактивном сохранении после Таб.Показать
|
|||||||
41
smaharbA
13.05.11
✎
10:21
|
+ речь не об одной формоче и не в одной конфигурации
|
|||||||
42
Denp
13.05.11
✎
10:51
|
на скрине не видно, так со всеми числами в таблице? и столбец НДС
сделать с нуля простейшую таблицу с парой числе БЕЗ форматирования и сохранить в эксель пробовал? |
|||||||
43
smaharbA
13.05.11
✎
10:54
|
(42) со всеми, и не зависит от количества знаков после запятой, и хоть это .01 хоть 0.99
а вот количество нулей сохраняется по количеству знаков - писал выше т.е. если к примеру хххх.345 то хххх.000 если хххх.5 то хххх.0 |
|||||||
44
smaharbA
13.05.11
✎
10:55
|
+ и просто создавал таблису и в предприятии и в конфигураторе с одной заполненной ячейкой и сохранял интерактивно - все по прежнему
|
|||||||
45
smaharbA
13.05.11
✎
11:02
|
||||||||
46
Denp
13.05.11
✎
11:08
|
(45) прибить ветку 1С в реестре? может там что сохранилось кривые настройки
|
|||||||
47
smaharbA
13.05.11
✎
12:06
|
(46) см (27)
|
|||||||
48
smaharbA
13.05.11
✎
12:07
|
и это у всех пользователей во всех базах во всех формах и на 4-х платформах
- вывод очевиден казалось бы - проблема с ос, но где ? |
|||||||
49
andrewks
13.05.11
✎
15:08
|
ну как?
|
|||||||
50
smaharbA
13.05.11
✎
19:09
|
(49) по прежнему, пока написал функцию (в ссылке сабжа есть болванка) - всем сказал интерактивно не сохранять, на всех формах расшифровка в первой строке вызывает меню "в ексель, по почте, обновить т т.п.)
|
|||||||
51
Torquader
14.05.11
✎
18:15
|
Попробовать поменять региональные настройки, так как 1С их не использует, а сохраняет как есть. Соответственно, точность она вписать успевает, а вот при записи строки в число с неправильной точкой как раз и происходит "обрезание".
То есть поставить разделитель триад и разделитель частей как в 1С (то есть просто скопировать). Также интересно, а какой тип данных лежит в Excel после сохранения - число или строка ? P.S. с Excel были разные глюки - всех и не упомнишь, но с числами "граблей" не видел (но я с дробными и не работаю, чтобы округление шло честно). |
|||||||
52
smaharbA
15.05.11
✎
19:59
|
(51) в сабже читал в скобках ?
|
|||||||
53
Torquader
15.05.11
✎
22:36
|
Кстати, есть в Excel какая-то "фигня", когда числа превращаются в нули.
К 1С это, конечно, не относится, но я, писав макросы для работы в Excel видел, как все знаки числа становятся нулями (не помню уже, что я такого сделал). Поэтому, в сохранённом файле проверить формат значения и выставить "общий", а в 1С убрать использование формата из ячеек (один формат при "перегонке" в другой может давать кучу "камней"). Удачи. |
|||||||
54
Кириллка
16.05.11
✎
06:58
|
(0)забавная тема, хочешь расскажу из-за чего это и как лечить? :)
|
|||||||
55
smaharbA
16.05.11
✎
07:06
|
(54) да, хочу
в первые с такой байдой столкнулся |
|||||||
56
Кириллка
16.05.11
✎
07:08
|
+54
1. У тебя где-то в коде есть: - получение принтера по-умолчанию; - работа с классом WbemScripting и его родня; - и всем известно, что ты тоже немножечко "Scripting Guy"; 2. У тебя десятичная запятая - запятая, а не точка. устраняешь одну из причин и будет у тебя счастье :) |
|||||||
57
Кириллка
16.05.11
✎
07:10
|
я вот дефолтный принтер стал узнавать отсюда: "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device"
|
|||||||
58
smaharbA
16.05.11
✎
07:14
|
(56) а как дефолтный принтер влияет на интерактивное сохранение в ексель ?
и всегда в региональных была запятая - все сохранялось (естественно региональные пробовал менять, о чем в скобках в сабже) конечно все это гляну еще раз |
|||||||
59
smaharbA
16.05.11
✎
07:16
|
и еще - дефолтный принтер определяется не через вми, а через шел.апликейшен, да и то интерактивно усером только когда надо его сменить, а это крайне редко
|
|||||||
60
smaharbA
16.05.11
✎
07:18
|
+ да и региональные у каждого по отдельности настраиваются - не могли они у всех смениться
|
|||||||
61
smaharbA
16.05.11
✎
07:20
|
+ могу дать доступ кто хотит позырить, давайте только айпи - в базах шибко не копаться, они все активны
|
|||||||
62
Кириллка
16.05.11
✎
07:35
|
(58)ну вот такой парадокс, у меня есть только теория происходящего - подтвердить ее документально не могу: после того, как воспользовался скриптовой виртуальной машиной, что-то там плохеет внутрях с подсистемой ole (эти список методов, начинающийся на olexxxx), и 1с-ка начинает делать хрень, при сохранении mxl в xls.
Подтверждается просто: 0. Создаем в предприятии руками mxl; 1. в одной ячейке пишем 123.45, выравниваем по левому краю; 2. в другой - 123.45, по центру; 3. в другой - 123.45, по правому; 4. тоже самое, но разделитель ","; 5. тоже самое, но разделитель "-"; 6. сохраняем как xls; 7. проверяем, что поведение адекватно; 8. вызываем в этой сессии 1с код: oLocator = СоздатьОбъект("WbemScripting.SWbemLocator"); 9. сохраняем как xls; 10. Наблюдаем неадекватность; 11. Открываем 1с поновой - опять все работает хорошо. |
|||||||
63
Кириллка
16.05.11
✎
07:37
|
+62 такое же неадекватное поведение просиходит после использования общеизвестного кода Function GetDefaultPrinter() на vbscript
|
|||||||
64
smaharbA
16.05.11
✎
07:42
|
(62) спасибо, буду зырить, чего нарою так же сообщу
(буквально не так давно было все ок) |
|||||||
65
smaharbA
16.05.11
✎
07:43
|
+ хотя вми только в двух базах немного пользуются, в остальных нету и таже песня
еще раз спасибо - зырю |
|||||||
66
Кириллка
16.05.11
✎
07:46
|
(64)ну может в реестре заменил десятичный разделитель на "," и полетело счастье.
|
|||||||
67
Кириллка
16.05.11
✎
07:48
|
+66 уточнюсь: заменил разделитель на "," и пользуешься скриптовой виртуальной машиной. Одно без другого к такому эффекту не приводит.
|
|||||||
68
andrewks
16.05.11
✎
08:35
|
(67) эта херь потом продолжается только на протяжении сеанса, в котором было шаманство, или достаточно один раз "проколоться", и это г. прописывается где-то в недрах реестра и отравляет потом усерам жизнь?
|
|||||||
69
Кириллка
16.05.11
✎
09:55
|
(68)эта хрень действует на 1с, в которой шаманил, и до тех пор, пока эту 1с не закрыл.
|
|||||||
70
smaharbA
16.05.11
✎
10:19
|
Проверил на базе чистой от скриптов - таже хня
конечно если сменить разделитель на точку в региональных, сохраняет знаки, но и разделитель тогда точка - а оно еще две недели назад все работало да и при сетевой работе с конфами как с теми в которых есть вми и с теми в которых его нет - все ок |
|||||||
71
Кириллка
16.05.11
✎
10:24
|
(70)В ПриНачалеРаботыСистемы() сразу делаешь Возврат;
Выполняешь алгоритм из (62) и один фиг тоже самое? |
|||||||
72
smaharbA
16.05.11
✎
10:27
|
(71) нету в этой базе вообще обращений ни к вми ни к другим объектам виндуза - чистая усн, да и на сетевых подключениях нет отброса концов
|
|||||||
73
smaharbA
16.05.11
✎
10:30
|
+ да и в таблице созданой из конфигуратора и сохраненной в ексель из конфигуратора (всего одна ячейка) - таже байда
|
|||||||
74
Кириллка
16.05.11
✎
10:35
|
(73)ну хз тогда
ps: openconf в конфигураторе тоже ведь использует скриптовую виртуальную машину. |
|||||||
75
smaharbA
16.05.11
✎
10:38
|
(74) уже подумал, отключу и его счас
|
|||||||
76
smaharbA
16.05.11
✎
10:41
|
Запустил конфигуратор 26 - чистый от всего, создал таблицу, ввел 1234.54, прижал вправо, сохранил в ексель, получил 1234,00
|
|||||||
77
Кириллка
16.05.11
✎
11:11
|
(76)мож у тебя какой самопальный вирус вносит такое поведение? :)
|
|||||||
78
TeddySlaf
16.05.11
✎
11:43
|
а вдругие форматы пробовал сохранять? в HTML, в txt?
|
|||||||
79
smaharbA
16.05.11
✎
11:51
|
(77) может быть ))
вспомнил, что возился с пайтоном в ООо, как раз в направление уно+оле, может и сковырнул чего - правдо реестр не правил (78) в хтмл и в текст все нормально |
|||||||
80
Serg_XX
16.05.11
✎
13:24
|
Извините, все читать времени нет
Лист.Cells(НомСтр,НомКол).NumberFormat = "0,00"; и вроде никаких проблем |
|||||||
81
smaharbA
16.05.11
✎
17:01
|
(80) читай сабж
|
|||||||
82
andrewks
16.05.11
✎
17:05
|
(81) на зверьков проверял?
|
|||||||
83
smaharbA
16.05.11
✎
17:12
|
(82) нет, в теории могут конечно быть, но вероятность крайне низка
|
|||||||
84
smaharbA
16.05.11
✎
17:13
|
проверю на досуге
|
|||||||
85
Torquader
16.05.11
✎
23:52
|
И ещё такой вопрос - разделитель для чисел и для денежных единиц выбран одинаково ?
Потому как я один раз выбрал разными - до сих пор на той машине Excel криво работает. В твоём выложенном примере 1С считает разделителем точку, а ты её заставил как-то считать, что у тебя разделитель не точка - соответственно "умная" 1С обрезает всё, что видит до точки. То есть, каким-то чудом удалось поменять системный (а не пользовательский формат региональных настроек). Есть мнение, что нужно поискать в HKEY_LOCAL_MASHINE то, что отвечает за настройки (или в HKEY_USERS/DEFAULT) и попробовать поменять там. Ещё, что даёт пример на VBScript если вывести CSTR(1.23) ? |
|||||||
86
smaharbA
16.05.11
✎
23:53
|
одинаковые
ексель тут не причем - адинес сохраняет своей компонентой. |
|||||||
87
smaharbA
16.05.11
✎
23:54
|
выдает как и положено 1,23
|
|||||||
88
smaharbA
16.05.11
✎
23:55
|
именно - зпт
|
|||||||
89
Torquader
16.05.11
✎
23:56
|
А если в mxl записать число с запятой вместо точки - как его сохранит ?
|
|||||||
90
smaharbA
16.05.11
✎
23:57
|
точно так же - отбрасывает после запятой сохраняя количество знаков (проверено на точке, запятой и дефисе)
|
|||||||
91
Torquader
16.05.11
✎
23:59
|
Я твой пример гоняю - так вот, то что написал ты - Excel, конечно, понимает, но почему-то Excel понимает как число с фиксированным количеством знаков, а то, что я дописываю - такое же число - то оно сохраняется в формате общий.
Где в 1С задаётся формат чисел по умолчанию ? |
|||||||
92
Torquader
17.05.11
✎
00:01
|
Вопрос - если выравнивание поставить по левой стороне - тоже знаки отрезает или просто целое число получается ?
|
|||||||
93
smaharbA
17.05.11
✎
00:02
|
если центровать то как текст или дата - в зависимости от содержания
|
|||||||
94
smaharbA
17.05.11
✎
00:03
|
счас лениво уже снова зырить, но все что спрашиваешь проверялось
|
|||||||
95
smaharbA
17.05.11
✎
00:03
|
завтра могу дать доступ, счас уже спать иду
|
|||||||
96
Torquader
17.05.11
✎
00:05
|
Просто у тебя в примере в Moxel идёт просто текст, который потом должен стать числом - и он им "становится", но точку никто не воспринимает, как надо.
|
|||||||
97
Torquader
17.05.11
✎
00:07
|
Пока удалось получить, что 123,456 и 123-456 в mxl переводятся в 123 456 в Excel, то есть - пошёл как разделитель групп разрядов (вот откуда он это взял) ?
|
|||||||
98
smaharbA
17.05.11
✎
00:07
|
(96) воспринимает - читай ветку
|
|||||||
99
Torquader
17.05.11
✎
00:11
|
Ещё в Excel есть настройка "использовать системные разделители" - нет ли чего похожего в 1С ?
|
|||||||
100
Torquader
17.05.11
✎
00:13
|
Просто в 1С есть метод "ИспользоватьФормат", который задаёт формат для всей таблицы - может с ним что-то "напутано" ?
|
|||||||
101
Torquader
17.05.11
✎
00:20
|
И ещё mxl2xl.dll - это конвертер, который прописывается в Excel и позволяет открыть mxl-файлы - что открывает Excel если открывать mxl ?
|
|||||||
102
Chameleon1980
17.05.11
✎
04:50
|
(101) Судя по названию я бы сказал, что может конвертит в xl*
|
|||||||
103
smaharbA
17.05.11
✎
06:23
|
(101) все нормально открывает, в сабже об этом есть
|
|||||||
104
smaharbA
17.05.11
✎
06:24
|
(100) речь ведь не об одной таблице и не об одной конфигурации
|
|||||||
105
Кириллка
17.05.11
✎
07:35
|
(104)бинарники 1с родные ставил? или патченные?
|
|||||||
106
smaharbA
17.05.11
✎
07:39
|
(105) всякие, беда то в том, что точно байда в системе (еще зырю твои предположения) ибо две недели взад все было ок, а тут манагер отправила счет в екселе, а ей с той стороны указали на отсутствие копеек, а отправляли они регулярно
|
|||||||
107
smaharbA
17.05.11
✎
07:39
|
+ да и с тех же каталогов программ и баз по сети все ок
|
|||||||
108
Кириллка
17.05.11
✎
07:41
|
(106)а что их зырить? проблема либо воспроизводится, либо нет.
|
|||||||
109
smaharbA
17.05.11
✎
07:44
|
счаспока лениво разбираться уже, сделал затычку, после буду зырить, что насмотрю напишу
|
|||||||
110
Torquader
18.05.11
✎
00:37
|
(109) Ещё есть мнение, что независимо от платформы выполняется какой-то один зарегистрированный в реестре модуль, который берётся из одной папки 1С, а то, что саму программу запускают из другой - это ему не ведомо.
То есть можно попробовать дать пользователю права администратора, поставить заново 1С и только тогда смотреть, что получилось. (А ещё лучше вычистить из реестра все ссылки на директории, где жила 1С). |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |