Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
1
Excel

Экспорт из Excel определенных строк с текстом в ячейках в Word, ошибка "Метод или свойство не допустимы, поскольку буфер

17.07.2019, 17:32. Показов 2637. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые форумчане, помогите пожалуйста!

Была поставлена задача собрать в единую базу все возможные нарушения за несколько лет и при необходимости выбирая те или иные выгружать в Word в виде Справки-обзора («да» и «пусто» - выгружает, «нет» - нет).

На первом этапе на форумах по Excel VBA нашел макрос который выгружает с простой вставкой как таблица, попробовал переделать под свою задачу, была ошибка с подключением библиотеки Word, нашел макрос который проверяет подключена ли библиотека и включает ее, соединил с первым. Сначала все работало, но по мере наполнения и испытаний возникли следующие проблемы:

1. При экспорте в Word из 10-15 попыток получаются 1-2 (выгружается нормально), в остальных выдает ошибку «Run-time error ‘4605’: Метод или свойство не допустимы, поскольку буфер обмена пуст или содержит не верные данные»;

2. У меня Excel 2013, подключил библиотеку Word ошибки по библиотеке нет, у сотрудников которые будут пользоваться стоят Excel 2007 и Excel 2013 и они не разбираются где и что подключать, да им это и не надо знать. Хотел сделать проверку подключена библиотека Word или нет, если нет – подключить, но после моего Excel 2013 на Excel 2007 также выдает ошибку, даже если подключать в ручную. Может сначала как-то отключить, а потом подключить ту как у пользователя.

На втором этапе пытался при экспорте чтобы устанавливалось форматирование: Структура и Раздел - шрифт полужирным без отступа, Документ - с отступом начинается с галочки курсив, Нарушение - с отступом курсив начинается с маркера, указанного в столбце «В» (Структура), когда «-» шрифт обычный, когда «●» курсив, при этом весь шрифт в документе Times New Roman 14, не получается.

Помогите пожалуйста довести до ума, у меня не хватает знаний, т.к. макросам не учился, обычно макрорекордер или ищу по подобное на форумах и пытаюсь собирать как конструктор.

Файл с примером возможной базы прикладываю (возможно строк в несколько раз больше)

