В конце темы приведен текст макроса копирующего гиперссылку в Word
Копирование гиперссылки в WORD
Почему диагональные границы в ячейке, вставленные макросом, влияют на верхнюю ячейку
|
04.05.2021 21:45:26
(я не хотел в вопросе увеличивать объем поэтому сосредоточился только на одном варианте который собственно мне и мешал - ну если кратко для порядка то у меня имеется анализатор листов который помечает проблемные ячейки вот такими диагональными границами, чтобы не менять заливку, или шрифты и прочее - как правило этот эффект с границами не очень заметен ибо большая часть проблемных ячейки исправляются прямо в них, но вот попались варианты исправления когда правильную верхнюю ячейку протягивают по неправильной вот и проявился эффект ) |
|||
|
|
|
Почему диагональные границы в ячейке, вставленные макросом, влияют на верхнюю ячейку
|
04.05.2021 21:09:07
2. Скопируйте в произвольное место ячейку D3 до! выполнения макроса сдвиньте с нее курсор - вы увидите в наличии все границы 2.1 проверьте наличие границ у ячеек D3,D4 (ПКМ->формат ячеек->границы)- вы увидите что у обоих ячеек есть все границы по контуру 3. Выполните макрос 3.1 проверьте наличие границ у ячеек D3,D4 (ПКМ->формат ячеек->границы)- вы увидите что у обоих ячеек есть все границы по контуру (да точно так как и в п 2.1) 4. Снова скопируйте в произвольное место ячейку D3, сдвиньте с нее курсор и вы не увидите нижней границы у вновь скопированной ячейки 5) "выполните макрос, отметьте Д3 принудительно установите в ней нижнюю границу, копируйте, что видно?" Если загляните в макрос то увидите там закоментированную строчку Cells(3, 4).Borders(xlEdgeTop).LineStyle = xlContinuous Как нетрудно догадаться эта строчка принудительно устанавливает нижнюю границу в D3 для компенсации обнаруженного эффекта И последнее Я вообще спросил в первом посте может ли кто-то объяснить этот эффект. То мне начинают советовать чего то не делать, что я и так не делаю, то начинают говорить, что мол у меня дефекты в логике, то что я чуть что эксель обвиняют не желая даже немного подумать Ну и зачем это? Если по существу нечего ответить ну так и вообще говорить ничего не надо |
|||
|
|
|
Почему диагональные границы в ячейке, вставленные макросом, влияют на верхнюю ячейку
|
04.05.2021 20:32:09
Уважаемый гуру! Я далеко не "сразу" обвинил Эксель, да и не обвиняю его
Я порылся в интернетах, обнаружил, что эффект наличия границы в свойствах и отсутствия ее при копировании ячейки иногда встречается, попроводил всякие эксперименты на нескольких версиях Excel и только потом написал этот пост, приложив файл и описав ситуацию.
|
|||
|
|
|
Почему диагональные границы в ячейке, вставленные макросом, влияют на верхнюю ячейку
|
04.05.2021 20:16:39
|
|||
|
|
|
Почему диагональные границы в ячейке, вставленные макросом, влияют на верхнюю ячейку
|
04.05.2021 20:13:56
1) В своем коде я не трогаю границ D3 и даже не трогаю верхнюю границу D4 2) Даже если бы я там чего то тронул все равно остается неясность почему Excel говорит, что нижняя граница есть но не отрисовывает ее? |
|||
|
|
|
Почему диагональные границы в ячейке, вставленные макросом, влияют на верхнюю ячейку
Макрорекордер. Неправильно формируется макрос при сбросе цвета ярлыка листа
Перенос гипперссылки на другой лист/книгу
|
04.04.2021 16:42:58
Цитата - не бездумная копия [МОДЕРАТОР]
Нет не совсем так Я наверное недостаточно подробно пояснил в первом своем посте Речь идет не о ссылка в формулах, а о гиперссылках привязываемых к ячейке Гиперссылки привязываемые к ячейка, можно разделить на фиксированные и динамические - Фиксированные это гиперссылки привязываемые вручную прямо на листе (ПКМ->ссылка) или в VBA функцией Hyperlinks.Add Эти ссылки видны в коллекции Hyperlinks - Динамические гиперссылки это ссылки формируемые функцией ГИПЕРССЫЛКА, причем сама эта функция может сложным образом входить в другую функцию с выборами, сложно формируемыми адресами, указывать на другие листы или книги и прочее. Кстати говоря Эксел для таких сложных фуекций даже не сообразит формат поменять на тот, который используется для гиперссылок. Эти ссылки не видны в коллекции Hyperlinks Так вот при копировании такого листа в новый лист нового файла ссылки в формулах с этими гиперссылки будут смотреть на источник и если вы разорвете связи то в ячейках останется только текстовые значения а гиперссылки удаляться. Т.е. выражения "заморозятся данные" относится не к самой гиперссылки (линку) а к тому, вы увидите в ячейке Я прикрепил файл для иллюстрации Однако я нашел способ такого копирования, а точнее получения адреса вот такой динамической ссылки. Заключается он в том, что ячейку надо скопировать в Word (радость то какая - при такой операции Word вычисляет таки актуальный адрес ссылки и превращает ее в фиксированный), далее проверить коллекцию Hyperlinks уже объекта Word Конечно в таком виде работает довольно таки медленно, но при желании можно усовершенствовать, например объект wdApp сделать статическим и не каждый раз создавать/разрушать, это весьма прилично ускорит работу, если надо много ячеек обработать Проверено на Excel/Word 2019 (да и не забыть подключить Microsoft Object Library )
Изменено: - 04.04.2021 22:44:10
|
|||
|
|
|
Перенос гипперссылки на другой лист/книгу
|
24.03.2021 18:48:03
Здравствуйте!
Есть лист с довольно сложно генерируемыми гиперссылками Пример формулы -
Формул много, они разнообразны, ячейки из которых конструируется формула в течении дня могут поменяться, в них могут собраться другие имен страниц и т.д. (сам эти ячейки тоже вычисляемые) В конечном итоге желательно лист насыщенный такими формулами периодически переносить в другую книгу, без привязки к источнику, отправлять по почте и прочее (т.е. просто скопировать то лист можно, но останутся связи с исходным файлом, если же скопировать только значения то сгенерированные формулами гиперссылки потеряются) Т.е. в перенесенном листе формулы уже не требуются но требуется оставит результат их работы т.е. гиперссылки может кто-то подсказать как это сделать? |
|||
|
|
|
Проблема с онлайн помощью Excel 2013, Медленное и ненадежное срабатывание онлайн помощи при нажатии F1
|
11.08.2020 19:21:54
Тоже самое с 2016 версией
А вот с 2010 интересно - ранее в ней была возможность переключения между офлайн и онлайн справками а сейчас при переключении на онлайн пишет, что мол пользуйтесь автономной справкой а онлайн не работает (...Поддержка Excel 2010 завершается Перейдите на Microsoft 365, чтобы работать удаленно с любого устройства и продолжать получать поддержку.) Совершенно нормально работает online помощь по VBA в 2019-ый - все быстро и как ожидалось Черт его знает - то ли временный глюк какой-то, то ли что то вроде желания пересадить на 2019 (с другой стороны при все уважении к сообществу разработчиков в Office не думаю что это такой уж большой сегмент среди потребителей) |
|
|
|
|
Проблема с онлайн помощью Excel 2013, Медленное и ненадежное срабатывание онлайн помощи при нажатии F1
|
11.08.2020 14:41:34
Здравствуйте!
Ситуация Комп с установленными W10 pro и MS Office 2013. Все обновления сделаны. Никаких внешних антивирусов не установлено При попытке получить в редакторе помощь по нажатию F1 какая то явно неправильная работа (не зависит от файла, не зависти от браузера та же истоия что в Edge что в Хроме, не зависит от включенного-отключенного Defender-а) То находит слово то не находит, то открывает прямо верхний узел с документацией то вот этот (Ключевые слова (Visual Basic для приложений)) иногда впрочем открывет неужную страницу Второй момент - чаще всего все это происходит очень долго несколько минут с блокированием работы Excel (что немного намекает, что дело не в браузере) Еще такой мелкий момент - при нажатии F1 (в редакторе VBA) сразу эксель переключается на листы с даннымми Сама по себе онлайн-справка Экселя (т.е. справка на листах по формулах) работает совершенно нормально Может кто то что то подсказать? |
|
|
|
|
Перенос (нежелательный) форматов на ячейку с формулой из влияющих ячеек
|
26.08.2019 21:19:09
Немного разобрался. Может кому то будет полезным
Описанная ситуация имеет родственное отношение к распространенной ситуации вводу текстовых данных дат и автоматической конвертации их в дату Суть в том, что все эти правила (в т.ч. и описанная мной ситуация ) видимо вшиты в Эксел где то глубоко. Чаще всего сталкиваются с нежелательными преобразованиями текстовых данных вроде того как при вводе в ячейу текста вида 2-3-2015 получаем дату и формат ячейки меняется с общего на дату Описано подробно тут Вся эта эксельная автоматика таким образом распространяется на более сложные ситуации чем описано по вышеприведенной ссылке. Существенно, что она срабатывает когда в ячейку что то вводится (прямо данные или формула или даже происходит изменение цвета заливки или цвета шрифта при условном форматировании!) и формат в этой целевой ячейке выставлен общий. Таким образом если мы поставим в ячейках с формулой формат числовой то эксель уже не будет менять там формат Я попробовал несколько вариантов и похоже все подтверждается Конечно неплохо бы где-то найти подробное описание всей этой автоматики, но "хватит и пяти"
Изменено: - 26.08.2019 21:23:49
|
|
|
|
|
Перенос (нежелательный) форматов на ячейку с формулой из влияющих ячеек
Перенос (нежелательный) форматов на ячейку с формулой из влияющих ячеек
|
25.08.2019 21:38:50
Здравствуйте!
Суть проблемы (Excel 2010) - в ячейку с формулой автоматически переносятся форматы из влияющих ячеек Предположим у нас очищены форматы во всей таблице (см. приложенный файл) В ячейке B7 формула - =СУММ(A3:A5) В ячейке B8 формула - =A3+A4+A5 Если я установлю формат в ячейке A3 в денежный, то при установке курсора в ячейку B7 и Enter (ну как бы ввели формулу) формат ячейки B7 меняется на денежный. Тоже самое и для ячейки B8. Но!!! Если я сброшу все форматы в таблице и снова такое проделаю но уже я ячейкой A4, то формат в ячейке B7 поменяется а ва ячейке B8 нет!!! Очистка форматов в ячейках A3:A5 и дальнейшем "редактировании" формул в B7 и B8 уже не меняет формат в B7 и B8 Тоже самое произойдет при установке формата числовой. Он тоже передет в ячейки И Ситуация еще более сложная так так зависит еще и от последовательности установок форматов. Например, если я установлю формат в A3 числовой и щелкну по B7 то в B7 установится фомат числовой, а если затем я установлю формат в A3 денежный и щелкну по B7 то в B7 останется фомат числовой Однако если я установлю формат в A3 числовой а затем поменяю его на денежный и щелкну по B7 то в B7 установится фомат денежный Может ли кто-то обьяснить такое поведение Экселя и где это отключить? |
|
|
|
|