Друзья! В каких случаях (может они существуют) может возникнуть такая ошибка при открытии файла? Удаленное свойство: Проверка данных из части /xl/worksheets/sheet1.xml
При открытии файла макросом формируется столбец с ниспадающими списками. Далее в следующих справа столбцах выбираются связанные ниспадающие списки. Формирование списка во втором столбце идет только в том случае, если в первом столбце что-то выбрано. Формирование третьего - от второго и т.д. Все работает без ошибок и проблем. После сохранения, закрытия и повторного открытия файла возникает эта ошибка. Данные (текст) из ячеек не пропадает, но "присвоение" ячейке ниспадающего списка пропадает. Т.е. пользователь не может повторно его редактировать. Версия Excel 2007.
1. если я сохраняю файл в версии 2003, то списки не пропадают. 2. ячейкам со списками присваивается не именованный диапазон, (Formula1) а строка, в которой больше 255 символов (Formula1 вбирает в себя до 8000 символов)
Сначала была причина в том, что я использовала Select. Исправила - ликвидировала Select вообще из макросов. Но после этого еще где-то что-то лагает и портится. Есть у кого-нибудь еще какие-нибудь варианты? Еще по моим наблюдениям... если в списках маленькое количество информации (больше 255 символов, например 800), то глюков с открытием файла не возникает. А если большое количество - 3000, 5000 - возникает ошибка.
Друзья! В каких случаях (может они существуют) может возникнуть такая ошибка при открытии файла? Удаленное свойство: Проверка данных из части /xl/worksheets/sheet1.xml
При открытии файла макросом формируется столбец с ниспадающими списками. Далее в следующих справа столбцах выбираются связанные ниспадающие списки. Формирование списка во втором столбце идет только в том случае, если в первом столбце что-то выбрано. Формирование третьего - от второго и т.д. Все работает без ошибок и проблем. После сохранения, закрытия и повторного открытия файла возникает эта ошибка. Данные (текст) из ячеек не пропадает, но "присвоение" ячейке ниспадающего списка пропадает. Т.е. пользователь не может повторно его редактировать. Версия Excel 2007.
1. если я сохраняю файл в версии 2003, то списки не пропадают. 2. ячейкам со списками присваивается не именованный диапазон, (Formula1) а строка, в которой больше 255 символов (Formula1 вбирает в себя до 8000 символов)
Сначала была причина в том, что я использовала Select. Исправила - ликвидировала Select вообще из макросов. Но после этого еще где-то что-то лагает и портится. Есть у кого-нибудь еще какие-нибудь варианты? Еще по моим наблюдениям... если в списках маленькое количество информации (больше 255 символов, например 800), то глюков с открытием файла не возникает. А если большое количество - 3000, 5000 - возникает ошибка.yuka
Я подниму эту тему, вдруг кому-что понадобится! Вобщем намаялась я с этими списками. Вроде пока избавилась от этой ошибки. Суть в том, что у меня [vba]
Код
'ниспадающий список Formula1="Текст1;Текст2;Текст3"
[/vba] Причина 1: При переброске из строковой переменной в Formula1, почему-то, все "," превращаются в ";". Т.е. если у меня строковая переменная равна: [vba]
Код
s="Текст1,Текст2,Текст3"
[/vba] то при создании ниспадающего списка получается: [vba]
Код
Formula1="Текст1;Текст2;Текст3"
[/vba] [Кстати, если вручную прописывать: Проверка данных->Список->Источник->"Текст1;Текст2;Текст3,Текст4". Все отображается хорошо, а через макрос...беда...))] Причина 2 Весьма странная реакция у Excel на ковычки (""). Т.е. если у Вас в строке присутствует значение: [vba]
Код
s="Текст"1";Текст"2";Текст"3"
[/vba] То при создании ниспадающего списка все складывается хорошо, а после сохранения и перезагрузке файла возникает та ошибка, по которой я подняла вопрос. Была бы возможность я бы описание ошибки отредактировала, но пропишу тут. Ошибка:
Цитата (yuka)
Удаленное свойство: Проверка данных из части /xl/worksheets/sheet1.xml
после нее все ниспадающие списки в файле, уже не отображаются в виде ComboBox, а просто в этих ячейках отсутствуют. Текст, выбранный доселе остается (сохраняется), сам список пропадает.
Я подниму эту тему, вдруг кому-что понадобится! Вобщем намаялась я с этими списками. Вроде пока избавилась от этой ошибки. Суть в том, что у меня [vba]
Код
'ниспадающий список Formula1="Текст1;Текст2;Текст3"
[/vba] Причина 1: При переброске из строковой переменной в Formula1, почему-то, все "," превращаются в ";". Т.е. если у меня строковая переменная равна: [vba]
Код
s="Текст1,Текст2,Текст3"
[/vba] то при создании ниспадающего списка получается: [vba]
Код
Formula1="Текст1;Текст2;Текст3"
[/vba] [Кстати, если вручную прописывать: Проверка данных->Список->Источник->"Текст1;Текст2;Текст3,Текст4". Все отображается хорошо, а через макрос...беда...))] Причина 2 Весьма странная реакция у Excel на ковычки (""). Т.е. если у Вас в строке присутствует значение: [vba]
Код
s="Текст"1";Текст"2";Текст"3"
[/vba] То при создании ниспадающего списка все складывается хорошо, а после сохранения и перезагрузке файла возникает та ошибка, по которой я подняла вопрос. Была бы возможность я бы описание ошибки отредактировала, но пропишу тут. Ошибка:
Цитата (yuka)
Удаленное свойство: Проверка данных из части /xl/worksheets/sheet1.xml
после нее все ниспадающие списки в файле, уже не отображаются в виде ComboBox, а просто в этих ячейках отсутствуют. Текст, выбранный доселе остается (сохраняется), сам список пропадает.yuka
"," - разделитель в аглицком Excel, ";" - в русском. VBA любит аглицкий. На ранней стадии изучения VBA я писал макрос, проверяющий, не изменил ли кто формулу на листе. Вытаскивал в VBA русскую, смотрел, нет ли изменений, если есть - в ячейку писал правильную аглицкую (в русскую она сама превращалась). Русская, даже FormulaLocal, глючила. Вероятно, надо было работать с FormulaR1C1, но это сейчас понятно.
Цитата (yuka)
почему-то, все "," превращаются в ";"
"," - разделитель в аглицком Excel, ";" - в русском. VBA любит аглицкий. На ранней стадии изучения VBA я писал макрос, проверяющий, не изменил ли кто формулу на листе. Вытаскивал в VBA русскую, смотрел, нет ли изменений, если есть - в ячейку писал правильную аглицкую (в русскую она сама превращалась). Русская, даже FormulaLocal, глючила. Вероятно, надо было работать с FormulaR1C1, но это сейчас понятно.RAN
Тяжко... Уже несколько раз сталкивалась с проблемой написания, например артикула ОАС - на русском, и OAC на английском... Видите ли нашим пользователям лень переключиться на английский и написать по-человечески. А вот то, что есть различия в знаках препинания, сталкиваюсь впервые! Ну... век живи, век учись!
Тяжко... Уже несколько раз сталкивалась с проблемой написания, например артикула ОАС - на русском, и OAC на английском... Видите ли нашим пользователям лень переключиться на английский и написать по-человечески. А вот то, что есть различия в знаках препинания, сталкиваюсь впервые! Ну... век живи, век учись!yuka
Мне кажется, Вы вводите нас в заблуждение. Уже при 256 символах выйдет ошибка при открытии. Максимальное к-во символов в строке - 255. Хоть в 2003, хоть в 2010. Вот файл со строкой проверки длиной 256 символов(кстати это Вы должны были выложить пример). В 2003 при открытии ошибки нет, но строка аккуратно обрезана до 255 символов
Мне кажется, Вы вводите нас в заблуждение. Уже при 256 символах выйдет ошибка при открытии. Максимальное к-во символов в строке - 255. Хоть в 2003, хоть в 2010. Вот файл со строкой проверки длиной 256 символов(кстати это Вы должны были выложить пример). В 2003 при открытии ошибки нет, но строка аккуратно обрезана до 255 символов KuklP
Добрый день! У меня точно такая же ошибка вылазит. Причем, если значение в ячейке A44 заменить на значение ячейки A43, то после сохранения ошибки не возникает. С длинной строк вроде бы все в порядке.
Добрый день! У меня точно такая же ошибка вылазит. Причем, если значение в ячейке A44 заменить на значение ячейки A43, то после сохранения ошибки не возникает. С длинной строк вроде бы все в порядке.andrey-ekt
Понял - упёрлись в длину строки в проверке ввода. Как обойти - не знаю. Я бы вероятно делал аналогично, но на форме с комбобоксами. Хотя может будут другие варианты решения.
Хотя в xlsb сохраняется/открывается и работает и с длиной в 347 символов. Интересно, что про это думает Microsoft...
Понял - упёрлись в длину строки в проверке ввода. Как обойти - не знаю. Я бы вероятно делал аналогично, но на форме с комбобоксами. Хотя может будут другие варианты решения.
Хотя в xlsb сохраняется/открывается и работает и с длиной в 347 символов. Интересно, что про это думает Microsoft...Hugo
сВсем привет! Та же беда! На листе одна процедура добавляет Проверку Данных / выпадающие списки. Раньше все работало. Списки длиной менее 28 и 49 символов. Когда я добавил новый список - все выпадающие списки слетели. Длина строки нового списка составила 340 символов. Без этого длинного, этой ошибки не возникает... Как все же вставить проверку данных именно такого размера...
сВсем привет! Та же беда! На листе одна процедура добавляет Проверку Данных / выпадающие списки. Раньше все работало. Списки длиной менее 28 и 49 символов. Когда я добавил новый список - все выпадающие списки слетели. Длина строки нового списка составила 340 символов. Без этого длинного, этой ошибки не возникает... Как все же вставить проверку данных именно такого размера...Константин
Предлагаемое решение: Списки с длиной строки больше 255 до сохранения работают нормально, их добавлять при открытии книги, и удалять при закрытии. Тода хотя бы остальные списки будут жить, и в тоже время - эти длинные будут в работе.
Предлагаемое решение: Списки с длиной строки больше 255 до сохранения работают нормально, их добавлять при открытии книги, и удалять при закрытии. Тода хотя бы остальные списки будут жить, и в тоже время - эти длинные будут в работе.Константин