на www.planetaexcel.ru к сожалению ни кто не смог помочь (кросс https://www.planetaexcel.ru/fo... sage984021)
Вложения
Тип файла: rar Base.rar (26.0 Кб, 15 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.07.2019, 17:32
Ответы с готовыми решениями:

Импорт определенных строк из таблицы Word в Excel
Имеется документ Word с таблицей данных. Необходимо строки, в которых присутствует определенное...

Экспорт данных запроса или формы в шаблон Excel или Word
Все привет. Пришлось столкнуться с необходимость экспорта сформированных запросов и форм в заранее...

Экспорт Paradox в Word или в Excel
Здравствуйте, как экспортировать данные из Paradox в Word или Excell, подскажите пожалуйста как это...

Экспорт информации в Word или Excel
Добрый день. Кароче стоит такая задача, не знаю как решить: есть база данных в паскале, необходимо...

14
1589 / 662 / 225
Регистрация: 09.06.2011
Сообщений: 1,334
17.07.2019, 23:05 2
1. Используйте позднее связывание - в макросе есть соответствующий комент, при этом подключать библиотеку не нужно
2. Зачем использовать дополнительный столбец? - в нем используется функция, отсутвующая в 2007 экселе, достаточно проверять первый столбец на то, что в нем значение не равно "нет"

Файл образца, что должно получиться нет, но на вскидку можно поступить следующим образом:
1. Применяем фильтр - в первом столбце да и пусто
2. Копируем таблицу и вставляем в ворд
3. В ворде переводим таблицу в текст
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
18.07.2019, 12:40  [ТС] 3
Добрый день Step UA, спасибо большое, что откликнулись. Несколько комментариев по Вашим замечаниям и рекомендациям:

1. Я уже писал, что т.к. у меня не хватает знаний по VBA, я ищу подобное по возникающим вопросам на форумах и пытаюсь собирать как конструктор.
Про позднее связывание много читал на форумах, но так до конца и не разобрался, в найденном примере видел, но почему-то не работало как у меня на Excel 2013, так и у сотрудников на Excel 2007. Как подключать библиотеки я знаю, но сотрудники только умеют печатать текст, формулы для них - это уже чудо.

2. Найденный на форумах пример я попытался переделать под себя, в нем использовался по каждой сроке (их было мало) элемент управления «флажек», т.к. у меня строк много и строки будут добавляться в середине, я переделал, особенно, чтобы у сотрудников не возникали вопросы: что такое элемент управления «флажек» и как его добавлять.

А как проверить первый столбец, что в нем значение не равно «нет» и выполнять действия я не знаю. Попытался использовать, что было.

Уважаемый Step UA, если есть возможность, исправьте пожалуйста макрос, чтобы работал на Excel 2007 и на Excel 2013, при этом библиотека Word отключена, может тогда и проверку ее подключения не надо будет делать.

Предложенный Вами алгоритм выгрузки данных из Excel в Word, для меня достаточно сложная задача, и я ее сам не смогу её реализовать, особенно в Word-е перевести таблицу в тест, а потом отформатировать. Если предложите реализацию задачи еще и по своему варианту, буду очень благодарен, т.к. в первую очередь будет чему поучиться и узнать новые возможности, а также сравнить и выбрать наиболее удобный вариант.

Файл образца, что должно получиться приложил.
Вложения
Тип файла: docx Справка-обзор.docx (25.1 Кб, 9 просмотров)
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
24.07.2019, 09:01  [ТС] 4
Извините пожалуйста уважаемые форумчане, наверное данная тема Вас не заинтересовала, мне важно решить данную задачу в ближайшее время, поэтому я решил создать тему на другом форуме (кросс ).

При этом буду рад любой помощи.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,139
Записей в блоге: 4
24.07.2019, 13:10 5
я бы в подобной задаче сформировала документы в НТМ-формате, которые хорошо открываются в ворде
причем имя файла=имя раздела
Вложения
Тип файла: zip 0724.zip (12.0 Кб, 9 просмотров)
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
24.07.2019, 16:37  [ТС] 6
Добрый день, shanemac51, спасибо что ответили, я немного разбираюсь в Excel, поэтому, когда руководство поставило задачу, ничего другого придумать и не мог. С документами в НТМ-формате никогда не работал, даже не знаю, как к ним подступиться.

Если не затруднить, поясните, пожалуйста, что Вы имеете ввиду и как Вы это сделали. В архиве только документы Word. Как в таком случае вести базу, как ее пополнять, и как выгружать в Word необходимый перечень документов, предварительно выбрав и отметив их. При этом в результате должен быть сформирован один единый структурированный документ в Word «Справка-обзор», а любой сотрудник (не опытный) должен суметь добавлять в базу и выводить обобщенную справку. Как сказало руководство, чтобы была «одна кнопка». Изначально составляется громоздкий отчет, где указаны замечания и их описание, потом выбираются существенные замечания, которых нет в базе, добавляются и из базы выгружается справка.

Если есть возможность, приложите, пожалуйста, пример. Если предложенный Вами вариант будет удобен и у меня получиться разобраться, а также написать подробную инструкцию, то это был бы выход из положения.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,139
Записей в блоге: 4
24.07.2019, 17:55 7
Цитата Сообщение от apfu Посмотреть сообщение
один единый структурированный документ в Word «Справка-обзор
это вряд ли получится --ворд не очень устойчив при большом количестве страниц
так-что информация должна зранится или в ексель(привычнее) или в аксесс(удобнее) для поиска и обработки

ворд только для РАСПЕЧАТКИ -выбранного
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
25.07.2019, 09:29  [ТС] 8
Уважаемая Галина, согласен с Вами, что информация должна хранится в ексель, т.к. это действительно привычнее для пользователей (сотрудников) для поиска и обработки. При этом все же выбранные строки необходимо выгружать в ворд. По практике объем документа составляет до 40 страниц, я думаю это не очень большое количество страниц чтобы ворд был не устойчив.

Если Вы можете реализовать решение данного вопроса, помогите пожалуйста, поправьте, что необходимо в моем файле, или может быть Вы предложите свое, более профессиональное решение.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,139
Записей в блоге: 4
25.07.2019, 12:15 9
apfu,
больше всего меня смущает это сообщение в вашем коде

"Справка-обзор создана в приложении"
& Chr(10) & """" & "Microsoft Word." & """"
& Chr(10) & Chr(10) & "Отредактируйте и сохраниете файл со Справкой"
& Chr(10) & "в удобное для Вас место."

а получить единый файл несложно --убрать 2 строки из кода
Вложения
Тип файла: doc we000.doc (73.4 Кб, 6 просмотров)
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
25.07.2019, 15:43  [ТС] 10
"а получить единый файл несложно --убрать 2 строки из кода" из какого кода и где???

Галина, у Вас получилось то что надо, только я так и не понял как Вы это делаете, в Вашем файле ни кнопки ни макросов нет. Поделитесь секретом пожалуйста, если возможно поподробнее, и приложить файл с макросом!

Сообщение в коде, которое Вас смущает, было создано специально, т.к. предполагалось, что сотрудник, после формирования Справки (как болванка-черновик, заготовка), должен ее оформить до конца: заголовок, введение, подписи, форматирование, проверить нумерацию пунктов (т.к. он может выбрать из Базы не все пункты, а только те, которые нужны) и по необходимости внести те или иные изменения. Сегодняшняя задача - это начальный этап, как минимум, но основной (95%), чтобы уже можно работать и использовать Базу. Далее я планировал заняться уже эстетикой и наведением красоты.
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
30.07.2019, 09:19  [ТС] 11
Уважаемые форумчане, задача так и не решена, помогите пожалуйста!

Что необходимо исправить в макросе, чтобы при экспорте в Word не выдавало ошибку «Run-time error ‘4605’: Метод или свойство не допустимы, поскольку буфер обмена пуст или содержит не верные данные», а также чтобы не было необходимости подключать библиотеку Word при использовании сотрудниками у которых стоят Excel 2007 и Excel 2013.

Мне важно решить данную задачу в ближайшее время, т.к. с 29.07.2019 по 02.08.2019 предполагалось, что сотрудники начнут ей пользоваться. На форумах где я просил помощи и разместил данную тему (кросс: https://www.planetaexcel.ru/fo... sage984021) окончательного решения так и не было найдено.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,139
Записей в блоге: 4
30.07.2019, 10:51 12
Лучший ответ Сообщение было отмечено apfu как решение

Решение

предлагаю вариант через НТМ-формат
распакуйте архив в каталог C:\TEMP
Вложения
Тип файла: zip Base01.zip (41.8 Кб, 8 просмотров)
1
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
30.07.2019, 12:36  [ТС] 13
Здравствуйте уважаемая Галина, спасибо Вам огромное, буду разбираться, очень хочется понять, как Вы это сделали.

Единственное при запуске на Excel 2007 возникла ошибка по библиотеке Word (у Вас 14, наверное 2010 офис), убрал галочку и все запустилось. Можно ли как-то сделать, чтобы на разных офисах библиотеке Word программно отключалась а потом включалась того офиса где запускается файл.

Еще вопрос, по тексту получаются нижнее подчеркивание "_", как его убрать, а табуляцию оставить:
"2. По результатам финансовой деятельности
_ убыточность:
• _ по производственной"

И, наверное главный вопрос, что за цифры в столбце "Р", всем их смысл и применение, и как они образуются?

Добавлено через 26 минут
Галина, еще раз огромное спасибо, макрос работает за доли секунды, просто супер!

Но прошу прощения за назойливость, только сейчас заметил, Word создается как Web-документ и его потом необходимо пересохранить как обычный документ-Word. А можно его сразу сохранять в документ-Word или после выполнения макроса открывать и в диалоговом окне предлагать сохранить в документ-Word, это было бы круто. Или как минимум после выполнения макроса его открыть, а в самом верху я допишу как сохранить и в каком виде.

И еще вопрос, файл должен обязательно лежать в каталоге C:\TEMP или его можно поместить в любую папку? Если обязательно в каталоге C:\TEMP, то как изменить на любую папку?
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,139
Записей в блоге: 4
30.07.2019, 13:07 14
многое можно, просто в НТМ подобные вещи проще делать
я хотела уточнить у вас некоторые вопросы голосом(по скайпу), но вы не вышли на контакт

--
потом у меня была срочная работа и я, каюсь, забыла про вас

Добавлено через 6 минут
Цитата Сообщение от apfu Посмотреть сообщение
каталоге C:\TEMP
в нем удобно формировать, а пересохранить вы можете куда угодно, только надо переключить и формат сохранения
будет время --сформирую прямо в ворд

отключить ворд --я видимо забыла
подчеркивание я ввела в предыдущей версии, чтобы правильно формировался предыдущий вариант(по порциям), когда из текста строки я формировала имя порции
0
0 / 0 / 0
Регистрация: 25.11.2014
Сообщений: 11
30.07.2019, 14:19  [ТС] 15
Галина, если у Вас будет время и Вы сможете доделать мои вопросы, было бы очень здорово, т.к. писать громоздкую пошаговую инструкцию для первого класса (в т.ч. со скриншотами), которую никто читать не будет, и бегать от сотрудника к сотруднику раз за разом повторно объяснять как это делается достаточно мучительно.
0
30.07.2019, 14:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.07.2019, 14:19
Помогаю со студенческими работами здесь

Экспорт данных из ListBox в Word или Excel
Всем привет, есть ListBox в который считывает информацию из талицы в которую вносятся данные,...

Экспорт в Word из DataGridView с рисунками в ячейках
Как экспортировать данные из Грида если в ячейках имеются рисунки? Добавлено через 1 минуту...

Экспорт в Excel. Перенос текста в объединенных ячейках
Добрый день приведите пожалуйста пример (кодом) экспорта в Excel по нажатию кнопки... У меня был...

Запись формул, находящихся в определенных ячейках Excel, в код макроса
Добрый день уважаемы форумчане. Вопрос: Есть большое количество формул на листе, как...

Ошибка. Объект не поддерживает это свойство или метод
Не могу исправить.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru