mrYOGA 0 / 0 / 0 Регистрация: 03.06.2014 Сообщений: 8 |
||||||
29.08.2020, 08:42 [ТС] |
4 |
|||||
Огромное спасибо за оперативность. Спасибо Narimanych за новый способ взаимодействия со 2ой книгой. Через ADO никак не мог понять, как перенастроить под свои нужды. Теперь он работает как я это описывал. Единственная просьба, посмотреть текущий код, может в нем можно что-то оптимизировать? Или что-то лишнее написал? Буду рад комментариям. Макрос: Кликните здесь для просмотра всего текста
Из задумок: для каждого файла, массив с перечнем столбцов вынести в отдельные переменные и поместить в начало скрипта для удобства редактирования, это также позволит убрать необходимость менять количество шагов цикла, сделать их динамичными от размерности массива. Вложения
0 |
boom Пользователь Сообщений: 87 |
Здравствуйте, подскажите макрос для добавления значений в ячейки закрытой книги? например из одной открытой книги скопировать значения активной ячейки в первую пустую ячейку закрытой книги. |
ikki Пользователь Сообщений: 9709 |
я вижу один способ: макросом, незаметно для юзера, открыть эту закрытую книгу, записать нужное значение в нужное место, закрыть книгу с сохранением данных. правда, если книги тесно связаны, возможны сюрпризы (в виде обновления связей, пересчетов результатов формул и т.п.) и юзер сойдет с ума, а вас посодют в тюрьму — за причинение тяжких. подумайте ещё раз — оно вам надо? фрилансер Excel, VBA — контакты в профиле |
boom Пользователь Сообщений: 87 |
Надо…. основная книга, это хранилище макросов и так далее, остальные книги будут хранить только информацию. 32233 |
Hugo Пользователь Сообщений: 23253 |
Чтоб не обновлялись данные — можно эту книгу сперва переименовать, потом открыть, добавить данные, закрыть, переименовать назад. |
ikki Пользователь Сообщений: 9709 |
да, имхо, идея вполне жизнеспособная ) в общем… поковыряться придётся. boom, если Вам всего вышенаписанного (Hugo и мной) будет недостаточно, то могу попробовать слепить такой макрос. но — в понедельник. раньше — никак не могу. фрилансер Excel, VBA — контакты в профиле |
boom Пользователь Сообщений: 87 |
Я уже начал экспериментировать Еще один вопрос а можно открыть книгу, что бы пользователь не догадывался, что она открывается, а то application.visible = false выдает открытие excel |
LightZ Пользователь Сообщений: 1748 |
Sub ViOpen() Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете? |
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
{quote}{login=boom}{date=12.05.2012 10:38}{thema=}{post}Еще один вопрос а можно открыть книгу, что бы пользователь не догадывался, что она открывается, а то application.visible = false выдает открытие excel{/post}{/quote}Может быть это поможет? |
boom Пользователь Сообщений: 87 |
Юрий, ничего не происходит, у меня Win7, office 2007. 44665 |
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
|
boom Пользователь Сообщений: 87 |
Я спросил альтернативу application.visible |
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
А что — Application.ShowWindowsInTaskbar = False не помогает? Application.ScreenUpdating у Вас используется? |
boom Пользователь Сообщений: 87 |
Что с ним, что без, при попытке скрытно открыть книгу вылезает окно excel на некоторое время потом скрывается, цель — что бы пользователь работал только с формой и вообще не видел книги, которые открываются макросами для добавления данных. |
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
Если установить в True — что происходит? |
boom Пользователь Сообщений: 87 |
|
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
Тогда ничем не могу помочь: у меня ХР — всё нормально отрабатывает (не мигает). |
Hugo Пользователь Сообщений: 23253 |
Похоже, что Application.ScreenUpdating — неведома зверушка… |
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
|
boom Пользователь Сообщений: 87 |
{quote}{login=Hugo}{date=13.05.2012 12:14}{thema=}{post}Похоже, что Application.ScreenUpdating — неведома зверушка… :){/post}{/quote} |
Hugo Пользователь Сообщений: 23253 |
Тогда странно — всем помогает… Только в панели мигают эти WindowsInTaskbar, если не отключены. |
boom Пользователь Сообщений: 87 |
Пробовал по разному. А возможно при application.visible = 0 отобразить только определенную книгу? |
ikki Пользователь Сообщений: 9709 |
имхо, копать здесь: пс. решения тоже пока не нашел. фрилансер Excel, VBA — контакты в профиле |
R Dmitry Пользователь Сообщений: 3103 Excel,MSSQL,Oracle,Qlik |
#23 13.05.2012 01:37:31 Может поможет…. Прикрепленные файлы
|
|
boom Пользователь Сообщений: 87 |
интересненько |
R Dmitry Пользователь Сообщений: 3103 Excel,MSSQL,Oracle,Qlik |
#25 13.05.2012 10:13:03 {quote}{login=boom}{date=13.05.2012 02:15}{thema=}{post}интересненько
|
|
Дмитрий, для меня ваше решение пока сложновато, пробовал переделать ваш макрос под последнюю пустую ячейку, но никак |
|
LightZ Пользователь Сообщений: 1748 |
boom мой макрос Вам не подошел? Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете? |
boom Пользователь Сообщений: 87 |
Я же написал, что остановился пока на нем Повторный вопрос: при application.visible = false можно прописать параметр true только для определенной книги? |
LightZ Пользователь Сообщений: 1748 |
Нет Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете? |
Юрий М Модератор Сообщений: 60585 Контакты см. в профиле |
#30 13.05.2012 12:22:44 Windows(«ВтораяКнига.xls»).Visible = False |
копирование в закрытую книгу |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Как скопировать данные с защищенного листа?
На чтение 3 мин. Просмотров 1k. Опубликовано 23.05.2021
Предположим, вы получили файл Excel от другого человека, рабочие листы которого защищены пользователем. Теперь вы хотите скопировать и вставить необработанные данные в другую новую книгу. Но данные на защищенном листе не могут быть выбраны и скопированы из-за того, что пользователь снял флажки «Выбрать заблокированные ячейки» и «Выбрать разблокированные ячейки» при защите рабочего листа. В этой статье я расскажу о некоторых быстрых приемах решения этой задачи в Excel.
Копировать данные с защищенного листа с помощью кода VBA
Копировать данные с защищенного листа с помощью поля имени
Вкладка Office Включает редактирование и просмотр с вкладками в Office и делает вашу работу намного проще …
Подробнее … Бесплатная загрузка …
Kutools for Excel решает большинство ваших проблем и увеличивает ваши Производительность на 80%.
- Повторное использование чего угодно: добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
- Более 20 текстовых функций: извлечение числа из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
- Инструменты слияния: несколько книг и листов в одну; Объединить несколько ячеек/строк/столбцов без потери данных; Объедините повторяющиеся строки и суммируйте.
- Инструменты разделения: разделение данных на несколько листов в зависимости от значения; Из одной книги в несколько файлов Excel, PDF или CSV; Один столбец в несколько столбцов.
- Вставить пропуск скрытых/отфильтрованных строк; Подсчет и сумма по цвету фона; Массовая отправка персонализированных писем нескольким получателям.
- Суперфильтр: создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделе, дню, частоте и т. Д. Фильтр жирным шрифтом, формулами, комментарием …
- Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.
Подробнее … Бесплатная загрузка …
->
Копировать данные из защищенных лист с кодом VBA
Следующий простой код может помочь вам скопировать данные в активный защищенный лист, сделайте следующее:
1 . Активируйте защищенный лист, с которого вы хотите скопировать данные, а затем удерживайте клавиши ALT + F11 , чтобы открыть окно Microsoft Visual Basic для приложений , затем нажмите клавиши Ctrl + G , чтобы открыть окно Немедленное , а затем скопируйте приведенный ниже код скрипта в окно Немедленное . :
Activesheet.Cells.Select
2 . И нажмите клавишу Enter , затем вы должны нажать Ctrl + C , чтобы скопировать данные листа, а затем активировать другую книгу или новый лист, куда вы хотите вставить этот лист и поместите курсор в ячейку A1, а затем удерживайте Ctrl + V , чтобы вставить его.
Копировать данные с защищенного листа с помощью поля имени
Если вам нужно скопировать определенный диапазон данные из защитного листа, вы можете применить Name Box , чтобы завершить эту работу.
1 . Введите диапазон ячеек (D2: H13) непосредственно в поле Имя и нажмите клавишу Enter , см. Снимок экрана:
2 . После нажатия клавиши Enter , очевидно, ничего не происходит. Пожалуйста, ничего не делайте, просто нажмите Ctrl + C , чтобы скопировать конкретный диапазон, после чего вы увидите, что данные в диапазоне D2: H13 были окружены пунктирной линией, см. Снимок экрана:
3 . Затем нажмите Ctrl + V , чтобы вставить его на другой лист, где вы хотите скопировать данные.
Как скопировать данные с защищенного листа?
Предположим, вы получили файл Excel от другого человека, рабочие листы которого защищены пользователем, теперь вы хотите скопировать и вставить необработанные данные в другую новую книгу. Но данные на защищенном листе не могут быть выбраны и скопированы из-за того, что пользователь снял флажки «Выбрать заблокированные ячейки» и «Выбрать разблокированные ячейки» при защите рабочего листа. В этой статье я расскажу о некоторых быстрых приемах решения этой задачи в Excel.
Скопируйте данные с защищенного листа с кодом VBA
Копирование данных с защищенного листа с помощью поля имени
Скопируйте данные с защищенного листа с кодом VBA
Следующий простой код может помочь вам скопировать данные в активный защищенный лист, сделайте следующее:
1. Активируйте защищенный лист, с которого вы хотите скопировать данные, а затем удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно, затем нажмите Ctrl + G Ключи для открытия Немедленная окно, а затем скопируйте приведенный ниже код сценария в Немедленная окна:
Activesheet.Cells.Select
2. И нажмите Enter клавишу, затем нажмите Ctrl + C , чтобы скопировать данные листа, а затем активировать другую книгу или новый лист, куда вы хотите вставить этот лист, и поместите курсор в ячейку A1, а затем удерживайте Ctrl + V чтобы вставить его.
Копирование данных с защищенного листа с помощью поля имени
Если вам нужно скопировать определенный диапазон данных с листа защиты, вы можете применить Имя Box чтобы закончить эту работу.
1. Введите диапазон ячеек (D2: H13) в поле Имя Box напрямую и нажмите Enter ключ, см. снимок экрана:
2. После нажатия Enter ключ, видимо ничего не происходит. Пожалуйста, ничего не делайте, просто нажмите Ctrl + C чтобы скопировать определенный диапазон, вы увидите, что данные в диапазоне D2: H13 были окружены пунктирной линией, см. снимок экрана:
3, Затем нажмите Ctrl + V чтобы вставить его на другой лист, куда вы хотите скопировать данные.
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (27)
Оценок пока нет. Оцените первым!