|
|
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
У меня офис 2002. нижеследующий код нормально отрабатывает, заполняя оба диапазона числами. Клиент с офисом 2003 (без sp, русский) сообщил, что у него второй цикл всегда дает строковое, а не числовое заполнение ячеек. Прошу помощи в понимании следующих вопросов: - это баг непатченной версии или поведение Excel 2003 by design - как отработает этот код в других версиях – 97-2007 (про версию 2002 достоверно известно, что «правильно» заполняются оба диапазона) Прошу желающих оказать помощь запустить этот код и сообщить о том, как произошло заполнение диапазонов – оба диапазона содержат числа или один из них оказывается заполненным строками. Прошу указать версию Excel и номер сервис-пака. App.UseSystemSeparators и App.DecimalSeparator буду благодарен за уточнение. я уже не помню/не знаю - были ли в 97м и 2000м Спасибо всем откликнувшимся Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 12:35:14 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
хвост предыдущего сообщения должен выглядеть так: я уже не помню/не знаю - были ли в 97м и 2000м Экселе App.UseSystemSeparators и App.DecimalSeparator буду благодарен за уточнение. Спасибо всем откликнувшимся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 12:37:20 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Как вы просили запустил Ваш код, во всех ячейках формат - General Но когда я переправил формат одного ячейки на текст то при поворном запуске формат остался - текст. У меня Wind XP sp 2, Office XP OK? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 12:57:41 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
в данном случае формат ячеек подразумевается general или явно выставленный числовой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:07:12 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Excel 2007 (Eng), Win 2003 Server (Eng), Regional Settings - Russian Первый диапазон: формат ячеек General внутри строка вида 12345 разделитель 6789 (проверялось с различными разделителями - точка, запятая, буква z), т.е. число Второй диапазон: формат ячеек Number внутри число 123456789 Т.е. десятичный разделитель вообще потерялся. Проверялось опять таки с разными десятичными разделителями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:19:38 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
До запуска кода я в ячейках формат не выставлял. После копировяния проверил формат всех ячеик - format cells, при поверке формата ячейк у всех как по умалчанию должно быть - General. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:19:54 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Victosha я уже не помню/не знаю - были ли в 97м и 2000м Экселе App.UseSystemSeparators и App.DecimalSeparator буду благодарен за уточнение.праильно сомлевался 2000 не проглотил Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:22:35 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Excel 2003 (11.8134.8132) SP2 нижний диапазон строками заполнен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:29:18 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Забыл сообщить, что - У меня после заполнения ячейк разделител - "," Reg. setings - Russian ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:30:43 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
4321 Victosha я уже не помню/не знаю - были ли в 97м и 2000м Экселе App.UseSystemSeparators и App.DecimalSeparator буду благодарен за уточнение.праильно сомлевался 2000 не проглотил Код: plaintext 1. там что там в 2000м - с таким кодом - чиселки или бузина с капустой? 2ЛП спасибо. понял. значит 2007 живет здесь по правилам 2003го. опечалися я вчерась от этого дела сильно. вот еще приблуда: 0) выставляем разделитель в экселе в "," (запятая) 1) загоняем в клипборд текстовую последовательность "12345,678" & vbtab & "12345,678" 2) встаем в клетку экселя и жмем ctrl-ins результат - в клетках чиселки (типа ура) и в 2002м и в 2003м заменяем пункт 2) на код вида wks.Paste StartCell в 2002м - по людски чиселки, а в 2003м полное разочарование. жить с этим можно, конечно. Но как-то безрадостно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:31:57 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
vbaproExcel 2003 (11.8134.8132) SP2 нижний диапазон строками заполнен спасибо. кажется с 2003м и 7м все уже ясно. теперь бы понять, как подобное рулится или должно в младших версиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:34:49 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
извините - опечатка. вместо автори жмем ctrl-ins должно быть: и жмем shift-ins ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:55:12 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Victosha там что там в 2000м - с таким кодом - чиселки или бузина с капустой? как и ожидалось - ,т.к. разделитель в коде переключить не удаесца - нет таких пимпачкоф у аликуйшена в 2000, то в зависимости от текущих настроек. при разделителе "тчк" - верхняя половина числеки, при "зпт" - нижняя. Остальная часть - строчки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 13:56:53 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
4321 Victosha там что там в 2000м - с таким кодом - чиселки или бузина с капустой? как и ожидалось - ,т.к. разделитель в коде переключить не удаесца - нет таких пимпачкоф у аликуйшена в 2000, то в зависимости от текущих настроек. при разделителе "тчк" - верхняя половина числеки, при "зпт" - нижняя. Остальная часть - строчки. премного спасибо. с этим понятно как жить. осталось надеятся, что 97й ведет себя также. вот если еще не затруднит проверить программную вставку из клипборда в 200м... было бы совсем замечтательно... надеюсь, что там нет разносортицы вставки вручную и кодом. -------- ЗЫ конечно, каждая версия имеет право свою правду утверждать. но правда свежих версий мне нравится меньше всего. для меня это, пожалуй, ошеломительно разочаровывающее поведение в целом в 2203-2007м. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 14:05:52 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
Victoshaосталось надеятся, что 97й ведет себя также.проверил 97. так же. Victoshaошеломительно разочаровывающее поведение в целом в 2203-2007м.2203- это перебор. но да, забавно. Я так понимаю, что вопрос о вставке числе в перемешку со сторками, в случаях, когда тип возврата заранее не известен? А не проще ли пытаться вставить числа как числа? или там идет неявное преобразование в текст? зы а .Formula вместо Value не спасает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 14:31:22 |
|
||
|
Excel. Интернациональная проблема заполнения диапазона из массива. Помогите тестированием
|
|||
|---|---|---|---|
|
#18+
[quot 4321 Я так понимаю, что вопрос о вставке числе в перемешку со сторками, в случаях, когда тип возврата заранее не известен? А не проще ли пытаться вставить числа как числа? или там идет неявное преобразование в текст? зы а .Formula вместо Value не спасает?[/quot] .Formula вместо Value не спасает - это утверждение, а не вопрос. проверил вчера для .FormulaR1C1 контекст возникновения вопроса такой: есть три разных типа входных потоков, "форматирующих результат" один - "двоично-текстовый" с десятичным разделителем, соответствующий системному. второй - похожий на первый "двоично-текстовый" с десятичным разделителем точка. тип даных для полей в обоих потоках отсутствует. О том, число там или нет нужно судить по контексту. третий - текстовый, с тегами типа данных Разделитель для третьего потока может быть заказан в момент обращения к нему. По смыслу потоки содержат текст, числа и даты. сорт потока определяется нормально. Напимер, разделением вызывающих процедур. Первоначальное предположение состояло в том, что худший случай обработки всех потоков однотипной процедурой заполнения массива для отрисовки, будет заключаться в манипулияциях текущими настройками приложения в момент отрисовки потока, так, чтобы не требовалось преобразования из строки к числовым типам данных. Как показывает происходящее в данном топике обсуждение, к простому рабочему виду, для всех трех потоков без перегрузки преобразования данных, это приводится в версии 2002. Изначально переносимость кода ожидалось обеспечить в перелах версий 2000-2003.... ------------------ Как надежно жить с потоком первого типа, при том, что тип "текущего поля" из потока непосредственно не вычитывается, в версиях 2003 и дальше я пока не знаю. В общем, тема почти закрыта. Если бы еще вопрос о вставке из клипборда в версииях 2000 и 2007м прояснить, было бы совсем здорово. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2007, 15:11:31 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34551128&tid=2182898]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 359ms |

| 0 / 0 |
