Преобразование текста в таблицу или таблицы в текст
Для преобразования текста в таблицу или наоборот щелкните знак абзаца Показать или скрытьна вкладке Главная, чтобы увидеть, каким образом текст расположен в документе.
Преобразование текста в таблицу
Чтобы отметить границы столбцов, в которых вы хотите расположить текст, вставьте знаки разделения, например запятые или знаки табуляции.
Примечание: Если в тексте есть запятые, в качестве разделителей используйте знаки табуляции.
Обозначьте границы строк будущей таблицы с помощью знаков абзаца.
В следующем примере с помощью знаков табуляции и абзаца текст разбивается на таблицу с 3 столбцами и 2 строками.
Выделите текст, который вы хотите преобразовать, а затем щелкните Вставка > Таблица > Преобразовать в таблицу.
В окне Текст в таблицу задайте параметры.
В разделе Размер таблицы убедитесь в том, что указанные числа соответствуют требуемому количеству столбцов и строк.
В разделе Автоподбор ширины столбцов выберите вид таблицы. Word автоматически подбирает ширину столбцов таблицы. Если вам нужны столбцы другой ширины, выполните одно из перечисленных ниже действий.
Задать ширину всех столбцов
В поле Фиксированная ширина столбца введите или выберите необходимое значение.
Изменить размер столбцов в соответствии с шириной текста в каждом столбце
Автоподбор по содержимому
Автоматически менять размер таблицы при изменении ширины доступного пространства (например, режим веб-документа или альбомная ориентация)
Автоподбор по ширине окна
В разделе Разделитель текста выберите использованный в тексте знак разделителя.
Нажмите кнопку ОК. Преобразованный в таблицу текст должен выглядеть подобным образом:
Преобразование таблицы в текст
Вы выберите строки или таблицу, которые нужно преобразовать в текст.
На вкладке Макет в разделе Данные нажмите кнопку Преобразовать в текст.
В окне Таблицу в текст в разделе Разделитель выберите знак разделения, который будет использоваться вместо границ столбцов. Строки будут разделены знаками абзаца.
Как вписать текст в ячейку таблицы Word?
В программе Word можно оформить текст в соответствии с заданными требованиями, а также можно создавать сложные таблицы. Создать сложную таблицу в Word в принципе не сложно. Куда сложнее бывает настроить текст, чтобы он помещался в созданные ячейки таблицы, что мы сейчас и рассмотрим.
Таблицы в MS Office Word отличаются от таблиц MS Office Excel. Excel позволяет делать не только различные расчеты, но и строить графики по результатам расчетов. В процессе работы с ним возникает много вопросов и практически все ответы можно найти на форуме программистов и сисадминов CyberForum.ru http://www.cyberforum.ru/ms-excel/. Там можно задать любой вопрос и прочитать другие обсуждения по Office Excel, которые, возможно, помогут сразу решить ваши проблемы.
Для примера создадим таблицу в Word на несколько ячеек и напишем в ней произвольный текст. При этом таблица у нас будет иметь фиксированный размер: высота ячеек 0,5 мм, ширина ячеек 40 мм. Высота ячеек во второй строке будет 0,8 мм, там у нас будет записан текст в две строки.
Напишем в ячейках следующий произвольный текст:
— Произвольный текст;
— Текст, написанный в ячейке;
— Третий столбец 4 сантиметра;
— Фиксированные ячейки.
Во второй строке запишем текст, который должен быть в две строки: Произвольный текст. Фиксированные ячейки.
У нас получился текст разной длинны и в какой-то из ячеек он явно не поместится.
Менять таблицу мы не будем, а будем менять параметры текста. Самое простое, что мы сейчас можем сделать, это выполнить выравнивание текста. Нам доступны из меню такие пункты, как «Выровнять текст по левому краю», «Выровнять по центру», «Выровнять текст по правому краю», «Выровнять по ширине». Если нажать правой кнопкой мыши внутри любой ячейки, то в появившемся меню можно будет найти пункт «Выравнивание ячеек», с помощью которого мы сможем не только манипулировать текстом по горизонтали, но и по вертикали, т.е. выровнять сверху или выровнять снизу.
Остановимся на варианте выравнивание текста по центру, как по вертикали, так и по горизонтали.
Чтобы наш текст поместился в ячейки, уменьшим немного границы отступов от края ячейки. Для этого заходим в свойства таблицы, нажимая правой кнопкой мыши на выделенную таблицу и выбирая соответствующий пункт в появившемся меню. В окошке «Свойства таблицы» заходим на вкладку «Ячейка» и нажимаем пункт «Параметры…». В окошке «Параметры ячейки» убираем поля ячейки справа и слева. Но этого все еще не достаточно, чтобы поместить наш текст в ячейку, хотя в последней ячейке текст помещается полностью.
Далее мы будем производить настройку текста для каждой ячейки индивидуально, потому что текст в ячейках разной длинны.
Можно немного уменьшить расстояние между буквами, что мы и сделаем для четверной ячейки, где текст у нас уже помещается полностью. Нам необходимо открыть диалоговое окно «Шрифт». Для этого выделяем текст в ячейке и на вкладке «Главная» находим значки настройки шрифта, и справа внизу нажимаем на стрелочку для вызова дополнительного окошка. В диалоговом окошке «Шрифт» заходим на вкладку «Дополнительно» и меняем значение в графе «Интервал». Необходимо выбрать интервал «Уплотненный» и подобрать такое значение, при котором текст будет немного отступать от границ ячейки.
Попробуем поставить такое же значение в графе «Интервал» для второй и третьей ячеек. Это нам не сильно помогает, но более сильное уплотнение приведет к сильному наезду букв друг на друга. Поэтому будем также изменять «Масштаб». Для второй ячейки значение масштаба получилось 94%, а вот в третьей ячейке текст поместился только при значении 89%.
У нас осталась неоформленная вторая строка, в которой текст идет в две строки. Применим к нему все те же настройки, чтобы текст поместился по ширине. Теперь необходимо уменьшить расстояние между строками. Находим на той же вкладке «Главная» пункт «Абзац» и вызываем диалоговое окошко «Абзац». На вкладке «Отступы и интервалы» находим пункт «Интервал междустрочный», в котором, выбрав вариант настроек «Точно», будем подбирать значение. При значении «10» обе строки идеально помещаются в ячейку.
Точно такие же настройки текста можно производить и вне таблиц, например, когда необходимо определенный объем текста вписать на лист или строку.
Когда мы заходили в «Свойства таблицы» и далее в «Параметры ячейки», там был пункт «Вписать текст», установив галочку напротив которого мы избавим себя от всех пройденных выше настроек, кроме межстрочного интервала. Для примера можно сравнить, какой из результатов получился лучше, автоматический или ручной.
Как вставить в таблицу текст
- Как вставить в таблицу текст
- Как в excel вставить текст
- Как редактировать таблицу в Word
- Как поместить текст
- Как сделать таблицу в Ворде
- Как сделать текст справа от картинки
Как в эксель скопировать текст из ворда
Импортируем (вставляем) ТЕКСТ из WORD в ячейку EXCEL
Рассмотрим подробнее вставку в одну ЯЧЕЙКУ листа текстовых строк из WORD, содержащих несколько абзацев и символы табуляции.
Использовать ячейку EXCEL для хранения большого количества текстовых данных, наверное не совсем правильно. Но, иногда возникают подобные задачи. Например, когда необходимо сделать форму для акта выполненных работ (в которую с помощью формул подставляются стоимость, количество, дата и пр.), которые вынуждают вставлять большие текстовые строки в ячейки листа.
Совет: Если текст из WORD нужно вставить через буфера обмена сразу в нескольких ячеек, то см. статью Импортируем текст из WORD на лист
Чтобы не набирать текст вручную, его можно скопировать, например, из WORD. Текст в ячейку вставить, конечно, не проблема, но задача становится несколько сложнее, когда текст содержит спецсимволы: несколько абзацев, символы табуляции и разрывы строк.
Вставка текста в ячейку
При обычной вставке через Буфер обмена текста из WORD (выделить ячейку и нажать CTRL+V), содержащего несколько абзацев и символы табуляции, текст вставляется сразу в несколько ячеек (см. статью Импортируем текст из WORD на лист).
Нам здесь требуется вставить текст, показанный на рисунке ниже, в одну ячейку.
Текст содержит 3 символа абзаца, 1 разрыв строки (после Слово3) и 3 символа табуляции.
Чтобы вставить текст в одну ячейку применяем следующий подход:
- копируем из WORD текст;
- в EXCEL выделяем, например, ячейку A1;
- нажимаем клавишу F2 (входим в Режим правки ячейки) или ставим курсор в Строку формул;
- вставляем текст из Буфера обмена (CTRL+V).
При вставке из Буфера обмена MS EXCEL сделал следующее:
- символы абзаца и разрыва строки были заменены на символ с кодом 10 (символ Перевода строки),
- символ табуляции преобразован в символ пробела (с кодом 32).
Если в формате ячейки не установлено «переносить по словам», то весь текст будет отображен в одной строке, а вместо символов Перевода строки будут отображаться маленькие квадратики с вопросиком. В этом случае не забудьте нажать кнопку Главное/ Выравнивание/ Перенос текста .
Если формат ячейки был Текстовый, то отобразить более 255 символов в ней не удастся. Вместо текста будут отображены символы ########. Для того, чтобы отобразить такой текст, формат ячейки нужно установить Общий.
Удаляем/ вставляем спецсимволы
Если деление на абзацы больше не нужно, то из текстовой строки можно удалить символ перевода строки, заменив его на символ пробела ( см. файл примера ):
=ПОДСТАВИТЬ(A1;СИМВОЛ(10);» «) или так =ПОДСТАВИТЬ(A1;СИМВОЛ(10);СИМВОЛ(32))
Если нужно вернуть разбиение на абзацы, то выделив нужную ячейку, поставьте в Строке формул курсор туда, где нужно начать абзац и нажмите ALT+ENTER.
В случае, если необходимо отображать каждое слово в новой строке, то вместо многочисленного ввода ALT+ENTER можно ввести формулу =ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);» «; СИМВОЛ(10)) и тем самым заменить все пробелы на символы Перевода строки (предполагается, что текстовая строка содержится в ячейке А1).
Лишние пробелы (если они не были убраны в WORD) можно удалить с помощью формулы =СЖПРОБЕЛЫ(A1) .
Копирование таблицы Word в Excel
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Если вы хотите переместить данные из таблицы Word в Excel, можно избежать повторного ввода, скопировав их прямо из Word. При копировании из таблицы Word на лист Excel данные в каждой ячейке таблицы Word вставляются в отдельную ячейку на листе.
Важно: После вставки данных может потребоваться очистить их, чтобы воспользоваться функциями вычислений Excel. Например, в ячейках могут быть ненужные пробелы, числа могут быть вставлены как текст, а не как числовые значения, с которыми можно выполнять вычисления, а даты могут отображаться неправильно. Сведения о форматировании чисел как дат, денежных единиц, процентов и т. д. см. в статье Форматирование чисел. Справку о форматировании таблицы можно найти в статье Форматирование таблицы Excel.
Выберите в документе Word строки и столбцы таблицы, которые вы хотите скопировать на лист Excel. Убедитесь, что в ячейках таблицы нет лишних возвратов каретки, в противном случае это может привести к дополнительным строкам в Excel.
Чтобы скопировать выделенный фрагмент, нажмите клавиши CTRL+C.
На листе Excel выделите левый верхний угол области, в которую нужно вставить таблицу Word.
Примечание: Перед вставкой убедитесь, что область пуста. Данные из ячеек таблицы Word заменят все существующие данные в ячейках листа, находящихся в области вставки. При необходимости перед копированием просмотрите таблицу в Word для проверки ее размеров.
Нажмите клавиши CTRL+V.
Чтобы настроить форматирование, нажмите кнопку Параметры вставки рядом с вставленными данными, а затем выполните указанные ниже действия.
Чтобы использовать форматирование, примененное к ячейкам листа, выберите вариант Использовать форматы конечных ячеек.
Чтобы использовать форматирование таблицы Word, выберите вариант Сохранить исходное форматирование.
Примечание: Excel вставит содержимое каждой ячейки таблицы Word в отдельную ячейку. После вставки данных их можно распространить на другие ячейки в столбце (например, разделив имя и фамилию, чтобы они отображались в отдельных ячейках) с помощью команды Текст по столбцам. Дополнительные сведения см. в статье Распределение содержимого ячейки на соседние столбцы.
Как перенести таблицу из Word в Excel
Ситуация, когда из ворда в эксель нужно переместить табличку с данными, встречается не так часто. Например, это может пригодиться, чтобы воспользоваться специальными формулами и быстро произвести какие-либо подсчеты. В статье рассмотрим пошаговую инструкцию, как перенести таблицу из Word в Excel.
Простое копирование
Первым и самым простым способом для переноса таблицы из ворда в эксель является ее простое копирование из исходного документа с последующей вставкой в другой. Поэтапно это делается следующим образом:
-
Сначала нужно выделить всю таблицу, нажав на значок в виде двух пересекающихся двухсторонних стрелок в верхнем левом углу.
После выполнения данной последовательности нужная таблица появится на листе эксель. Однако иногда информация, помещенная в ячейки, не отображается полностью. Тогда следует вручную растянуть столбцы и строки.
Импортирование данных из Word в Excel
Существует и другой вариант, который считается более сложным. Он позволяет не копировать и вставлять вручную, а импортировать данные из таблица с сохранением параметров. Пользователь, который хочет воспользоваться данным методом, должен четко следовать алгоритму действий, описанных ниже:
- Открыть исходную таблицу в программе Word и выделить ее, нажав на уже упомянутый в прошлом разделе значок со стрелками, появившийся в левом углу.
- Перейти в «Макет» в панели инструментов (в разделе «Работа с таблицами»).
- В самом правом разделе панели инструментов под названием «Данные» имеется функция «Преобразовать в текст».
В появившемся окне параметров нужно выбрать знак табуляции в качестве «Разделителя». Подтвердить выбор нажатием «Ок».
Перейти во вкладку «Файл» и нажать пункт «Сохранить как». Далее указываем место, где будет располагаться документ, даем ему наименование. Главное, что важно сделать, — это изменить тип файла. Он должен быть обычным текстом (.txt).
Нажать «Сохранить». В открывшемся окне преобразования ничего менять не понадобится. Нужно только запомнить кодировку, например Windows (по умолчанию).
-
Перейти во вкладку «Данные», последовательно нажать «Получение внешних данных» — «Из текста».
Далее перед пользователем появится окно, именуемое «Мастер текстов». В нем в настройках следует отметить формат данных «с разделителем». Также нужно установить кодировку, в который был сохранен текстовый файл. После этого нажать «Далее».
В следующем окне в качестве символа-разделителя устанавливается знак табуляции и нажимается «Далее».
Финальным шагом является форматирование данных, при этом во внимание принимается содержимое ячеек. Так, по порядку нажимая каждый из столбцов, пользователь присваивает ему одно из значений (общий, текст, дата или пропустить). В конце нажимается «Готово».
На экране появится окно импорта, где указывается, на какой лист нужно поместить таблицу. Также в поле вводится адрес той ячейки, которая будет являться крайней левой верхней. Если вручную сделать это не получилось, следует кликнуть на кнопку, находящуюся рядом с полем для ввода данных. На сетке выделяем одним щелчком мыши нужную ячейку. После возврата в окно импорта данных нажимаем «Ок».
Перед пользователем появится таблица, которую в дальнейшем можно форматировать и редактировать встроенными инструментами.
Конвертация файлов Word в Microsoft Excel
Бывают ситуации, когда текст или таблицы, набранные в Microsoft Word, нужно преобразовать в Excel. К сожалению Ворд не предусматривает встроенных инструментов для подобных преобразований. Но, вместе с тем, существует целый ряд способов произвести конвертацию файлов в данном направлении. Давайте выясним, как это можно сделать.
Основные способы конвертации
Можно выделить три основных способа конвертации файлов Word в Excel:
- простое копирование данных;
- использование сторонних специализированных приложений;
- использование специализированных онлайн-сервисов.
Способ 1: копирование данных
Если просто скопировать данные из документа Word в Excel, то содержимое нового документа будет иметь не слишком презентабельный вид. Каждый абзац будет размещаться в отдельной ячейке. Поэтому, после того, как текст скопирован, нужно поработать над самой структурой его размещения на листе Excel. Отдельный вопрос составляет копирование таблиц.
- Выделяем нужный отрезок текста или текст целиком в Microsoft Word. Кликаем правой кнопкой мыши, чем вызываем контекстное меню. Выбираем пункт «Копировать». Можно вместо использования контекстного меню, после выделения текста, кликнуть по кнопке «Копировать», которая размещается во вкладке «Главная» в блоке инструментов «Буфер обмена». Ещё одним вариантом является после выделения текста нажатие комбинации клавиш на клавиатуре Ctrl+C.
Открываем программу Microsoft Excel. Кликаем ориентировочно по тому месту на листе, куда собираемся вставить текст. Правым кликом мыши вызываем контекстное меню. В нём в блоке «Параметры вставки» выбираем значение «Сохранить исходное форматирование».
Также, вместо этих действий, можно нажать на кнопку «Вставить», которая размещена на самом левом краю ленты. Ещё один вариант – это нажатие комбинации клавиш Ctrl+V.
Как видим, текст вставлен, но он, как и говорилось выше, имеет непрезентабельный вид.
Для того, что бы он принял нужный нам вид, раздвигаем ячейки на требуемую ширину. При наличии надобности дополнительно форматируем его.
Способ 2: продвинутое копирование данных
Существует ещё один способ конвертации данных из Ворда в Excel. Он, конечно, существенно сложнее предыдущего варианта, но, в то же время, подобный перенос зачастую более корректен.
-
Открываем файл в программе Word. Находясь во вкладке «Главная», кликаем по значку «Отобразить все знаки», который размещен на ленте в блоке инструментов «Абзац». Вместо данных действий можно просто нажать комбинацию клавиш Ctrl+*.
Переходим во вкладку «Файл».
Выбираем пункт «Сохранить как».
Открывается окно сохранения файла. В параметре «Тип файла» выбираем значение «Обычный текст». Жмем на кнопку «Сохранить».
В открывшемся окне преобразования файла никаких изменений вносить не нужно. Просто жмем кнопку «OK».
Открываем программу Эксель во вкладке «Файл». Выбираем пункт «Открыть».
В окне «Открытие документа» в параметре открываемых файлов установите значение «Все файлы». Выберете тот файл, который до этого сохраняли в Ворде, как обычный текст. Жмем на кнопку «Открыть».
Открывается Мастер импорта текстов. Указываем формат данных «С разделителями». Жмем на кнопку «Далее».
В параметре «Символом-разделителем является» указываем значение «Запятая». Со всех остальных пунктов снимаем галочки при их наличии. Жмем на кнопку «Далее».
В последнем окне выбираем формат данных. Если у вас обычный текст, то рекомендуется выбрать формат «Общий» (установлен по умолчанию) или «Текстовый». Жмем на кнопку «Готово».
Примерно по такой же схеме можно скопировать таблицу из Ворда в Эксель. Нюансы данной процедуры описываются в отдельном уроке.
Способ 3: применение приложений для конвертирования
Ещё одним способом преобразовать документы Ворд в Эксель является применение специализированных приложений для конвертирования данных. Одним из наиболее удобных из них является программа Abex Excel to Word Converter.
-
Открываем утилиту. Жмем на кнопку «Add Files».
В открывшемся окне, выбираем файл, который подлежит конвертации. Жмем на кнопку «Открыть».
- xls;
- xlsx;
- xlsm.
В блоке настроек «Output setting» выбираем место, куда будет конвертироваться файл.
После этого происходит процедура конвертации. Теперь вы можете открыть файл в программе Excel, и продолжить работу с ним.
Способ 4: конвертация с помощью онлайн-сервисов
Если вы не желаете устанавливать на свой ПК дополнительное программное обеспечение, то можно воспользоваться специализированными онлайн-сервисами для конвертации файлов. Одним из самых удобных онлайн-конвертеров по направлению Word – Excel является ресурс Convertio.
- Переходим на сайт Convertio и выбираем файлы для конвертации. Это можно сделать следующими способами:
- Выбрать с компьютера;
- Перетянуть с открытого окна Проводника Windows;
- Загрузить из сервиса Dropbox;
- Загрузить из сервиса Google Drive;
- Загрузить по ссылке.
После того, как исходный файл загружен на сайт, выбираем формат сохранения. Для этого, кликаем по выпадающему списку слева от надписи «Подготовлено». Переходим в пункт «Документ», а затем выбираем формат xls или xlsx.
Жмем на кнопку «Преобразовать».
После этого документ в формате Excel будет загружен на ваш компьютер.
Как видим, существует несколько способов преобразования файлов Word в Excel. При использовании специализированных программ или онлайн-конвертеров трансформация происходит буквально в несколько кликов. В то же время, ручное копирование, хоть и занимает большее время, но позволяет максимально точно отформатировать файл под свои потребности.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Excel. Основы. Копирование примечаний
Очень многие пользователи Excel в своей работе применяют такой замечательный инструмент, как примечания. Это удобно как при совместной работе над файлами, так и для самоорганизации и контроля (указать в примечании причину, по которой в ячейке стоит то или иное число — классический пример использования).
Однако, как показывает практика, далеко не все умеют копировать примечания между ячейками. Большинство пользователей при возникновении такой необходимости просто создают нужное количество новых примечаний, что иногда бывает долго и нудно. Избавить себя от подобных ручных операций крайне просто. Копировать примечания помогает один из самых главных и важных инструментов Excel — специальная вставка.
Как скопировать примечание в другую ячейку
Для того, чтобы скопировать примечания, нужно выполнить следующие шаги:
1) Выделите ячейку с нужным примечанием и нажмите копировать или Ctrl+C ;
2) Выберите одну или несколько ячеек, в которые нужно вставить примечание (можно выбирать диапазоны, можно выбирать несмежные ячейки);
3) Откройте окно специальной вставки. Делается это сочетанием клавиш Ctrl+Alt+V , либо командой контекстного меню (правый клик мыши по ячейкам, в которые будете вставлять примечание).
4) В открывшемся окне выберите » Примечания » и нажмите » ОК «.
Готово! Примечания будут скопированы в нужные ячейки.
Некоторые особенности копирования примечаний
- примечание копируется со всеми настройками форматирования и выглядит в новой ячейке точно также, как в исходной;
- примечание можно скопировать на другой лист или в другую книгу;
- нельзя вставить примечания одновременно на несколько листов в режиме выделения листов «Группа»;
- можно одновременно скопировать примечания из нескольких ячеек, но диапазон вставки в этом случае должен быть кратным диапазону копирования. Это значит, что если Вы скопируете примечания из 3 ячеек одновременно, то вставить сможете только в 3, 6, 9 и т.д. ячеек. Если будет выделено некратное число ячеек для вставки, то примечание копируется только в первые три;
- нельзя вставить в ячейку более одного примечания;
- при копировании нескольких примечаний они вставляются в итоговые ячейки в том порядке, в котором находились в диапазоне копирования (отсчет ведется с левой верхней ячейки, двигаясь вправо до конца строки, а затем вниз).
Видеоверсию данной статьи смотрите на нашем канале на YouTube
Чтобы не пропустить новые уроки и постоянно повышать свое мастерство владения Excel — подписывайтесь на наш канал в Telegram Excel Everyday
Много интересного по другим офисным приложениям от Microsoft (Word, Outlook, Power Point и т.д.) — на нашем канале в Telegram Office Killer
Вопросы по Excel можно задать нашему боту обратной связи в Telegram @ExEvFeedbackBot
Вопросы по другому ПО (кроме Excel) задавайте второму боту — @KillOfBot
Бытует мнение, что таблицы Microsoft Word — самая неприятная часть текстового редактора. Они неуклюжи, ими трудно управлять, их тяжело форматировать. После прочтения этой статьи у вас не останется таких предубеждений.
Предвзятое отношение к таблицам имеет свои глубокие корни. Чего греха таить, дюжину лет назад таблицы в Word не могли похвастаться удобством из-за несовершенства программы в целом. Но с тех пор прошло много времени. Microsoft прекрасно поработала над своими ошибками и сделала всё возможное для удобства пользователей. Жаль, конечно, что многие из тех самых пользователей об этом не знают и до сих пор работают в 2003-й редакции офисного пакета. Историю про ёжиков и кактусы не напоминает?
Всем застрявшим в прошлом просто по-человечески рекомендую обновиться как минимум до 2013-й версии Microsoft Office, а лучше — сразу до свежей, 2016-й. Поверьте, вам только кажется, что вы работаете в ставшей классикой среде, на самом деле она уже давно поросла мхом и плесенью.
Используйте шаблоны
Офисные будни полны однообразных документов, в том числе и таблиц. Берём одну электронную бумажку, вырезаем её часть, вставляем в новый документ и правим детали. Хорошая методика, но, как мне кажется, работа с шаблонами немного проще и быстрее. К слову, в самом Word шаблоны величают экспресс-таблицами.
Кликните по закладке «Вставка», щёлкните по «Таблице» и перейдите к «Экспресс-таблицам». Обратите внимание на пункт «Сохранить выделенный фрагмент в коллекцию».
Здесь вы найдёте несколько вполне полезных вариантов и, что самое главное, сможете сохранить в качестве шаблона любую другую таблицу или её фрагмент, в том числе и собственного производства.
Рисуйте таблицы
Помните медведя, который в детстве прошёлся по вашим ушам и рукам в безудержном цыганском танце? Именно с тех пор вы не любите пение и кисточки и именно с тех пор вы упорно игнорируете опцию «Нарисовать таблицу» в Word. Встряхнись, взрослый человек! Пора подавить мохнатое чудовище! Это проще, чем кажется.
Кликните по закладке «Вставка», щёлкните по «Таблице» и перейдите к пункту «Нарисовать таблицу».
И не бойтесь совершить промах: под рукой всегда найдётся ластик. Порой карандаш и стиралка существенно упрощают создание сложных таблиц с мелкими элементами.
Вставляйте строки и столбцы быстро
Начиная с Word 2013 добавление строк и столбцов из зубодробительной пытки превратилось в увлекательную забаву. Не подумайте, архаичные «Вставить столбцы слева/справа» и «Вставить строки сверху/снизу» никуда не делись, но о них теперь можно забыть.
Наведите курсор на пространство между строками или столбцами за пределами таблицы и нажмите на появившийся плюс.
В будущем хотелось бы видеть что-то похожее и для функции удаления.
Применяйте линейку
У каждого человека есть любимые и отталкивающие цифры, которые он без разбору использует или избегает в своей жизни. Даже в параметрах своих таблиц. Знаю таких.
Если вы привыкли точно выставлять значения отступов, ширину и высоту ячеек через свойства таблицы, попробуйте альтернативу — линейку.
Наведите курсор на границу столбцов или строк, схватите её, зажмите клавишу Alt и пользуйтесь удобством сантиметровой линейки.
Такой же трюк можно провернуть и с маркерами отступов и выступов. Наведите на них курсор и зажмите всё ту же клавишу Alt.
Используйте горячие клавиши
Будь я разработчиком программного обеспечения, я бы нарёк горячие клавиши душевными кнопками. Ведь порой так и хочется обняться с ноутбуком только потому, что они есть. Что же касается таблиц Word, я наиболее часто использую тройку комбинаций:
- Alt + Shift + «Вверх/Вниз» быстро перемещает текущую строку на одну позицию выше или ниже (просто незаменимая вещь).
- Ctrl + Shift + A мгновенно превращает прописные буквы в заглавные, что очень полезно для заголовков.
- Ctrl + Tab добавляет табуляцию в ячейке, в то время как обычный Tab переносит курсор на следующую ячейку.
Преобразуйте текст в таблицу
Немного магии, которой можно прихвастнуть на глазах у изумлённой публики. Вместо того чтобы создавать таблицы привычным способом, попробуйте парочку других, более изощрённых, вариантов:
- Массивы ячеек, скопированные из Excel, вставляютcя в Word как таблица с невидимыми границами.
- Хорошо структурированный текст легко преобразуется в таблицу штатными средствами Word.
Выделите текст, кликните по закладке «Вставка», щёлкните по «Таблице» и выберите пункт «Преобразовать в таблицу».
Обратите внимание на вспомогательные параметры: качество преобразования зависит от них напрямую.
Контролируйте размеры ячеек
Хочешь узнать человека, подкинь ему таблицу с текстом-самодуром. Немного свободная интерпретация известного мнения, конечно, но бьёт в точку. Только взгляните на скриншот, а точнее на первую колонку и слово «филологический» — безобразное бельмо.
По моим наблюдениям, в таких случаях люди сначала неприлично выражаются, а затем прибегают к не самому оптимальному выходу — уменьшают размер шрифта. Но лучше вместить текст другим путём.
Щёлкните в ячейке правой клавишей, выберите пункт «Свойства таблицы», переключитесь на закладку «Ячейка», перейдите к «Параметрам» и проставьте галочку в графе «Вписать текст».
Word поднатужится и вернёт убежавшую букву на место, а в мире снова воцарится мир. К слову, для наглядности «вписанный» текст будет подчёркиваться голубой линией.
А ещё, бывает, позаимствуешь чью-то таблицу и довольно напеваешь себе под нос: «Только ты, рыба моей мечты»! Хорошая работа чужими руками! Начинаешь заливать её своими данными, и тут происходит неконтролируемая чертовщина: одни столбцы расползаются за счёт похудения других. Голова отрезвляется, и реальность перестаёт радовать. Как быть?
Шутки шутками, но случается, что вам присылают таблицу строгого формата, с которой нельзя оплошать. Как минимум не поленитесь отправить её обратно с прежними размерами. Так получатель увидит то, что ожидает увидеть. А для этого отключите автоподбор размеров по содержимому.
Щёлкните в любой из ячеек правой клавишей мыши, выберите пункт «Свойства таблицы», перейдите к «Параметрам» и снимите галочку в графе «Автоподбор размеров по содержимому».
Эта же опция спасёт вашу таблицу от коллапса, если вам необходимо заполнить некоторые ячейки изображениями: они впишутся в виде миниатюры вместо полномасштабного размера.
Есть что добавить? Пишите в комментариях.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщений [ 29 ]
1 13.06.2017 12:13:35
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Тема: Копирование — вставка из Word в Excel нескольких текстов
Здравствуйте!
Появилась необходимость скопировать определенные несвязанные строки из документа Word и вставить их в документ Excel, в разные ячейки.
В приложении файл Word — акт ОСР (освидетельствования скрытых работ), в котором красным выделено то, что я по очереди копирую «ручками», а потом вставляю в ячейки реестра формата Excel.
Бесит смена документов для копирования — вставки: Word-копирование, Excel-вставка…
Можно ли как-то сделать, чтобы в Вордовском документе скопировать по очереди все тексты , а потом в реестре автоматом вставить в нужные ячейки?
Важно:
1. шрифт в документе Excel иной, нежели в документе Word, поэтому приходится вставлять не в ячейку, а в строку формул.
2. Даты в реестре — в ином формате, нежели в Ворде, вот такие: 13.06.2017.
Предполагаю, что надо макросом как-то сформировать несколько буферов обмена по количеству копируемых текстов, чтобы потом вставить их содержимое в ячейки Excel.
Прошу помощи. Искал более-менее подходящие макросы, чтобы подстроить «под себя», как здесь, так и на «Планете Excel», но не нашел.
p.s. У меня проблемы не было бы, формируй мы акты ОСР в Excel, но увы, никто из коллег не желает менять уже привычный Word на Excel.
p.p.s Во время работы никакие иные документы, кроме этих двух, не открыты, поэтому в макросе можно не указывать конкретную директорию и название файла.
Post’s attachments
Word.docx 21.13 Кб, 10 скачиваний с 2017-06-13
You don’t have the permssions to download the attachments of this post.
2 Ответ от Fck_This 13.06.2017 14:15:50
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
файл эксель тоже нужно бы выложить.
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
3 Ответ от MrBrown 13.06.2017 14:22:34
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Ок, прикладываю.
Там так же выделил красным, что вставляю из Ворда.
Post’s attachments
Реестр Excel.xls 24.5 Кб, 6 скачиваний с 2017-06-13
You don’t have the permssions to download the attachments of this post.
4 Ответ от Fck_This 13.06.2017 14:51:17
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
Ок, прикладываю.
Там так же выделил красным, что вставляю из Ворда.
Я так понял там будет много пунктов таких заказов? Предлагаю такой вариант — У вас запросит номер заказа и расставит все данные по ячейкам.
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
5 Ответ от MrBrown 13.06.2017 15:11:49
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Есть множество актов-файлов Word.
Я вручную заношу данные из них в реестр Excel.
В файле Excel я показал только одну первую строчку. Таких строчек много, в соответствии с количеством файлов Word.
И моя голубая мечта: открыть очередной файл Word, выделить и скопировать один красный текст, сразу же выделить и скопировать другой красный текст, далее последовательно повторить выделение и копирование каждого красного текста в этом файле.
Перейти в реестр Excel, активировать первую ячейку нужной строки, нажать «пупочку» и — вуаля! — все скопированные тексты вставлены в соответствующие ячейки строки.
Далее всё повторяется: открываю новый файл Word, произвожу те же телодвижения по выделению и копированию текстов, перехожу в Excel и вставляю скопированное в следующую строчку.
И так до конца.
6 Ответ от Fck_This 13.06.2017 17:45:40
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
Завтра выложу
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
7 Ответ от MrBrown 13.06.2017 17:48:11
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Благодарю за участие.
8 Ответ от Fck_This 13.06.2017 18:44:12
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
Благодарю за участие.
Вот код для эксель-файла. Чёт увлёкся и не стал откладывать на завтра. Добавляете код в редактор и запускаете макрос «Заполнить строку». Он предложит вам указать номер договора (тут вы вводите число, которое будет стоять в столбце «номер по порядку» для той строки, которую собираетесь заполнять), затем вам будет предложено выбрать документ, из которого брать данные (я указал просто диск С:, а вы укажите необходимый путь. Это начальный путь, с которого можно будет начинать выбирать файл). Форматирования текста пока что нету.
Sub Заполнить_строку()
Dim sName
Dim iCell As Long
iCell = InputBox("Введите номер договора")
iCell = iCell + 3
Dim oWB As Workbook
Set oWB = ThisWorkbook
RepeatLine:
sName = My_File_Open
Dim WD As Object
Set WD = CreateObject("Word.Application")
WD.Visible = True
Dim oDoc As Object
Set oDoc = WD.Documents.Open(Filename:=sName)
'sText = oDoc.Tables(2).Cell(1, 1).Range.Text
'Первое значение
sText = oDoc.Tables(2).Cell(1, 1).Range.Text: sText = Left(sText, Len(sText) - 1)
If InStr(sText, "№ ") >= 1 Then sText = Replace(sText, "№ ", "")
sRange = "B" & iCell & ":B" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'Второе значение
sText = oDoc.Tables(2).Cell(1, 2).Range.Text: sText = Left(sText, Len(sText) - 1)
sMonth = CheckMonth(sText)
sRange = "I" & iCell & ":I" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sMonth
'Третье значение
sText = oDoc.Tables(2).Cell(24, 2).Range.Text
sText = Left(sText, Len(sText) - 1)
If oDoc.Tables(2).Cell(25, 1).Range.Text <> 2 Then
sTextNext = oDoc.Tables(2).Cell(25, 1).Range.Text
sTextNext = Left(sTextNext, Len(sTextNext) - 1)
sTextNext = LTrim(sTextNext)
sText = RTrim(sText)
sText = sText & Chr(32) & sTextNext
End If
sRange = "E" & iCell & ":E" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'32:2 & 33:1 - Cell J
sText = oDoc.Tables(2).Cell(32, 2).Range.Text
sText = Left(sText, Len(sText) - 1)
If oDoc.Tables(2).Cell(33, 1).Range.Text <> 2 Then
sTextNext = oDoc.Tables(2).Cell(33, 1).Range.Text
sTextNext = Left(sTextNext, Len(sTextNext) - 1)
sTextNext = Trim(sTextNext)
sText = Trim(sText)
sText = sText & Chr(32) & sTextNext
End If
sRange = "J" & iCell & ":J" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'50:1 - Dates - Cells G & H
sText = oDoc.Tables(2).Cell(50, 1).Range.Text
sText = Left(sText, Len(sText) - 1)
'sStart = StartAndFinish(sText, 1)
'sFinish = StartAndFinish(sText, 2)
sStart = Left(sText, InStr(sText, "окончания работ") - 1)
sStart = Right(sStart, Len(sStart) - InStrRev(sStart, "начала работ ") - 12)
sStart = Left(sStart, InStr(sStart, "г."))
sStart = CheckMonth(sStart)
sFinish = Right(sText, Len(sText) - InStr(sText, "окончания работ ") - 15)
sFinish = CheckMonth(sFinish)
sRange = "G" & iCell & ":G" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sStart
sRange = "H" & iCell & ":H" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sStart
iRepeat = MsgBox("Добавить ещё данные?", vbYesNo)
If iRepeat = 6 Then
WD.Quit
Set WD = Nothing
GoTo RepeatLine
End If
End Sub
Private Function My_File_Open()
Dim oFile
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Выберите нужный файл"
.ButtonName = "Выбрать файл"
.InitialFileName = "C:"
' .Filters.Add "*.docx", "*.docm", "*.doc", "*.rtf"
.AllowMultiSelect = False
.Show
My_File_Open = .SelectedItems(1)
End With
End Function
Private Function CheckMonth(ByVal sText As String)
If InStr(sText, "января") >= 1 Then
sText = Replace(sText, "января", "01.")
ElseIf InStr(sText, "февраля") >= 1 Then
sText = Replace(sText, "февраля", "02.")
ElseIf InStr(sText, "марта") >= 1 Then
sText = Replace(sText, "марта", "03.")
ElseIf InStr(sText, "апреля") >= 1 Then
sText = Replace(sText, "апреля", "04.")
ElseIf InStr(sText, "мая") >= 1 Then
sText = Replace(sText, "мая", "05.")
ElseIf InStr(sText, "июня") >= 1 Then
sText = Replace(sText, "июня", "06.")
ElseIf InStr(sText, "июля") >= 1 Then
sText = Replace(sText, "июля", "07.")
ElseIf InStr(sText, "августа") >= 1 Then
sText = Replace(sText, "августа", "08.")
ElseIf InStr(sText, "сентября") >= 1 Then
sText = Replace(sText, "сентября", "09.")
ElseIf InStr(sText, "октября") >= 1 Then
sText = Replace(sText, "октября", "10.")
ElseIf InStr(sText, "ноября") >= 1 Then
sText = Replace(sText, "ноября", "11.")
ElseIf InStr(sText, "декабря") >= 1 Then
sText = Replace(sText, "декабря", "12.")
End If
sText = Replace(sText, Chr(171), "")
sText = Replace(sText, Chr(187), ".")
sText = Replace(sText, "г.", "")
sText = Replace(sText, "г", "")
sText = Replace(sText, Chr(32), "")
CheckMonth = sText
End Function
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
9 Ответ от Fck_This 15.06.2017 10:33:21
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
- За сообщение: 1
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
В ответ на письмо.
Поправил по пунктам, которые вы указали. Теперь не надо перезапускать макрос (не посмотрел, что код выше нужной строки), Документ не закрывался из-за того, что макрос перезапускался — тоже поправил. Настроил автозаполнение Ctrl+D. Нумерация тоже теперь будет.
Единственное условие для правильной работы — надо чтобы таблица 2 не менялась строго до последней ячейки (та, что с датами окончания и начала работ) — т.е. число ячеек должно быть таким же. Советую сделать шаблон , который будет заполняться данными (чтобы таблицы в нём были готовые и их оставалось только заполнить).
По поводу ошибки — без конкретного примера ничего не могу посоветовать.
Замените ваш кода на этот:
Sub Заполнить_строку()
Dim sName
Dim iCell As Long
Dim oWB As Workbook
Set oWB = ThisWorkbook
RepeatLine:
iCell = InputBox("Введите номер договора")
iCell = iCell + 3
'<start Автозаполнялка>
sRange = "A" & iCell & ":A" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = iCell - 3
sAuto = "C" & iCell
Range(sAuto).Select
Selection.FillDown
sAuto = "D" & iCell
Range(sAuto).Select
Selection.FillDown
sAuto = "F" & iCell
Range(sAuto).Select
Selection.FillDown
'<end Автозаполнялка>
sName = My_File_Open
Dim WD As Object
Set WD = CreateObject("Word.Application")
WD.Visible = True
Dim oDoc As Object
Set oDoc = WD.Documents.Open(Filename:=sName)
'sText = oDoc.Tables(2).Cell(1, 1).Range.Text
'Первое значение
sText = oDoc.Tables(2).Cell(1, 1).Range.Text: sText = Left(sText, Len(sText) - 1)
If InStr(sText, "№ ") >= 1 Then sText = Replace(sText, "№ ", "")
sRange = "B" & iCell & ":B" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'Второе значение
sText = oDoc.Tables(2).Cell(1, 2).Range.Text: sText = Left(sText, Len(sText) - 1)
sMonth = CheckMonth(sText)
sRange = "I" & iCell & ":I" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sMonth
'Третье значение
sText = oDoc.Tables(2).Cell(24, 2).Range.Text
sText = Left(sText, Len(sText) - 1)
If oDoc.Tables(2).Cell(25, 1).Range.Text <> 2 Then
sTextNext = oDoc.Tables(2).Cell(25, 1).Range.Text
sTextNext = Left(sTextNext, Len(sTextNext) - 1)
sTextNext = LTrim(sTextNext)
sText = RTrim(sText)
sText = sText & Chr(32) & sTextNext
End If
sRange = "E" & iCell & ":E" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'32:2 & 33:1 - Cell J
sText = oDoc.Tables(2).Cell(32, 2).Range.Text
sText = Left(sText, Len(sText) - 1)
If oDoc.Tables(2).Cell(33, 1).Range.Text <> 2 Then
sTextNext = oDoc.Tables(2).Cell(33, 1).Range.Text
sTextNext = Left(sTextNext, Len(sTextNext) - 1)
sTextNext = Trim(sTextNext)
sText = Trim(sText)
sText = sText & Chr(32) & sTextNext
End If
sRange = "J" & iCell & ":J" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'50:1 - Dates - Cells G & H
sText = oDoc.Tables(2).Cell(50, 1).Range.Text
sText = Left(sText, Len(sText) - 1)
'sStart = StartAndFinish(sText, 1)
'sFinish = StartAndFinish(sText, 2)
sStart = Left(sText, InStr(sText, "окончания работ") - 1)
sStart = Right(sStart, Len(sStart) - InStrRev(sStart, "начала работ ") - 12)
sStart = Left(sStart, InStr(sStart, "г."))
sStart = CheckMonth(sStart)
sFinish = Right(sText, Len(sText) - InStr(sText, "окончания работ ") - 15)
sFinish = CheckMonth(sFinish)
sRange = "G" & iCell & ":G" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sStart
sRange = "H" & iCell & ":H" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sStart
iRepeat = MsgBox("Добавить ещё данные?", vbYesNo)
If iRepeat = 6 Then
WD.Quit
Set WD = Nothing
GoTo RepeatLine
End If
End Sub
Private Function My_File_Open()
Dim oFile
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Выберите нужный файл"
.ButtonName = "Выбрать файл"
.InitialFileName = "C:Usersclient606_15Desktop"
' .Filters.Add "*.docx", "*.docm", "*.doc", "*.rtf"
.AllowMultiSelect = False
.Show
My_File_Open = .SelectedItems(1)
End With
End Function
Private Function CheckMonth(ByVal sText As String)
If InStr(sText, "января") >= 1 Then
sText = Replace(sText, "января", "01.")
ElseIf InStr(sText, "февраля") >= 1 Then
sText = Replace(sText, "февраля", "02.")
ElseIf InStr(sText, "марта") >= 1 Then
sText = Replace(sText, "марта", "03.")
ElseIf InStr(sText, "апреля") >= 1 Then
sText = Replace(sText, "апреля", "04.")
ElseIf InStr(sText, "мая") >= 1 Then
sText = Replace(sText, "мая", "05.")
ElseIf InStr(sText, "июня") >= 1 Then
sText = Replace(sText, "июня", "06.")
ElseIf InStr(sText, "июля") >= 1 Then
sText = Replace(sText, "июля", "07.")
ElseIf InStr(sText, "августа") >= 1 Then
sText = Replace(sText, "августа", "08.")
ElseIf InStr(sText, "сентября") >= 1 Then
sText = Replace(sText, "сентября", "09.")
ElseIf InStr(sText, "октября") >= 1 Then
sText = Replace(sText, "октября", "10.")
ElseIf InStr(sText, "ноября") >= 1 Then
sText = Replace(sText, "ноября", "11.")
ElseIf InStr(sText, "декабря") >= 1 Then
sText = Replace(sText, "декабря", "12.")
End If
sText = Replace(sText, Chr(171), "")
sText = Replace(sText, Chr(187), ".")
sText = Replace(sText, "г.", "")
sText = Replace(sText, "г", "")
sText = Replace(sText, Chr(32), "")
CheckMonth = sText
End Function
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
10 Ответ от MrBrown 17.06.2017 13:21:08
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Раз-раз-раз…
Проверка связи…
11 Ответ от MrBrown 17.06.2017 13:44:51
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Ура, есть контакт!
(да простит меня Великий Модер за спам 10-поста: не мог ответить на форуме аж трое суток (или четверо? Не помню). Причина — капча шалила: задавала вопрос за вопросом.
Теперь — непосредственно ответ для Fck_This:
Благодарю за макрос. Немного переделал его под себя. Теперь макрос спрашивает номер строки только первый раз, а потом сам переходит на новую строку.
Прошу помочь осуществить ещё пару-тройку моих «хотелок» в приложенном макросе:
1. Хотелось бы, чтобы вместо «Лист1 (3)» использовался открытый в данное время лист с любым названием, то есть ActiveSheet.
2. В функции My_File_Open() директорию
.InitialFileName = «x:Исполнительная документация по РДАкты ОСР»
обыграть так, чтобы я выбрал в диалоговом окне другую директорию, и макрос её запомнил бы на время сессии (пока не закрою файл Excel).
3. Хотелось бы, чтобы макрос, обнаружив ошибку в файле Word, из которого копируются данные, не останавливался бы, открывая окно отладки, а окрашивал бы в сбойной строке Excel неполные данные (какие уж вставились) в красный цвет и продолжал работу, снова запрашивая новый файл, естественно, с переходом на строчку вниз. Ну, а я уж после ввода всех данных вернусь к красным записям и ручками исправлю.
Спасибо.
Post’s attachments
Реестр №000+ актов ОСР на 13.06.2017_ШАБЛОН с МАКРОСОМ.xls 47 Кб, 2 скачиваний с 2017-06-17
You don’t have the permssions to download the attachments of this post.
12 Ответ от Fck_This 19.06.2017 10:14:59
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
- За сообщение: 1
Re: Копирование — вставка из Word в Excel нескольких текстов
2)Выбор папки описывается в этом макросе: внешняя ссылка. Добавлять функцию следует перед строкой
Что-то вроде:
sFolder = ФункцияПолученияПапки
Строка вызова выбора файла должна выглядеть так
sName = My_File_Open(sFolder)
А функция My_File_Open так:
Private Function My_File_Open(ByVal sFolder as String)
Dim oFile
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Выберите нужный файл"
.ButtonName = "Выбрать файл"
.InitialFileName = sFolder
' .Filters.Add "*.docx", "*.docm", "*.doc", "*.rtf"
.AllowMultiSelect = False
.Show
My_File_Open = .SelectedItems(1)
End With
End Function
1) Так и укажите в том месте, где вам необходимо чтобы устанавливался активный лист (каждый раз новый или в начале — до строки репитлайн или после)
sSheet = ActiveSheet.Name
И вместо названия листа без кавычек укажите sSheet
3) С ошибкой сложнее. Есть такие варианты:
а) Просто продолжать действие — добавить в начало программы On Error Resume Next
б) Запускать обработку ошибки — тогда надо прописывать, что делать в этом случае и возврат в точку отказа (тут вопрос тот же — на какую строку кода обычно ругается [красит в жёлтый]) — On Error GoTo Handler
и прописываем строку
Handler:
Например, If Err.Number = 99 Then
…..
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
13 Ответ от MrBrown 19.06.2017 11:29:25
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Fck_This, благодарю за помощь.
Метод «On Error Resume Next» меня вполне устроил.
И теперь, когда макрос работает без остановки, я «совершенно обленился» — прошу Вас вписать в макрос функцию
Do While sName <> «» — Loop
в нужные места, чтобы макрос не предлагал мне каждый раз директорию для выбора очередного файла Word», а на автомате обрабатывал вообще все файлы в данной директории.
Спасибо.
14 Ответ от MrBrown 19.06.2017 11:37:47
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Забыл приложить нужный файл
Post’s attachments
Реестр №000++ актов ОСР на 13.06.2017_ШАБЛОН с МАКРОСОМ.xls 47 Кб, 1 скачиваний с 2017-06-19
You don’t have the permssions to download the attachments of this post.
15 Ответ от MrBrown 20.06.2017 11:45:34
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
…а лучше того — обрабатывал бы только все выбранные мультивыбором файлы.
16 Ответ от Fck_This 20.06.2017 13:35:52
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
…а лучше того — обрабатывал бы только все выбранные мультивыбором файлы.
Sub Заполнить_строку()
Dim sName As FileDialogSelectedItems
Dim iCell As Long
Dim oWB As Workbook
On Error Resume Next
Set oWB = ThisWorkbook
iCell = InputBox("Введите номер п/п, с которого начинать заполнение")
If Len(iCell) = 0 Or IsNumeric(iCell) = False Then Exit Sub
iCell = iCell + 2
RepeatLine:
Set sName = My_Files_Open
For Each File In sName
iCell = iCell + 1
Dim WD As Object
Set WD = CreateObject("Word.Application")
WD.Visible = True
Dim oDoc As Object
Set oDoc = WD.Documents.Open(Filename:=File)
'sText = oDoc.Tables(2).Cell(1, 1).Range.Text
'Первое значение
sText = oDoc.Tables(2).Cell(1, 1).Range.Text: sText = Left(sText, Len(sText) - 1)
If InStr(sText, "№ ") >= 1 Then sText = Replace(sText, "№ ", "")
sRange = "B" & iCell & ":B" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'Второе значение
sText = oDoc.Tables(2).Cell(1, 2).Range.Text: sText = Left(sText, Len(sText) - 1)
sMonth = CheckMonth(sText)
sRange = "I" & iCell & ":I" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sMonth
'Третье значение
sText = oDoc.Tables(2).Cell(24, 2).Range.Text
sText = Left(sText, Len(sText) - 1)
If oDoc.Tables(2).Cell(25, 1).Range.Text <> 2 Then
sTextNext = oDoc.Tables(2).Cell(25, 1).Range.Text
sTextNext = Left(sTextNext, Len(sTextNext) - 1)
sTextNext = LTrim(sTextNext)
sText = RTrim(sText)
sText = sText & Chr(32) & sTextNext
End If
sRange = "E" & iCell & ":E" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'32:2 & 33:1 - Cell J
sText = oDoc.Tables(2).Cell(32, 2).Range.Text
sText = Left(sText, Len(sText) - 1)
If oDoc.Tables(2).Cell(33, 1).Range.Text <> 2 Then
sTextNext = oDoc.Tables(2).Cell(33, 1).Range.Text
sTextNext = Left(sTextNext, Len(sTextNext) - 1)
sTextNext = Trim(sTextNext)
sText = Trim(sText)
sText = sText & Chr(32) & sTextNext
End If
sRange = "J" & iCell & ":J" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sText
'50:1 - Dates - Cells G & H
sText = oDoc.Tables(2).Cell(50, 1).Range.Text
sText = Left(sText, Len(sText) - 1)
'sStart = StartAndFinish(sText, 1)
'sFinish = StartAndFinish(sText, 2)
sStart = Left(sText, InStr(sText, "окончания работ") - 1)
sStart = Right(sStart, Len(sStart) - InStrRev(sStart, "начала работ ") - 12)
sStart = Left(sStart, InStr(sStart, "г."))
sStart = CheckMonth(sStart)
sFinish = Right(sText, Len(sText) - InStr(sText, "окончания работ ") - 15)
sFinish = CheckMonth(sFinish)
sRange = "G" & iCell & ":G" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sStart
sRange = "H" & iCell & ":H" & iCell
oWB.Worksheets("Лист1 (3)").Range(sRange).Value = sStart
WD.Quit
Set WD = Nothing
Next File
iRepeat = MsgBox("Добавить ещё данные?", vbYesNo)
If iRepeat = 6 Then
GoTo RepeatLine
End If
iCell = 0
End Sub
Private Function My_Files_Open() As FileDialogSelectedItems
Dim oFile
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Выберите нужный файлы"
.ButtonName = "Выбрать файлы"
.InitialFileName = "C:Usersclient606_15DesktopНовая папка"
' .InitialFileName = "x:Исполнительная документация по РДАкты ОСР"
' .Filters.Add "*.docx", "*.docm", "*.doc", "*.rtf"
.AllowMultiSelect = True
.Show
Set My_Files_Open = .SelectedItems
End With
End Function
Private Function CheckMonth(ByVal sText As String)
If InStr(sText, "января") >= 1 Then
sText = Replace(sText, "января", "01.")
ElseIf InStr(sText, "февраля") >= 1 Then
sText = Replace(sText, "февраля", "02.")
ElseIf InStr(sText, "марта") >= 1 Then
sText = Replace(sText, "марта", "03.")
ElseIf InStr(sText, "апреля") >= 1 Then
sText = Replace(sText, "апреля", "04.")
ElseIf InStr(sText, "мая") >= 1 Then
sText = Replace(sText, "мая", "05.")
ElseIf InStr(sText, "июня") >= 1 Then
sText = Replace(sText, "июня", "06.")
ElseIf InStr(sText, "июля") >= 1 Then
sText = Replace(sText, "июля", "07.")
ElseIf InStr(sText, "августа") >= 1 Then
sText = Replace(sText, "августа", "08.")
ElseIf InStr(sText, "сентября") >= 1 Then
sText = Replace(sText, "сентября", "09.")
ElseIf InStr(sText, "октября") >= 1 Then
sText = Replace(sText, "октября", "10.")
ElseIf InStr(sText, "ноября") >= 1 Then
sText = Replace(sText, "ноября", "11.")
ElseIf InStr(sText, "декабря") >= 1 Then
sText = Replace(sText, "декабря", "12.")
End If
sText = Replace(sText, Chr(171), "")
sText = Replace(sText, Chr(187), ".")
sText = Replace(sText, "г.", "")
sText = Replace(sText, "г", "")
sText = Replace(sText, Chr(32), "")
CheckMonth = sText
End Function
Вот изменённый код из вашего файла.
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
17 Ответ от Fck_This 20.06.2017 13:37:58
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
Вводить, по-прежнему, номер по порядку из таблицы. В таком варианте код заполняет выбранную строку и следующие за ней т.е. + 1
Мультиселекс есть — выбор файлов через Ctrl (по одному) или через Shift (областью от-до)
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
18 Ответ от Fck_This 20.06.2017 13:44:12
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
- За сообщение: 1
Re: Копирование — вставка из Word в Excel нескольких текстов
Да, я только вместе «С:Новая папка» поставил свой путь
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
19 Ответ от MrBrown 20.06.2017 15:10:24
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Прекрасно! Работает.
Кое-что подправил (в строке даты окончания, там, где вставка в столбец «H», исправил sStart на sFinish).
Наверное, последняя просьба:
как бы сделать, чтобы после выбора иной, новой директории, она запоминалась бы. И при следующем запуске макроса уже открывалась бы новая директория для выбора файлов Word.
Спасибо.
p.s. Почему при копировании-вставке макроса в модуль весь русский шрифт превращается в набор вопросов, вот так: «??????? ??? ??????». Приходится вручную перебивать. Как это исправить? Где-то должна быть настройка.
Post’s attachments
Реестр №000+ актов ОСР_ШАБЛОН с МАКРОСОМ.xls 48 Кб, 1 скачиваний с 2017-06-20
You don’t have the permssions to download the attachments of this post.
20 Ответ от Fck_This 21.06.2017 09:01:27
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
p.s. Почему при копировании-вставке макроса в модуль весь русский шрифт превращается в набор вопросов, вот так: «??????? ??? ??????». Приходится вручную перебивать. Как это исправить? Где-то должна быть настройка.
Про шрифт: когда вы копируете текст на английской раскладке — кириллица превращается в вопросы. Т.е. Переключите на русский язык, а затем скопируйте текст. На каком языке производить вставку — не важно.
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
21 Ответ от Fck_This 21.06.2017 09:33:11
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
Наверное, последняя просьба:
как бы сделать, чтобы после выбора иной, новой директории, она запоминалась бы. И при следующем запуске макроса уже открывалась бы новая директория для выбора файлов Word.
Есть такая штука — «Дополнительные свойства» документа. Создаём новое свойство с конкретным именем, например «sInitialPath» (Для этого жмём «Файл» -> справа вверху «Свойства» -> «Дополнительные свойста» -> вкладка «Прочіе» Тут создаём новое свойство типа Текст.
Обращаться к этому свойству в текущем макросе можно будет так
oWB.CustomDocumentProperties(«sInitialPath»).Value (то что в строке. Пустым оно быть не может, поэтому советую создавать его с неразрывным пробелом Shift + Ctrl + пробел — потом можно будет узнать пустое ли оно т.е. = Chr(160) или нет)
+ добавляем функцию
Private Function My_Folder_Path() As String
With Application.FileDialog(msoFileDialogFolderPicker)
.ButtonName = «Выбрать папку»: .InitialFileName = «C:»
.Show
My_Folder_Path = .SelectedItems(1)
End With
End Function
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
22 Ответ от MrBrown 21.06.2017 13:54:10
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Создал новое свойство, добавил функцию. Не работает. Что-то не так сделал
А вот я нашел в инете такое:
_____________________________________________________
Ещё один вариант кода (который я использую) для выбора файла
Его отличие — функция запоминает папку, из которой последний раз выбирался файл,
и при повторном запуске диалогового окна выбора файла,
обзор папок будет начат с той папки, откуда последний раз был взят файл.
Sub AttachFile_test() ' пример использования
Filename$ = GetFilePath()
If Filename$ = "" Then Exit Sub
MsgBox "Выбран файл: " & Filename$
End Sub
Function GetFilePath(Optional ByVal Title As String = "Выберите файл для обработки", _
Optional ByVal InitialPath As String = "c:", _
Optional ByVal FilterDescription As String = "Файлы счетов", _
Optional ByVal FilterExtention As String = "*.*") As String
On Error Resume Next
With Application.FileDialog(msoFileDialogOpen)
.ButtonName = "Выбрать": .Title = Title:
.InitialFileName = GetSetting(Application.Name, "GetFilePath", "folder", InitialPath)
.Filters.Clear: .Filters.Add FilterDescription, FilterExtention
If .Show <> -1 Then Exit Function
GetFilePath = .SelectedItems(1)
folder$ = Left(.SelectedItems(1), InStrRev(.SelectedItems(1), ""))
SaveSetting Application.Name, "GetFilePath", "folder", folder$
End With
End Function
(Взято отсюда: внешняя ссылка )
__________________________________________________
Не могли бы Вы изменить переменные на нужные, применительно к моему файлу, чтобы оно работало?
Спасибо.
Post’s attachments
Реестр №000+ актов ОСР_ШАБЛОН с МАКРОСОМ.xls 51 Кб, файл не был скачан.
You don’t have the permssions to download the attachments of this post.
23 Ответ от MrBrown 21.06.2017 14:14:02
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Данный макрос хорошо работает только если все документы Word выполнены по одному типу. Чуть одна лишняя строчка в очередном документе — и всё идёт насмарку, этот документ вводится не верно.
Вопрос: а как в документе Word запретить изменение формата таблиц: добавление/удаление/объединение/разбиение строк, ячеек? Чтобы сами таблицы в документе были для пользователя «железобетонные», но пользователь мог набирать в их ячейках любой текст.
24 Ответ от MrBrown 22.06.2017 08:50:04
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
В продолжение идеи «железобетонных» таблиц:
скорее всего, мне не удастся все формы актов привести к единому формату — акты на:
— разбивку осей
— котлованы
— песчаные подсыпки
— подбетонки
— опалубки…..
И каждый акт требует своего количества тех или иных строчек для заполнения.
Самые сбойные — это ячейки дат начала и окончания работ, потому что выше этих строк количество других строчек в разных актах различное.
Как бы сделать, чтобы макрос находил нужную ячейку по признаку содержания текста:
«1. К освидетельствованию»;
«2. Работы выполнены»;
«5. Даты:».
25 Ответ от Fck_This 22.06.2017 11:34:50
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
MrBrown пишет:
В продолжение идеи «железобетонных» таблиц:
скорее всего, мне не удастся все формы актов привести к единому формату — акты на:
— разбивку осей
— котлованы
— песчаные подсыпки
— подбетонки
— опалубки…..
И каждый акт требует своего количества тех или иных строчек для заполнения.
Самые сбойные — это ячейки дат начала и окончания работ, потому что выше этих строк количество других строчек в разных актах различное.
Как бы сделать, чтобы макрос находил нужную ячейку по признаку содержания текста:
«1. К освидетельствованию»;
«2. Работы выполнены»;
«5. Даты:».
Можно и так сделать — проверять содержимое каждой ячейки таблицы на содержание текста-маркера. Тогда не будет привязки к конкретной ячейке. Я бы остановился на этом варианте, если не хочется заморачиваться, хотя в идеале сделать шаблон формата .dot на все виды работ. Т.е. — перед запуском файла у вас спросят «Какой вид работы» и предложит варианты: 1…, 2…, 3… и т.д. На основе выбора будет создан файл Word с определённым числом ячеек, в котором было бы разрешено редактировать только определённые области — для ввода данных. Тогда было бы единообразие всех документов.
Или можно сделать текстовые поля ввода, которые необходимо будет заполнить, а всё остальное будет запрещено редактировать. (Вот здесь есть примеры разных видов защиты документа внешняя ссылка
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
26 Ответ от Fck_This 22.06.2017 12:21:00
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
Вот файл, в котором работает запоминание папки. Та функция выбора папки — не запоминает папку при завершении работы программы. В данном файле будет работать запоминание начальной папки даже после завершения работы Эксель. Если вам не нужно будет использовать функцию автозаполнения остальных ячеек таблицы — просто закомментируйте строку
Call Fill_Like_Other(iCell, oWB)
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
27 Ответ от Fck_This 22.06.2017 12:22:16
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
Забыл файл прикрепить.
Post’s attachments
Реестр №000++ актов ОСР на 13.06.2017_ШАБЛОН с МАКРОСОМ.xls 54.5 Кб, 2 скачиваний с 2017-06-22
You don’t have the permssions to download the attachments of this post.
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
28 Ответ от Fck_This 22.06.2017 13:47:15
- Fck_This
- генерал-полковник
- Неактивен
- Откуда: Минск, Беларусь
- Зарегистрирован: 13.07.2016
- Сообщений: 648
- Поблагодарили: 97
Re: Копирование — вставка из Word в Excel нескольких текстов
О ещё 1 вариант вспомнил для блокировки. Можно сделать полями необходимые элементы, а заполняется пусть документ из формы с последующим внесением в соответствующие свойства — куда вводим наименования, даты и проч.
Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871
29 Ответ от MrBrown 22.06.2017 15:42:24
- MrBrown
- лейтенант
- Неактивен
- Зарегистрирован: 13.06.2017
- Сообщений: 41
Re: Копирование — вставка из Word в Excel нескольких текстов
Увы, варианты с формами .dot, полями и пр. — не подойдут, так как нередко приходится пользоваться сторонними актами Word, очень похожими и, в то же время, «кривыми» в отношении нашего макроса.
Но во всех актах тексты, выполненные жирным шрифтом — одинаковые, стандартные, поэтому и надо от них отталкиваться.
Вот, думаю, точнее, прошу, организовать кодом часть макроса с таким алгоритмом:
1. Поиск (Find) ячейки, содержащей часть текста «…к освидетельствованию предъявлены…»
2. Переход на следующую ячейку правее (offset)
3. Выуживание текста из этой ячейки
4. копирование текста
5. вставка текста в соответствующую ячейку реестра Excel
6. продолжение сканирования последующих ячеек/строчек вниз по документу до ячейки, содержащей текст «…работы выполнены…», исключая строки с высотой шрифта менее 12 или с текстом «наименование скрытых работ».
7. последовательная вставка, точнее, добавление, найденных текстов в ту же ячейку реестра Excel.
Очень хочется разобраться в коде такого алгоритма. Поэтому прошу закомментировать строчки кода.
Спасибо.
Сообщений [ 29 ]
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Похожие темы
- Копирование данных в Word из Excel
- Макрос на слияние в word из нескольких excel
- Как сделать автоматическое копирование ячейки excel в word.
- вставка и копирование по нажатию CTRL+C/+V
- Копирование и вставка русского текста из редактора VBA
- Копирование и вставка элемента из одного документа в другой
- Слияние из нескольких источников Excel
- Рассылка — получение данных из нескольких вкладок excel
При копировании таблиц из Excel в Word, а также при переносе значений ячеек из таблиц Excel в таблицы Word могут возникать различные неприятности в виде несовпадения форматов, размеров и просто некорректной вставки скопированных данных. Для качественного переноса данных из Excel в Word необходимо знать несколько моментов.
Для переноса в документ Word данных всего рабочего листа рабочей книги Excel, необходимо перейти на вкладку «Вставка» и в группе кнопок «Текст» нажать кнопку «Объект». На вкладке «Создание из файла» диалогового окна «Вставка объекта»,
при помощи кнопки «Обзор» необходимо найти рабочую книгу с данными для переноса. Стоит отметить, что в рабочей книге активным должен быть тот лист, на котором содержатся данные для переноса в документ Word. При этом вставка данных файла в документ осуществляется так, что их можно редактировать, используя приложение, в котором они были созданы. Другими словами в документе Word появляется область приложения Excel, которая активируется двойным кликом левой кнопки мыши. При этом лента Word заменяется лентой Excel и в этой области документа Word можно внести изменения, используя средства приложения Excel.
Если в диалоговом окне «Вставка объекта» установить флажок в поле «Связь с файлом», то в документе Word будут отображаться в автоматическом режиме изменения, внесенные в исходный файл.
Как перенести таблицу или диапазон ячеек из Excel в Word?
Чтобы перенести таблицу или любой произвольный диапазон ячеек с данными из рабочей книги Excel в документ Word, необходимо в приложении Excel скопировать диапазон ячеек, перейти в приложение Word и на вкладке «Главная» в группе кнопок «Буфер обмена» раскрыть меню кнопки «Вставить» и выбрать один из доступных вариантов вставки, такие как, сохранять исходное форматирование, использовать стили конечного фрагмента, сохранить как рисунок, сохранить только текст и некоторые другие.
Кроме перечисленных вариантов доступен пункт «Специальная вставка», при помощи которого можно вставить скопированную таблицу или диапазон, как объект, а также выбрать другие варианты вставки.
Как перенести данные из Excel в Word без ячеек?
При копировании диапазона ячеек на листе рабочей книги Excel с последующей вставкой в документ Word, значения ячеек переносятся из одного приложения в другое в виде таблицы, то есть с сеткой для ячеек, что не всегда удобно. Чтобы перенести данные без ячеек достаточно сделать вставку не в Word, а в обычный блокнот и уже оттуда переносить в Word.
Как перенести несколько таблиц из Excel в Word?
С помощью надстройки для Excel можно осуществлять программный перенос любого количества таблиц, из табличного редактора в текстовый. Читать подробнее.
быстрый перенос нескольких таблиц из Excel в Word
Как выборочно перенести данные из Excel в Word (автоматически)?
В отдельных случаях, когда возникает необходимость заполнить отдельные строки/столбцы таблицы в документе Word данными из Excel, от исполнения многократного действия «Скопировать/Вставить» поможет уйти надстройка для Word по автоматическому заполнению таблиц Word данными из Excel.
Например, при заполнении спецификаций к проектной документации, необходимо выборочно перенести информацию из базы данных рабочей книги Excel в документ Word. При этом нужно перенести не всю таблицу Excel, а только некоторые её строки, при том, что они не расположены в одном диапазоне, который можно было бы скопировать и вставить за одно действие. Надстройка позволяет автоматизировать процесс выборочного переноса данных из таблицы Excel в таблицу Word.
скачать надстройку для Word по заполнению таблицы документа Word данными из Excel
После выбора книги Excel (базы данных) и рабочего листа, содержащего данные для переноса в таблицу документа Word, в диалоговом окне отображаются значения ячеек из первых двух столбцов листа базы данных. Количество отображаемых столбцов пользователь может регулировать самостоятельно, изменяя номера первого и последнего столбца. В зависимости от этого изменяется и содержимое диалогового окна. Первая строка рабочего листа файла базы данных служит заголовками для столбцов в диалоговом окне. Для того, чтобы перенести данные из диалогового окна, необходимо выделить нужные строки, используя левую кнопку мыши и клавиши Ctrl и/или Shift на клавиатуре.
После пуска программы значения всех выделенных в диалоговом окне строк переносятся в ячейки таблицы документа Word, начиная с той ячейки, в которой находится курсор мыши. Надстройка дает возможность выборочного заполнения таблиц в редакторе Word данными из Excel. Примером использования этой надстройки может служить заполнение спецификаций оборудования и материалов к проектной документации, когда для заполнения документов по разделам необходимо выборочно перенести данные из баз данных, созданных на базе рабочих книг Excel в таблицу документа Word.
Для пользователей, использующих широкоформатные мониторы, предусмотрена возможность изменения размеров диалогового окна под ширину окна приложения Word.
Как перенести отдельные значения из Excel в Word?
Для автозаполнения документов Word данными из Excel можно использовать готовые решения (надстройки) как для Word, так и для Excel. Эти решения позволяют автоматически генерировать документы Word на основе данных, содержащихся на листе рабочей книги Excel. В этих решениях предусмотрена возможность пакетного заполнения документов (для случаев, когда на основе одного набора исходных данных нужно заполнять несколько различных документов, например, договор, доп. соглашение, доверенность и так далее).
Надстройка для Word
автозаполнение документов Word данными из Excel
Надстройка для Excel
автоматическое заполнение документов Word на основе данных из Excel
Обе надстройки имеют примерно одинаковый функциал и различаются незначительно.