Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Обновить список ComboBox в форме
 
Смог решить эту проблему другим методом.
Код
Private Sub ComboBox1_Change()
Range("МАКР_ЛДСП_ВЫБ1").Offset(0, 0) = ComboBox1.Text
Лист1.Calculate
ComboBox2.Value = ""
End Sub

Private Sub ComboBox1_AfterUpdate()
ComboBox2.RowSource = Range("МАКР_ЛДСП").Offset(0, 0)
В этом случае все работает. Но хотелось бы все таки попроще - в одном событии.
Обновить список ComboBox в форме
 
Добрый день.
У меня в форме есть 2 КомбоБокса. В первом RowSource является неизменным и постоянным. А вот во втором он должен меняться в зависимости от первого.
В RowSource вставляются именованные диапазоны. Для второго Комбобокса диапазон вычисляется в ячейке листа по сложной формуле (в ней учитывается масса условий).
Код у меня следующий:
Код
Private Sub ComboBox1_Change()
Range("МАКР_ВЫБ1").Offset(0, 0) = ComboBox1.Text
Лист1.Calculate
ComboBox2.Value = ""
ComboBox2.RowSource = Range("МАКР_ВЫБ2").Offset(0, 0)

В ячейке МАКР_ВЫБ2 как раз и находится формула.
С КомбоБокс ActiveX это все благополучно работает (только используется ListFillRange), а вот с формой ошибка 308 все время выпадает... Пробовал значение проверять (добавлял на форме Label1 и в коде Label1.Value = Range("МАКР_ВЫБ2").Offset(0, 0) ) - значение ставится. Все перерыл - не могу ответа найти. Не работает конкретно эта строка с RowSource (при ее удалении макрос срабатывает)
Слетают комментарии с картинками в Excel2010
 
Вопрос не в том, как создать резервную копию, а в том, как избежать последствий. С файлом работают тысячи людей в разных городах и любой из них "случайно" стерев комментарий тем самым "убьет" рабочий файл.
Резервная копия не решает вопрос вообще никак. Она позволяет просто открыть более старый файл без внесенных изменений. А внеся изменения (удаление комментария) получается нельзя сохранить файл, потому что при открытии все равно все комментарии слетят. Вот я и задаю вопрос - может кто знает, как заставить "автоматически" вычищать всё лишнее из файла vmlDrawing1.vml. По сути просто записывая его с нуля (Excel при сохранении его переписывает, но сохраняет в нем историю изменений).
Слетают комментарии с картинками в Excel2010
 
Резервное копирование было, но, к сожалению я сделал много нововведений и не хотелось тратить 3 дня, чтобы все повторить (все время комментарии только добавлялись и файл открывался нормально, а в последний момент я удалил ненужную строку и ппц). К тому же теперь я знаю, что может повлиять на обрушение файла. Вот и хотелось бы предотвратить это в дальнейшем. Поэтому если бы был способ переписывать этот файл заново (макросом, например, или сторонним скриптом), то было бы проще.
Слетают комментарии с картинками в Excel2010
 
Проблема в том, что в самом приложении нет решения этого глюка. В "эти дебри" мне пришлось залезть, после того как у меня слетел серьезный рабочий файл и мне пришлось его восстанавливать по крупицам.  
Слетают комментарии с картинками в Excel2010
 
Добрый день
В Excel2010 возникает проблема с примечаниями. Опишу весь процесс:
В структуре файла (открывается архиватором) есть файл отвечающий за примечания на листе vmlDrawing1.vml (находится в xl\drawings\). В нем прописана информация по каждому примечанию на листе (координаты, размер, формат, фон, в т.ч. картинка). Картинкам присваивается ID, а сами картинки прописываются в файле vmlDrawing1.vml.rels - находится в xl\drawings\_rels\). При каждом добавлении/изменении любого примечания файлы обновляются, ID переназначаются и дописываются (o:relid):
<v:fill o:relid="rId4" o:relid="rId3" o:title="1" color2="#ffffe1" size="0,0"
Также при изменении ширины,высоты ячеек или их добавлении переписываются координаты и привязка к ячейкам (ячейка и сдвиг левого верхнего угла и правого нижнего угла). Вот из за этой привязки к ячейкам и происходит сдвиг и изменение примечаний, но речь сейчас не об этом.
При удалении примечания (в данном примере оно было первым) o:relid всех последующих примечаний сдвинулось на единицу вниз (было 4, стало 3). Также перезаписался файл  vmlDrawing1.vml.rels и из него исчезло упоминание о ID4 - в следствие чего файл при открытии не может прочитаться. Приходится вручную вычищать vmlDrawing1.vml удаляя из него лишние ID и оставляя последнее. После этого файл открывается нормально. Также, как вариант можно дописать строчку в файл vmlDrawing1.vml.rels, но когда примечаний больше сотни - это процесс реально становится муторным...
Есть еще вариант, но тоже не совсем удачный - при удалении примечания нужно создать еще одно где либо на одном листе (главное, чтоб общее количество примечаний с картинками не уменьшалось).
Вопрос - может есть способ (может макрос) который перезаписывал бы файл vmlDrawing1.vml
Изменено: filan001 - 11 Янв 2019 11:30:02
Страницы: 1
Наверх