Специальное копирование значений и формул
Все мы умеем копировать значения и формулы в Excel , но иногда нужно скопировать значение, которое выдает формула или саму формулу без смещения ссылок и диапазонов. Давайте посмотрим как это сделать.
Копирование значений
Чтобы скопировать значение, а не формулу нужно скопировать ячейку, а потом воспользоваться Специальной вставкой , которая поможет нам вставить самые значения. Выглядит это примерно так:
Копирование формул
Чтобы скопировать формулу без смещения ссылок можем скопировать формулу не через ячейку, а в самой ленте для формул.
Затем вставить ее в любую ячейку, и формула снова будет ссылаться на те же ячейки, даже без предварительного фиксирования строк и столбцов в формуле.
Однако такой способ не подойдет, если мы захотим скопировать много формул без смещения ссылок. В данном случае нам поможет один хитрый прием. Итак:
Убрать формулу в Excel оставив значения
Работа с формулами в Экселе позволяет значительно облегчить и автоматизировать различные вычисления. Вместе с тем, далеко не всегда нужно, чтобы результат был привязан к выражению. Например, при изменении значений в связанных ячейках, изменятся и итоговые данные, а в некоторых случаях это не нужно. Кроме того, при переносе скопированной таблицы с формулами в другую область значения могут «потеряться». Ещё одним поводом их спрятать может служить ситуация, когда вы не хотите, чтобы другие лица видели, как проводятся в таблице расчеты. Давайте выясним, какими способами можно удалить формулу в ячейках, оставив только результат вычислений.
Процедура удаления
К сожалению, в Excel нет инструмента, который моментально убирал бы формулы из ячеек, а оставлял там только значения. Поэтому приходится искать более сложные пути решения проблемы.
Способ 1: копирование значений через параметры вставки
Скопировать данные без формулы в другую область можно при помощи параметров вставки.
- Выделяем таблицу или диапазон, для чего обводим его курсором с зажатой левой кнопкой мыши. Пребывая во вкладке «Главная», делаем щелчок по значку «Копировать», который размещен на ленте в блоке «Буфер обмена».
После выполнения этой процедуры диапазон будет вставлен, но только в виде значений без формул. Правда при этом потеряется также и исходное форматирование. Поэтому форматировать таблицу придется вручную.
Способ 2: копирование специальной вставкой
Если вам нужно сохранить исходное форматирование, но вы не хотите тратить время на ручную обработку таблицы, то существует возможность для этих целей использовать «Специальную вставку».
- Копируем тем же способом, что и прошлый раз содержимое таблицы или диапазона.
- Выделяем всю область вставки или её левую верхнюю ячейку. Делаем щелчок правой кнопкой мыши, тем самым вызывая контекстное меню. В открывшемся списке выбираем пункт «Специальная вставка». Далее в дополнительном меню жмем на кнопку «Значения и исходное форматирование», которая размещается в группе «Вставить значения» и представляет собой пиктограмму в виде квадрата, где изображены цифры и кисточка.
После этой операции данные будут скопированы без формул, но при этом сохранится исходное форматирование.
Способ 3: удаление формулы из исходной таблицы
До этого мы говорили, как убрать формулу при копировании, а теперь давайте выясним, как её удалить из исходного диапазона.
- Производим копирование таблицы любым из тех методов, о которых шел разговор выше, в пустую область листа. Выбор конкретного способа в нашем случае значения иметь не будет.
- Выделяем скопированный диапазон. Щелкаем по кнопке «Копировать» на ленте.
После выполнения указанных действий все ненужные элементы будут удалены, а формулы из исходной таблицы исчезнут.
Способ 4: удаление формул без создания транзитного диапазона
Можно сделать ещё проще и вообще не создавать транзитный диапазон. Правда в этом случае нужно действовать особенно внимательно, ведь все действия будут выполняться в границах таблицы, а это значит, что любая ошибка может нарушить целостность данных.
- Выделяем диапазон, в котором нужно удалить формулы. Кликаем по кнопке «Копировать», размещенной на ленте или набираем на клавиатуре комбинацию клавиш Ctrl+C. Эти действия равнозначны.
Таким образом, все данные будут скопированы и тут же вставлены, как значения. После этих действий формул в выделенной области не останется.
Способ 5: использование макроса
Для удаления формул из ячеек можно также использовать макросы. Но для этого нужно сначала активировать вкладку разработчика, а также включить саму работу макросов, если они у вас не активны. Как это сделать, можно узнать в отдельной теме. Мы же поговорим непосредственно о добавлении и использовании макроса для удаления формул.
- Переходим во вкладку «Разработчик». Кликаем по кнопке «Visual Basic», размещенной на ленте в блоке инструментов «Код».
Sub Удаление_формул() Selection.Value = Selection.Value End Sub
После этого закрываем окно редактора стандартным способом, нажав на кнопку в правом верхнем углу.
После этого действия все формулы в выделенной области будут удалены, а останутся только результаты вычислений.
Урок: Как включить или отключить макросы в Excel
Урок: Как создать макрос в Excel
Способ 6: Удаление формулы вместе с результатом
Впрочем, бывают случаи, когда нужно удалить не только формулу, но и результат. Сделать это ещё проще.
- Выделяем диапазон, в котором размещены формулы. Кликаем правой кнопкой мыши. В контекстном меню останавливаем выбор на пункте «Очистить содержимое». Если вы не хотите вызывать меню, то можно просто после выделения нажать клавишу Delete на клавиатуре.
Как видим, существует целый ряд способов, с помощью которых можно удалить формулы, как при копировании данных, так и непосредственно в самой таблице. Правда, штатного инструмента Excel, который автоматически убирал бы выражение одним кликом, к сожалению, пока не существует. Таким способом можно удалить только формулы вместе со значениями. Поэтому приходиться действовать обходными путями через параметры вставки или же с применением макросов.
Как скопировать строку с формулами в Excel без изменений значений
В процессе работы с Microsoft Excel у пользователей возникает необходимость внесения дополнительных данных. Для этого необходимо добавлять или копировать строки с формулами.
Кажется, это простая и понятная процедура. Но часто возникает вопрос о том, как добавить новую строку с формулами в Excel с определенными условиями. Например, без изменения адресов в формулах с относительными ссылками на ячейки и т.п. На готовых примерах рассмотрим оригинальные решения этих задач.
Как добавить новую строку с формулами в Excel?
Пускай мы добавили формулы в одну строку или в несколько. Теперь нам нужно скопировать все строки с формулами. Как это сделать при добавлении новой строки?
- Выделяем ту строку, которая содержит формулы. В нашей ситуации это строка под номером 3. Нам необходимо, чтобы остальные строки содержали в себе такие же формулы.
- Нажимаем на выделенную область правой кнопкой мышки. Из контекстного меню нужно выбрать опцию «Копировать» (или жмем CTRL+C).
- После этого следует выделить следующую одну (или несколько) нижнюю строку, куда будет вставлена новая с формулами.
- Щелкнуть по заголовку выделенной строки правой кнопкой мышки и выбрать опцию вставить скопированные ячейки (или нажать комбинацию клавиш CTRL+SHIFT+«=»).
Заметьте, значения ячеек не заменились а добавилась в середину таблицы новая строка со старыми значениями и формулами.
Как копировать без изменения формул в Excel?
Часто при копировании относительные формулы (т.е. те, в которых нет знака «$») «подставляют» другие значения. А что делать, если вы не хотите изменять значение формул?
Можно сделать все ссылки в формулах абсолютными. Такие формулы будут копироваться неизменно, без изменения данных. Чтобы сделать ссылки абсолютными, добавляем к ним знак «$».
Ставим перед буквами и перед числами знак доллара – и получаем абсолютные ссылки в формулы, значения в которых не будут изменяться при копировании.
На пример в такой таблице ссылка на наценку ($B$1) не будет изменятся при копировании на новых строках, так как она является абсолютной, а не относительной:
Но в некоторых больших и сложных таблицах слишком много формул, которые нужно скопировать и переместить. И чтобы во всех ссылках проставить знак «$» нужно потратить много времени.
Для решения данной задачи можно воспользоваться хитрым способом. До копирования заменить все знаки «=» на символ «#».
Для «активации» работы формул используется знак «равно» (или «=»). Чтобы деактивировать их на время копирования поменяем = на #. А после копирования вернем все на свои места. Это позволит нам обойти автоматическую смену адресов в относительных ссылках при копировании.
- Нажимаем Ctrl+H (вызываем окно «Главная»-«Найти и выделить»-«Заменить»).
- Необходимо в поле «Найти» указать символ =, а в поле «Заменить на» символ #. И жмем «Заменить все».
- После этого вы можете скопировать необходимую строку, а в ее формулах не изменятся адреса ссылок на ячейки, так как они временно деактивированные.
- Снова жмем комбинацию горячих клавиш «Ctrl+H», но теперь указываем в полях обратные значения: найти «#» и заменить на «=». Система вернет все на свои места
В результате при копировании во всех строках ссылки формул остались неизменными.
Обычно, когда вы копируете ячейки с формулами и вставляете их в другие ячейки, формулы вставляются автоматически. Иногда может потребоваться скопировать отображаемые значения только в ячейки без формул. Эта статья предоставит вам методы копирования ячейки как текстового значения, а не формулы в Excel.
Скопируйте ячейку как текстовое значение, а не формулу с помощью встроенной функции Excel
Копировать ячейку как текстовое значение, а не формулу с Kutools for Excel
Скопируйте ячейку как текстовое значение, а не формулу с помощью встроенной функции Excel
Вы можете скопировать ячейку как текстовое значение только с помощью встроенной функции Excel, сделайте следующее.
1. Выберите диапазон, который вы хотите скопировать только как текстовое значение, и нажмите Ctrl + C.
2. Щелкните, чтобы выбрать пустую ячейку для размещения скопированных ячеек.
3. Затем нажмите Главная > Вставить > Ценности. Смотрите скриншот:
Затем скопированные ячейки вставляются как значения в пустые ячейки, выбранные на шаге 2.
Копировать ячейку как текстовое значение, а не формулу с Kutools for Excel
Помимо описанного выше метода, здесь я представляю удобную надстройку — Kutools for Excel, С Копировать диапазоны полезности Kutools for Excel, вы можете не только копировать и вставлять ячейки как текст, но также форматировать, комментарии и т. д. в Excel. Просмотрите подробную информацию о копировании ячейки как текста в Excel.
1. Выделите диапазон с ячейками, в которые нужно вставить только текст, а затем щелкните Кутулс > Копировать диапазоны. Смотрите скриншот:
2. в Копировать несколько диапазонов диалоговое окно, проверьте Отображаемое значение вариант, а затем щелкните OK кнопку.
3. Выберите пустую ячейку для поиска скопированных ячеек, а затем щелкните OK. Смотрите скриншот:
Затем копируются и вставляются только отображаемые значения выбранных ячеек.
Кроме того, с Копировать несколько диапазонов утилиту, вы можете одновременно копировать и вставлять ячейки с исходной высотой строк и шириной столбцов.
И вы можете скопировать несколько выбранных диапазонов одновременно с помощью этой утилиты в Excel. См. Показанный снимок экрана
Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Связанная статья:
- Как скопировать данные ячеек с высотой строки и шириной столбца в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (2)
Оценок пока нет. Оцените первым!
LeanidaM Пользователь Сообщений: 3 |
Здравствуйте! У меня срочная проблема, нужно скопировать текст из ячейки с формулой. Формула имеет такой вид: =CERCA.VERT(A9;Tables!$D$2:$G$14;E9+1) |
vikttur Пользователь Сообщений: 47199 |
#2 24.08.2016 21:02:54
Копировать, вставить как значение
А мы вообще ничего не видим, только Ваши слова в сообщении |
||||
LeanidaM Пользователь Сообщений: 3 |
#3 24.08.2016 21:20:13
Ой, спасибо, а ларчик просто открывался. И ведь щелкала же на разные опции |
||
vikttur Пользователь Сообщений: 47199 |
#4 24.08.2016 21:23:33
Если формула показывает текст, то лист в книге есть. очень скрыт и увидеть его можно только через редактор VBA. Или с помощью макроса. |
||
LeanidaM Пользователь Сообщений: 3 |
#5 24.08.2016 21:27:48
Ага, нашла, спасибо! |
||
Как копировать в Экселе — простые и эффективные способы
Здравствуйте, уважаемые читатели! В этой статье я расскажу как копировать и вырезать ячейки в Excel. С одной стороны, Вы узнаете максимум информации, которую я считаю обязательной. Ежедневной. С другой стороны, она станет фундаментом для изучения более прогрессивных способов копирования и вставки. Потому, если хотите использовать Эксель «на всю катушку», прочтите до конца этот пост и следующий!
Сначала разберемся с принципами копирования и переноса информации, а потом углубимся в практику.
И так, чтобы скопировать одну или несколько ячеек – выделите их и выполните операцию копирования (например, нажав Ctrl+C ). Скопированный диапазон будет выделен «бегающей» рамкой, а данные из него – перемещены в буферы обмена Windows и Office. Установите курсор в ячейку для вставки и выполните операцию «Вставка» (к примеру, нажмите Ctrl+V ). Информация из буфера обмена будет помещена в новое место. При вставке массива – выделите ту клетку, в которой будет располагаться его верхняя левая ячейка. Если в ячейках для вставки уже есть данные – Эксель заменит их на новые без дополнительных уведомлений.
Если вы выполняете копирование – исходные данные сохраняются, а если перемещение – удаляются. Теперь давайте рассмотрим все способы копирования и переноса, которые предлагает нам Эксель.
Копирование с помощью горячих клавиш
Этот способ – самый простой и привычный, наверное, для всех. Клавиши копирования и вставки совпадают с общепринятыми в приложениях для Windows:
- Ctrl+C – копировать выделенный диапазон
- Ctrl+X – вырезать выделенный диапазон
- Ctrl+V – вставить без удаления из буфера обмена
- Enter – вставить и удалить из буфера обмена
Например, если нужно скопировать массив А1:А20 в ячейки С1:С20 – выделите его и нажмите Ctrl+C (при перемещении – Ctrl+X ). Установите курсор в ячейку C1 и нажмите Ctrl+V . Информация будет вставлена и останется в буфере обмена, можно делать повторную вставку в другом месте. Если вместо Ctrl+V нажать Enter — данные тоже будут вставлены, но пропадут из буфера обмена, исчезнет «бегающее» выделение.
Копирование с помощью контекстного меню
Команды копирования, вырезания и вставки есть и в контекстном меню рабочего листа Excel. Чтобы скопировать диапазон — выделите его и кликните правой кнопкой мыши внутри выделения. В контекстном меню выберите Копировать или Вырезать . Аналогично, для вставки скопированной информации, в ячейке для вставки вызовите контекстное меню и выберите Вставить (либо переместите туда курсор и нажмите Enter ).
Команды копирования в контекстном меню Эксель
Копирование с помощью команд ленты
Те же действия можно выполнить и с помощью команд ленты:
- Копирование: Главная – Буфер обмена – Копировать
- Вырезание: Главная – Буфер обмена – Вырезать
- Вставка: Главная – Буфер обмена – Вставить
Копирование в Эксель с помощью ленточных команд
Последняя команда из перечисленных – комбинированная, она имеет дополнительные опции вставки (см. рис. выше) вставить только формулы:
- Вставить – вставить ячейку полностью (значения, формулы, форматы ячейки и текста, проверка условий)
- Формулы – вставить только формулы или значения
- Формулы и форматы чисел – числа, значения с форматом числа как в источнике
- Сохранить исходное форматирование – вставить значения, формулы, форматы ячейки и текста
- Без рамок – все значения и форматы, кроме рамок
- Сохранить ширину столбцов оригинала – вставить значения, формулы, форматы, установить ширину столбца, как у исходного
- Транспонировать – при вставке повернуть таблицу так, чтобы строки стали столбцами, а столбцы – строками
- Значения – вставить только значения или результаты вычисления формул
- Значения и форматы чисел – формулы заменяются на результаты их вычислений в исходном формате чисел
- Значения и исходное форматирование формулы заменяются на результаты их вычислений в исходном формате чисел и ячеек
- Форматирование – только исходный формат, без данных
- Вставить связь – вставляет формулу, ссылающуюся на скопированную ячейку
- Рисунок – вставляет выделенный диапазон, как объект «Изображение»
- Связанный рисунок – Вставляет массив, как изображение. При изменении ячейки-источника – изображение так же изменяется.
Все перечисленные команды являются инструментами Специальной вставки .
Копирование перетягиванием в Эксель
Этот способ – самый быстрый и наименее гибкий. Выделите массив для копирования и наведите мышью на одну из его границ. Курсор примет вид четырёхнаправленной стрелки. Хватайте мышью и тяните ячейки туда, куда хотите их переместить.
Чтобы скопировать массив – при перетягивании зажмите Ctrl . Курсор из четырехнаправленного превратится в стрелку со знаком «+».
Копирование автозаполнением
Работу автозаполнения я уже описывал в посте Расширенные возможности внесения данных. Здесь лишь немного напомню и дополню. Если нужно скопировать данные или формулы в смежные ячейки – выделите ячейку для копирования найдите маленький квадратик (маркер автозаполнения) в правом нижнем углу клетки. Тяните за него, чтобы заполнить смежные клетки аналогичными формулами или скопировать информацию.
Маркер автозаполнения
Есть еще один способ – команда Заполнить . Выделите массив для заполнения так, чтобы ячейка для копирования стояла первой в направлении заполнения. Выполните одну из команд, в зависимости от направления заполнения:
- Главная – Редактирование – Заполнить вниз
- Главная – Редактирование – Заполнить вправо
- Главная – Редактирование – Заполнить вверх
- Главная – Редактирование – Заполнить влево
Все выделенные ячейки будут заполнены данными или формулами из исходной.
Вот я и перечислил основные способы копирования и вставки. Как я обещал, далее мы рассмотрим специальные возможности копирования и вставки, о которых не знают новички. Читайте, они простые в использовании, а пользы приносят очень много.
Понравилась статья? Порекомендуйте другу и вместе с ним подписывайтесь на обновления! Уже написано очень много интересного и полезного материала, но лучшие посты еще впереди!
Как скопировать только обычный текст ячеек в Excel?
Я создаю рабочий лист Excel, где пользователь нажимает кнопку команды, которая копирует заданный диапазон ячеек. Затем пользователь вставляет содержимое в веб-приложение с помощью Firefox или IE. Дизайн веб-приложения вышел из моего контроля, и в настоящее время текстовые поля, которые используются для ввода данных, представляют собой богатые текстовые входы. Это приводит к тому, что текст выглядит нечетным и отформатирован как Excel, когда пользователь вставляет в него.
Есть ли способ в Excel с помощью VBA копировать только обычный текст выбранных ячеек? Без форматирования, без табуляции или границ ячеек, только текст и ничего больше. Мой текущий макрос копирования скопирует ячейки, открывает Блокнот, вставляет в Блокнот, а затем копирует из Блокнота, чтобы получить простой текст. Это очень нежелательно, и я надеюсь, что это можно сделать в самом Excel. Пожалуйста, дайте мне знать, спасибо!
Что-то вроде этого?
Copy копирует всю часть, но мы можем управлять тем, что вставлено.
То же самое относится и к объектам Range .
AFAIK, нет никакого несложного способа скопировать только текст диапазона, не назначая его объекту VBA (переменная, массив и т.д.). Существует трюк, который работает для одной ячейки и только для чисел и текста (без формул):
но большинство разработчиков избегают SendKeys , потому что это может быть неустойчивым и непредсказуемым. Например, приведенный выше код работает только тогда, когда макрос выполняется от excel, а не от VBA . При запуске от VBA , SendKeys открывается браузер объектов, что и делает F2 при нажатии на вид VBA:) Кроме того, для полного диапазона вам придется перебирать ячейки, копировать их один за другим и вставьте их один за другим в приложение. Теперь, когда я думаю лучше, я думаю, что это перебор.
Использование массивов, вероятно, лучше. Это моя любимая ссылка на то, как вы передаете диапазоны в массивы vba и обратно: http://www.cpearson.com/excel/ArraysAndRanges.aspx
Лично я бы избегал SendKeys и использовал массивы. Должно быть возможно передать данные из массива VBA в приложение, но трудно сказать, не зная больше о приложении.
Как скопировать многострочный текст из Excel без кавычек?
Когда вы создаете многострочную строку в ячейке excel (используя Alt-Enter), если вы скопируете эту ячейку в текстовый редактор, excel автоматически добавит двойные кавычки («) вокруг полной строки, то есть:
Когда вы копируете только столбец со значениями в текстовый редактор, получаем:
Как я могу сказать excel, чтобы не добавлять цитату вокруг многострочного текста при копировании из excel?
Изменить: Редакторы текста, которые я пробовал, отображают это поведение:
- MS Word
- Wordpad
- Блокнот
- Notepad ++
- SQL Server Studio
Если у вас есть предложение по использованию конкретного редактора (или одного из выше), пожалуйста, скажите мне, какой из них & amp; как его использовать .
15 ответов
Как ваш текст будет скопирован в Word, зависит от выбранного варианта форматирования. В Word 2010 параметр формата по умолчанию — HTML Format . Существует четыре основных способа копирования текста в Word. ( Formatted Text (RTF) , Unformatted Text , HTML Format , & amp; Unformatted Unicode Text )
Вставка в форматированный текст создает мини-таблицы в Word. (Синие контуры.)
Чтобы получить неформатированный текст в Word без двойных кавычек:
- Вставить текст в форматированном виде, чтобы он создавал таблицу.
- Выберите таблицу и скопируйте ее.
- Переместитесь в пустое место и вставьте новую копию как неформатированный текст. ( Alt + E , S )
Это также работает, чтобы вставить результаты без кавычек в другой редактор. Просто измените шаг 3, чтобы вставить его в другой редактор.
Однако, скорее всего, будет проще вставить как обычно, а затем использовать Replace, чтобы найти и удалить все двойные кавычки.
Если вы скопируете диапазон из Excel (2010) в Word, вы получите текст по своему желанию, без котировок. Затем вы можете скопировать его снова в конечный пункт назначения, например блокнот. Excel- > Word- > Блокнот предоставит вам те результаты, которые вы хотите.
Самый простой способ, который я нашел, — объединить ячейки, которые вы хотите быть на нескольких линиях, с чем-то «специальным» между ними, а не cr / lf. Тильда обычно хорошо работает для меня. Например, в столбце G:
В этом примере конечной целью является получение текстового файла со значениями из E1 на одной строке, за которым следует F1 на новой строке, за которым следуют E2, F2 и т. д. Конечно, вы могли бы так же легко построить G1 из других значений, только что включенных
для разрыва строки.
Затем, чтобы получить многострочный текстовый файл в Notepad ++
- Вырезать и вставить в Notepad ++
- Ctrl-H, чтобы открыть диалог замены
- Убедитесь, что выбран вариант расширенного поиска.
- Замените все
на n (или r n, если хотите)
Это не проблема Excel. Как и предыдущий плакат, он просто выводит достоверные данные CSV. Это будет в редакторе, в котором вы его заложите, чтобы ухаживать за его форматированием. Я бы предложил использовать что-то немного умнее, чем блокнот . Вы могли бы использовать MS Word как промежуток между Excel и любым текстовым редактором, который вы хотели бы использовать помимо слова.
У меня была такая же проблема и я использовал следующие шаги (я использую Office 2007, но я думаю, что это работает и для более поздних версий):
- Выбрал диапазон ячеек, содержащих многострочный текст из Excel, который я хочу вставить в другой редактор, а затем выберите Копировать.
- В Word 2007 я вставил скопированный диапазон ячеек в таблицу.
- Выберите таблицу.
- На вкладке «Макет» выберите «Выбрать-таблицу».
- В разделе данных выберите «Преобразовать в текст» и выберите «Маркеры абзаца».
Результат — исходная таблица, преобразованная в текст, с символами новой строки в конце каждой строки и отметками абзаца в конце последней строки из каждой ячейки.
Вы можете сохранить документ Excel в качестве веб-страницы, а затем скопировать текст с веб-страницы. Это хорошо работает для одного столбца данных, но убедитесь, что ширина столбца установлена на ширину текста, иначе он добавит разрывы строк.
У меня была эта проблема сегодня, поэтому я подумал, что отправлю ответ, если кто-то все еще застрял на нем.
Вы можете обойти это, выделив ячейку, а затем скопируйте и вставив код непосредственно из текстовой панели вверху, щелкнув по ней и выделив все это вручную.
Я делал это только в Excel 2010, поэтому я не знаю, будет ли это работать для более ранних версий.
Невозможно подготовить его к CSV-файлу, потому что они были бы довольно глупыми, настолько сложными, как для верхних и хвостовых ячеек, которые содержат непечатаемые символы с кавычками, и не делают то же самое для ячеек, содержащих запятые ( которого нет).
В любом случае. Я столкнулся с этой проблемой, когда попытался создать метки адресов из полей «Имя, фамилия, адресная строка 1 . »:
CHAR(13) , а затем CHAR(10) — новый абзац при просмотре текстового файла с шестнадцатеричным редактором.
Мой путь вокруг этого досады заключается в следующем:
- скопируйте и вставьте ячейки / столбец в Word.
- Используйте раскрывающийся список символа буфера обмена (внизу слева от страницы или вставленный текст), чтобы выбрать, Сохранять только текст .
- Выберите вложенный текст. Вам нужно сделать это, только если документ содержит другие материалы, которые могут быть затронуты.
- Нажмите Ctrl + H , чтобы открыть диалоговое окно Найти и заменить .
- В поле Найти, что введите тип поля: «^p» (все четыре символа).
Возможно, вам придется перейти в Инструменты — > AutoCorrect, а затем вкладки AutoFormat, чтобы убедиться, что он не изменит ваши прямые кавычки) - В поле Заменить с помощью введите: ^p (2 символа)
- Теперь нажмите Заменить все ,
- Наконец, вам придется вручную удалите двойные кавычки в начале и конце импортированных блок
Это основано на Office 2003, поэтому ваша версия Microsoft Word может немного отличаться.
Копирование много строчного текста из ячейки Excel 2010
Добрый день.
В Excel 2010, в ячейке таблицы вставлен многосторчный текст, напр:
Значение1
Значение2
Значение3
Значение4
Если поместить курсор на эту ячейку (одинарный щелчок на ячейке, а не двойной!), ее содержимое будет скопировано в таком виде:
(т.е. единой строкой, без преходов строк).
Вопрос: можно ли настроить Excel таким образом, чтобы при подобном копировании, в буфер попадала не одна строка, заключенная в кавычки, а учитывались переходы строк, и копировался текст с переходами строк?
Копирование данных из файла Excel 2010
Здравствуйте. Подскажите,можно ли без использования VBA организовать копирование ячейки из другого.
Разделение содержимого 1й ячейки на много в столбец в excel
Доброго времени суток, хочу спросить у вас можно ли разделить в excel 12значное число без пробелов.
Не считываются данные с ячейки excel 2010
Есть проект на vb 2010 express, цель автоматизировать рутину: копирование одних ячеек из одной.
Копирование содержимого ячейки таблицы Excel в закладку Word
Задача. Нужно скопировать значение ячейки (например А1) в документ word в определенное место. Место.
Excel 2010 Ссылки на ячейки в других файлах в сети сбиваются
Имеется общая сетевая папка, в ней 2 файла Exel (.xlsx,.xlsa,.xlsb — тестировалось на разных). В.
Как преобразовать все ячейки листа excel в текст?
учитывая существующий документ Excel 2003 с ячейками любого типа (целые числа, текст, десятичные и т. д.), Как преобразовать содержимое каждой ячейки в текст?
и сохранить все эти изменения в том же документе excel?
на другом листе можно ввести в ячейку A1:
Копировать / Вставить, что для полной ширины и длины исходного листа. Затем вы можете вставить специальные>значения bock поверх оригиналов. Это должно заставить все иметь твой маленький зеленый участок.
единственное предостережение-даты. При применении этой формулы к полю даты будет отображаться серийный номер даты в виде текста. Не обычное форматирование, которое вы бы применили. Чтобы обойти это, используйте эту формулу вместо приведенного выше для полей даты:
выделите числа и используйте команду данные > текст в Столбцы. На странице 1 мастера выберите соответствующий тип (вероятно, он будет разделен). На странице 2 Удалите все показанные разделители столбцов, чтобы сохранить данные в одном столбце. На странице 3 щелкните текст в разделе формат данных столбца, чтобы указать, что этот столбец является текстом.
вы можете выбрать все поля, щелкните правой кнопкой мыши и копировать, а затем щелкните правой кнопкой мыши и вставить специальные / значения. Вы, вероятно, хотите скопировать в новую таблицу, чтобы не потерять свои формулы.
выберите все поля и делать как Марк Робинсон предложил: нажать Формат ячеек и выбрал текст.
это скроет все формулы в значение, которое они представляют вместо формулы, а затем скроет значения, которые являются числом в текст.
выделить все ячейки Ctrl+A
щелкните правой кнопкой мыши на выбранных ячейках и выберите Формат ячеек
на вкладке номер выберите текст в качестве категории
ячейки текстового формата обрабатываются как текст даже когда номер находится в ячейке. Ячейка отображается точно так внесенный.
Копирование в Excel.
Смотрите также: vikttur, на MAC «01.01» — получишь: Sub Procedure_2() Rows(1).Value: Проблема в следующем,BСовет: скопировать и вставить формулы) в ячейках, на ярлык листа. по какой месяц
Если нужно только заполненные ячейки, нижнем углу ячейки. Таким образом, заполняем вычитать, умножать, т.Или, на закладкеЗдесь рассмотрим, такой опции я 01 янв. А = Range(«A1»).EntireRow.Value End что надо сделать. Скопировать формулу в смежные формулу. читайте статью «Печать В диалоговом окне заполнили таблицу. Отпускаем
не копировать, а перенести но и пустые, Указатель мышки приобретает таблицу формулами. Например, д. Подробнее, смотрите «Главная» в разделекак копировать в Excel
не нашла если вводить «‘01.01″ Sub
с ячейкой excelЕсли вы не желаете ячейки листа можноВыделите ячейку с формулой, в Excel» тут. выбираем «Переместить/скопировать».
мышку. Все, таблица ячейку с формулой заполненные ячейки в
вид черного крестика. копируем формулы вниз в статье «Суммирование «Буфер обмена» нажать формулыячейки, как скопироватьВ контекстном меню — то заменыКазанский
чтоб при копировании этого, а хотите также, перетащив маркер которую хотите скопировать.Чтобы найти быстроСтавим галочку у слов заполнена., то не копируем перемежку с пустыми. Нажимаем два раза по столбцу. Для в Excel» здесь. на кнопку функции лист в Excel, (при нажатии пкм)
не будет.: Попробуйте Sub СТЕЛАЖ7_Кнопка4_Щелчок() копировалось значение а скопировать точную формулу заполнения.Выберите пункты в большой таблице «Создать копию». ВыбираемТак же можно её, а через
Например, у нас подряд левой мышкой этого устанавливаем (пишем)Если копируем числа «Копировать», предварительно выделив таблицу,значениеформат такой опции нет,dapengt6000 With Workbooks(«ПРОДАНО.xlsx»).Sheets(1) [A:A].ColumnDifferences(Comparison:=[a1]).EntireRow.Copy не формула и
(без изменения ссылокТакже можно использовать сочетание
Главная
Excel нужную ячейку, куда переместить скопированный заполнить дни месяца, контекстное меню «Вырезать» такая таблица, нам на этот крестик. формулу в первую с точками - ячейки для копирования., т.д. Одна из где ее смотреть?: если я ставлю .Rows(.Cells(Rows.Count, 2).End(xlUp).Row + наоборот. Специальная вставка
на ячейки), выполните
клавиш Ctrl + > диапазон, можно воспользоваться лист (в эту года, т.д. Таким -> «Вставить». Формула нужно поставить даты Формула скопируестя до ячейку. Затем нажимаем разделителями всместо запятойКак скопировать значение ячейки многих возможностей таблицы,Anastasia7 апостроф то формула 1).pastespecial xlpastevalues application.cutcopymode=false не поможет!! Копирование следующие простые действия: X, чтобы переместитьКопировать функцией «Поиск». Смотрите или другую книгу, же образом можно удалится из первой в столбце А
конца заполненного столбца. на ячейку с (1.23), то вставив, в Excel облегчающих работу –
: vikttur,спасибо, нашла не работает .[A:A].ClearContents End With происходит по нажатиюПоместите курсор в строку формулу.
или нажмите клавиши
статью «Поиск в перед каким листом)заполнять и цифрами, расположенными ячейки и перенесется
через одну пустую У нас, в формулой левой мышкой эти числа превратятся(без формулы). этоДля тех, ктовот что интересно End Sub кнопки из одного формул и выделитеКогда вы копируете формулу, CTRL+C. Excel». или оставляем так
как по порядку,
в новое место.
ячейку. примере, в ячейки и наводим мышку в дату. ЧтобыВыделяем ячейки, которыекопирование в Excel не знает -
дата 08.09.2012 вdapengt6000 документа в другой, формулу. Excel автоматически настраиваетЩелкните ячейку, в которуюПримечание: и нажимаем «ОК». так и сЕщё варианты копированияВыделяем первую ячейку с F25:F26. на правый нижний этого избежать , нужно скопировать. Нажимаем
. во вкладке «Вставка»
общем режиме 39698: этот код работает в ячейке прописаноНажмите сочетание клавиш ссылки на ячейки нужно вставить формулу.Мы стараемся как Затем, у скопированного интервалом формул, чтобы ссылки датой и пустую
Получилось. угол этой ячейки, есть несколько способов.
«Копировать». Переходим наМожно копировать всю в левом верхнем формат файла xlsm нормально, но при «=сегодня()» при копировании
CTRL+C так, что формулаЕсли ячейка находится на можно оперативнее обеспечивать листа, можно изменить. Например: 5,10, 15,
в них не ячейку ниже.Внимание! там появится черный Смотрите статью «Автозамена новое место, делаем таблицу или только углу «Значения»в другом документе копировании даты она мне нужно только, затем копируется в каждую
другом листе, перейдите вас актуальными справочными название, переместить его т.д. Смотрим пример: менялись, описаны вПротягиваем за заленыйФормула скопируется в крестик. Нажимаем на в Excel». активной ячейку, куда
значение ячеек безЕсть некая ячейка с дата 08.09.2012 в получается формата 39697, чистую дату ноEnter новую ячейку.
на него и материалами на вашем
на другое место, интервал 2. статье «Как скопировать квадратик в правом таблице, если ячейки него левой мышкойКак скопировать формулу в будем копировать, нажимаем формул, или копировать формулой, по которой общем режиме 41160 а не 07,09,12 не формулу. А.На примере ниже ячейка выберите эту ячейку. языке. Эта страница изменить цвет ярлычка.
Если нужно формулу в Excel нижнем углу выделенного столбца слева таблицы и ведем вниз,
Excel. правой мышью и формулы с привязкой вычислилось значение 7852,91 формат файла xlsx и когда я так как этотBыделите ячейкуA3Чтобы вставить формулу с переведена автоматически, поэтому
Как скопировать лист внаписать одинаковый текст в без изменения ссылок». диапазона ячеек вниз будут заполнены. Тогда удерживая левую кнопкуПервый вариант. выбираем функцию «Вставить».
к новым ячейкамЕсли пытаюсь скопироватьКазанский меняю ячейку на
вопрос я виделB3содержит формулу, которая сохранением форматирования, выберите ее текст может новую книгу Excel нескольких ячейках ExcelКак заполнить таблицу в
по столбцу. даты Excel поймет до мыши нажатой.Когда мыКогда значения ячеек, или без привязки
значение, нажимая Ctrl+C,: дата то получается уже много рази снова кликните суммирует значения в пункты содержать неточности и. подряд Excel. скопируются так. какой ячейке расположена
Отпускаем мышку. Формулы скопировались,копируем ячейки с относительными в которых стоят
к ячейке (со то в буферНе по теме: 06.09.2008 как теперь то хотелось бы
по строке формул. ячейкахГлавная грамматические ошибки. ДляДля этого в, то пишем текстМожно копировать данныеЕсли выделим три
таблица. в них изменились формулами формулы (цифры) не сменой адреса ячейки обмена попадает формула.dapengt6000 с этим бороться? узнать как сделать
НажмитеA1 > нас важно, чтобы диалоговом окне в в первой ячейке, ячеек в определенной
excel-office.ru
Копирование и вставка формулы в другую ячейку или на другой лист
пустые ячейки сТакми способом можно адреса ячеек относительно(«Копировать» -> «Вставить») копируются, делаем так: или оставить адресА как скопировать, сообщение #8 видели?Catstail и наоборот.CTRL+VиВставить эта статья была разделе «Переместить выбранные затем перетаскиванием (черным последовательности. Например, надо датой, то даты копировать значение, формулы, нового места. Таблица и затем переносим выделяем ячейки как
без изменений). Можно значение?dapengt6000: Чтобы Excel неКазанский, потом клавишуA2или нажмите клавиши
-
вам полезна. Просим листы в книгу»
-
крестиком) ведем вниз. заполнить графу таблицы скопируются через три формат. Если выделим формулами заполнена. в другое место,
-
обычно-> «Копировать». Появится копировать данные с
Www www: решил проблему изменив преобразовывал дату неподобающим: Поможет. Но проще
-
Enter. CTRL+V. вас уделить пару выбираем «(новая книга)».Копировать перетаскиванием можно названиями месяцев года. пустые ячейки. Получится
ячейки в несколькихКак скопировать формулу то таблица Excel вокруг ячеек, которые определенной последовательностью и,: Специальная вставка - формулу даты =СЕГОДНЯ()+1462
-
образом, пиши: присвоить значение: MyCell2.Value
-
.Скопируйте эту формулу вЧтобы воспользоваться другими параметрами
-
-
секунд и сообщить,Как скопировать формат в
как по столбикам, Пишем в первой так. стролбцах, то копирование в Excel таким
сама меняет адреса мы копируем, пульсирующая таким образом, заполнять вставить значение.
support.office.com
Как скопировать точную формулу в Excel
при копировании поMyCell.Value=»‘» & new_val = MyCell1.ValueРезультат: ячейку вставки, щелкните стрелку
помогла ли она Excel ячейки или так и по ячейке «Январь», вЕсли нужно перенести будет сразу во способом, чтобы не ячеек в формулах рамка, еще раз
таблицу. Можно копироватьЛена андреева коду КАЗАНСКОГО получается ‘ приклей вdapengt6000Теперь обе ячейки (B3 под кнопкой вам, с помощью условное форматирование строкам. следующей ячейке ниже ячейки с формулами, всех выделенных столбцах. копировался формат, смотрите относительно новых ячеек.
нажимаем правой мышью лист. И многое,: знак равенства поставьте сегодняшний день. большое начало апостроф (он: Sub СТЕЛАЖ7_Кнопка4_Щелчок() With
- A3(выделите ячейкуВставить
- кнопок внизу страницы., без самих значенийЕще несколько способов, пишем «Февраль». Теперь но
- Например, если выделим в статье «Как Смотрите подробнее в на выделенную ячейку
- многое другое. в той ячейке всем спасибо! не войдет в Workbooks(«ПРОДАНО.xlsx»).Sheets(1) [A:A].ColumnDifferences(Comparison:=[a1]).EntireRow.Copy .Rows(.Cells(Rows.Count,
и
A3и выберите один Для удобства также ячеек, смотрите в как писать одинаковый выделяем обе эти
адреса в формулах Excel ячейки D24, E24,
скопировать в Excel».
статье «Относительные и
и в диалоговом
office-guru.ru
Копирование значения ячейки, а не формулы
Чтобы вызвать функцию которая нужна иAnastasia7 значение) 2).End(xlUp).Row + 1)B3, нажмите сочетание клавиш из указанных ниже приводим ссылку на статье «Копирование условного текст, формулы в ячейки. Наводим мышь должны остаться прежние F24, нажмем дваТретий вариант. абсолютные ссылки в окне «Копировать», достаточно нажать кликните на это: Подскажите, пожалуйста, какКазанский .[A:A].ClearContents End With) содержат одну и
CTRL+C вариантов. оригинал (на английском форматирования, формата в
нескольких ячейках, т.д., на правый нижний(не привязывать к раза мышью поКак копировать формулы в Excel».выбираем команду «Специальная вставка» правой кнопкой мыши окно скопировать значения ячеек,: .pastespecial xlPasteValuesAndNumberFormats
End Subэто мой ту же формулу., выделите ячейкуВставить формулы
языке) . Excel». смотрите в статье угол выделенного диапазона новым ячейкам), то углу ячейки F24, Excel на весь
Второй выриант., выбираем — «Значение». на выделенную ячейку,Зинаида новикова а не ихIvanOK код копирования вУрок подготовлен для ВасB3 — вставка только формулы.При копировании формулы в
Иногда, когда нужно «Как заполнить ячейки и ведем вниз это снова в
то скопируются данные столбецМожноЗатем, как обычно - диапзон и выбрать
: Выделяй мышью и формулы?
: а что именно другой документ, куда командой сайта office-guru.ru
, и нажмитеВставить значения другое место для напечатать документ, распечатывается в Excel одновременно» по столбцу черный статье «Относительные и по всем этим
.копировать формулы перетаскиванием «Вставить». С помощью из контекстного меню
правой копироваттvikttur апостроф даст? вписать то что
Источник: http://www.excel-easy.com/examples/copy-exact-formula.htmlCTRL+V— вставка только нее можно выбрать
(копируется) не значение тут.
крестик. Таблица сама
абсолютные ссылки в столбцам.
Нам нужно скопировать, чтобы не писать функции «Специальная вставка» функцию «Копировать».Сергей тумаков:Catstail
CyberForum.ru
Как скопировать значения ячеек, а не формулы
мне порекомендовали яПеревел: Антон Андронов), и формула будет значения формулы. определенный способ вставки
ячеек, а формулы.Как cкопировать лист в заполнит ячейки следующими
формулах Excel». СсылкаКопирование в Excel через формулу из ячейки одну и ту
можно не толькоИли, можно нажать: Копировать. А вставитьКопировать-Вставить _как_значения
: Отменяет автоформатирование. Попробуй не понимаю.
Автор: Антон Андронов автоматически ссылаться наПроверьте ссылки на ячейки в целевые ячейки. Чтобы было значение
planetaexcel.ru
Excel 2003: как скопировать значение, а не формулу в ячейке?
Excel - месяцами года. на статью в
ячейку. F24. Наводим на же формулу в копировать данные, но
сочетание клавиш «Ctrl» — значение. Через
Anastasia7 ввести в ячейкуBusine2012
dapengt6000 значения в столбце для нового расположения. Ниже объясняется, как (цифры, а неправой мышью нажимаем
Справа всплывает подсказка, статье выше.Можно копировать не
квадратик в правом других ячейках таблицы. и складывать их, + «C».
правую клавишу мыши…
Skip to content
ПСТР — одна из текстовых функций, которые Microsoft Excel предоставляет для управления текстовыми строками. На самом базовом уровне она используется для извлечения подстроки из середины текста.
В этом руководстве мы обсудим синтаксис и особенности функции Excel ПСТР (в английской версии – MID), а затем вы узнаете несколько вариантов творческого её использования для выполнения сложных задач.
- Синтаксис и особенности
- Если 2 слова — извлекаем имя и фамилию
- Как получить текст между двумя определенными символами
- Как извлечь любое по счету слово
- Получаем слово с нужными буквами или символами
- Как заставить ПСТР возвращать число?
- Использование регулярных выражений для извлечения части текста
- Как извлечь текст из ячейки с помощью Ultimate Suite
Cинтаксис.
Функция ПСТР возвращает указанное количество знаков, начиная с указанной вами позиции.
Функция Excel ПСТР имеет следующие аргументы:
ПСТР(текст; начальная_позиция; количество_знаков)
Где текст — это исходная текстовая строка. Далее следует позиция первого символа, который вы хотите извлечь, и количество их для извлечения.
Все 3 аргумента обязательны.
Например, чтобы извлечь 6 знаков из A2, начиная с 17-го, используйте эту формулу:
=ПСТР(A2;17;6)
Результат может выглядеть примерно так:
5 вещей, которые вы должны знать о функции Excel ПСТР
Как вы только что убедились, в использовании функции ПСТР в Excel нет ничего страшного. И помня следующие простые факты, вы избежите наиболее распространенных ошибок.
- Функция ПСТР всегда возвращает текстовую строку, даже если извлеченная подстрока содержит только цифры. Это может иметь большое значение, если вы хотите использовать результат формулы ПСТР в других вычислениях. Чтобы преобразовать цифры в число, применяйте ПСТР в сочетании с функцией ЗНАЧЕН (VALUE в английской версии), как показано в этом примере. (ссылка на последний раздел).
- Когда начальная позиция больше, чем общая длина исходного текста, формула Excel ПСТР возвращает пустое значение («»).
- Если начальная позиция меньше 1, формула ПСТР возвращает ошибку #ЗНАЧ!.
- Когда третий аргумент меньше 0 (отрицательное число), формула ПСТР возвращает ошибку #ЗНАЧ!. Если количество знаков для извлечения равно 0, выводится пустая строка (пустая ячейка).
- В случае, если сумма начальной позиции и количества знаков превышает общую длину исходного текста, функция ПСТР в Excel возвращает подстроку начиная с начальной позиции и до последнего символа.
При решении реальных задач в Excel вам чаще всего потребуется использовать ПСТР в сочетании с другими функциями, как показано в следующих примерах.
Как извлечь имя и фамилию.
Если у вас была возможность прочитать наши недавние уроки, вы уже знаете, как вытащить имя с помощью функции ЛЕВСИМВ и получить фамилию с помощью ПРАВСИМВ. Но, как это часто бывает в Excel, одно и то же можно сделать разными способами.
Получаем имя.
Предполагая, что полное имя находится в ячейке A2, имя и фамилия разделены интервалом, вы можете извлечь имя, используя следующую формулу:
=ПСТР(A2;1;ПОИСК(» «;A2)-1)
ПОИСК используется для сканирования исходного значения на предмет пробела (» «) и возврата его позиции, из которой вы вычитаете 1, чтобы избежать пробелов после имени. Затем вы используете ПСТР, чтобы вернуть подстроку, начинающуюся с первого знака и заканчивая предшествующим пробелу, таким образом извлекая первое имя.
Получаем фамилию.
Чтобы извлечь фамилию из A2, используйте эту формулу:
=СЖПРОБЕЛЫ(ПСТР(A2;ПОИСК(» «;A2);ДЛСТР(A2)))
Опять же, вы используете ПОИСК, чтобы определить начальную позицию (пробел). Нам не нужно точно рассчитывать конечную позицию (как вы помните, если вместе взятые начальная позиция и количество символов больше, чем общая длина текста, возвращаются просто все оставшиеся). Итак, в аргументе количество символов вы просто указываете общую первоначальную длину , возвращаемую функцией ДЛСТР . Впрочем, вместо этого вы можете просто ввести число, представляющее самую длинную фамилию, которую вы ожидаете найти, например 100. Наконец, СЖПРОБЕЛЫ удаляет лишние интервалы, и вы получаете следующий результат:
Как выделить подстроку между двумя разделителями.
Продолжим предыдущий пример. А если, помимо имени и фамилии, ячейка A2 также содержит отчество, то как его извлечь?
Технически задача сводится к определению позиций двух пробелов в исходном тексте, и вы можете сделать это следующим образом:
- Как и в предыдущем примере, используйте ПОИСК, чтобы определить позицию первого (» «), к которому вы добавляете 1, потому что вы хотите начать с символа, следующего за ним. Таким образом, вы получаете адрес начальной позиции: ПОИСК (» «; A2) +1
- Затем вычислите позицию 2- го интервала, используя вложенные функции поиска, которые предписывают Excel начать поиск именно со 2-го: ПОИСК (» «; A2, ПОИСК (» «; A2) +1)
Чтобы узнать количество извлекаемых знаков, вычтите позицию первого пробела из положения второго. И затем еще вычтите 1 из результата, поскольку вам не нужны лишние интервалы в получившемся результате. Таким образом, у вас есть второй аргумент для формулы:
ПОИСК(» «; A2; ПОИСК(» «; A2) +1) — ПОИСК(» «; A2)
Соединив все аргументы, мы получаем формулу для извлечения подстроки между двумя пробелами:
=ПСТР(A2;ПОИСК(» «;A2)+1;ПОИСК(» «;A2;ПОИСК(» «;A2)+1)-ПОИСК(» «;A2)-1)
На следующем скриншоте показан результат:
Аналогичным образом вы можете извлечь текст между любыми другими разделителями:
ПСТР( строка ; ПОИСК( разделитель ; строка ) +1; ПОИСК( разделитель ; строка ; ПОИСК( разделитель ; строка ) +1) — ПОИСК( разделитель ; строка ) -1)
Например, чтобы извлечь отрезок, выделенный запятой с пробелом после неё, используйте следующее выражение:
=ПСТР(A2;ПОИСК(«, «;A2)+1;ПОИСК(«, «;A2;ПОИСК(«, «;A2)+1)-ПОИСК(«, «;A2)-1)
На следующем рисунке эта формула используется для извлечения из адреса названия города, и она отлично справляется со своей задачей:
Как получить N-е слово из текста.
Этот пример демонстрирует оригинальное использование сложной формулы ПСТР в Excel, которое включает 5 различных составных частей:
- ДЛСТР — чтобы получить общую длину.
- ПОВТОР — повторение определенного знака заданное количество раз.
- ПОДСТАВИТЬ — заменить один символ другим.
- ПСТР — извлечь подстроку.
- СЖПРОБЕЛЫ — удалить лишние интервалы между словами.
Общая формула выглядит следующим образом:
СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ( строка ; » «; ПОВТОР (» «; ДЛСТР( строка ))); ( N -1) * ДЛСТР( строка ) +1; ДЛСТР( строка )))
Где:
- Строка — это исходный текст, из которого вы хотите извлечь желаемое слово.
- N – порядковый номер слова, которое нужно получить.
Например, чтобы вытащить второе слово из A2, используйте это выражение:
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A$2;» «;ПОВТОР(» «;ДЛСТР($A$2))); (2-1)*ДЛСТР($A$2)+1; ДЛСТР($A$2)))
Или вы можете ввести порядковый номер слова, которое нужно извлечь (N) в какую-либо ячейку, и указать эту ячейку в формуле, как показано на скриншоте ниже:
Как работает эта формула?
По сути, Excel «оборачивает» каждое слово исходного текста множеством пробелов, находит нужный блок «пробелы-слово-пробелы», извлекает его, а затем удаляет лишние интервалы. Чтобы быть более конкретным, это работает по следующей логике:
- ПОДСТАВИТЬ и ПОВТОР заменяют каждый пробел в тексте несколькими. Количество этих дополнительных вставок равно общей длине исходной строки: ПОДСТАВИТЬ($A$2;» «;ПОВТОР(» «;ДЛСТР($A$2)))
Вы можете представить себе промежуточный результат как «астероиды» слов, дрейфующих в пространстве, например: слово1-пробелы-слово2-пробелы-слово3-… Эта длинная строка передается в текстовый аргумент ПСТР.
- Затем вы определяете начальную позицию для извлечения (первый аргумент), используя следующее уравнение: (N-1) * ДЛСТР(A1) +1. Это вычисление возвращает либо позицию первого знака первого слова, либо, чаще, позицию в N-й группе пробелов.
- Количество букв и цифр для извлечения (второй аргумент) — самая простая часть — вы просто берете общую первоначальную длину: ДЛСТР(A2).
- Наконец, СЖПРОБЕЛЫ избавляется от начальных и конечных интервалов в извлечённом тексте.
Приведенная выше формула отлично работает в большинстве ситуаций. Однако, если между словами окажется 2 или более пробелов подряд, это даст неверные результаты (1). Чтобы исправить это, вложите еще одну функцию СЖПРОБЕЛЫ в ПОДСТАВИТЬ, чтобы удалить лишние пропуски между словами, оставив только один, например:
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($A$2);» «; ПОВТОР(» «;ДЛСТР($A$2))); (B2-1)*ДЛСТР($A$2)+1; ДЛСТР($A$2)))
Следующий рисунок демонстрирует улучшенный вариант (2) в действии:
Если ваш исходный текст содержит несколько пробелов между словами, а также очень большие или очень короткие слова, дополнительно вставьте СЖПРОБЕЛЫ в каждое ДЛСТР, чтобы вы были застрахованы от ошибки:
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($A$2);» «; ПОВТОР(» «;ДЛСТР(СЖПРОБЕЛЫ ($A$2)))); (B2-1)*ДЛСТР(СЖПРОБЕЛЫ($A$2))+1; ДЛСТР(СЖПРОБЕЛЫ($A$2))))
Я согласен с тем, что это выглядит немного громоздко, но зато безупречно обрабатывает все возможные варианты.
Извлекаем слово, содержащее определенный символ.
В этом примере показана еще одна нестандартная формула Excel ПСТР, которая извлекает слово, содержащее определенную букву или цифру, из любого места:
СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ ( строка , » «, ПОВТОР(» «, 99)), МАКС(1, НАЙТИ( символ , ПОДСТАВИТЬ( строка , » «, ПОВТОР(» «, 99))) — 50), 99))
Предполагая, что исходный текст находится в ячейке A2, и вы хотите получить слово, содержащее символ «$» (цена), выражение принимает следующую форму:
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(A2;» «;ПОВТОР(» «;99)); МАКС(1;НАЙТИ(«$»;ПОДСТАВИТЬ(A2;» «;ПОВТОР(» «;99)))-50);99))
Аналогичным образом вы можете извлекать адреса электронной почты (на основе знака «@»), имена веб-сайтов (на основе «www») и так далее.
Теперь разберём пошагово:
Как и в предыдущем примере, ПОДСТАВИТЬ и ПОВТОР превращают каждый пробел в исходном тексте в несколько, точнее, в 99.
НАЙТИ находит позицию нужного символа (в данном примере $), из которой вы вычитаете 50. Это возвращает вас на 50 позиций назад и помещает где-то в середине блока из 99 пробелов, который предшествует слову, содержащему указанный символ.
МАКС используется для обработки ситуации, когда нужное значение появляется в начале исходного текста. В этом случае результат ПОИСК() — 50 будет отрицательным числом, а МАКС(1, ПОИСК() — 50) заменяет его на 1.
С этой начальной точки ПСТР отбирает следующие 99 знаков и возвращает интересующее нас слово, окруженное множеством пробелов. Как обычно, СЖПРОБЕЛЫ помогает избавиться от лишних из них, оставив только один.
Совет. Если извлекаемый отрезок очень большой, замените 99 и 50 на более крупные числа, например 1000 и 500.
Как заставить ПСТР возвращать число?
Как и другие текстовые функции, Excel ПСТР всегда возвращает текст, даже если он содержит только цифры и очень похож на число. Вы можете убедиться с этом, взглянув на пример чуть выше, когда мы получили число «20%» как текст.
Чтобы преобразовать результат в число, просто передайте полученный результат в функцию ЗНАЧЕН (VALUE в английской версии), которая преобразует текстовое значение, состоящее из цифр, в число.
Например, чтобы извлечь подстроку из 3 символов, начинающуюся с 7- го символа, и преобразовать ее в число, используйте:
=ЗНАЧЕН(ПСТР(A2;7;3))
На скриншоте ниже показан результат. Обратите внимание, что числа с выравниванием по правому краю помещены в столбец B, в отличие от исходных текстовых значений с выравниванием по левому краю в столбце A:
Тот же подход работает и для более сложных случаев. В приведенном выше примере, предполагая, что коды ошибок имеют переменную длину, вы можете извлечь их с помощью ПСТР, которая получает подстроку между двумя разделителями, вложенную в ЗНАЧЕН:
=ЗНАЧЕН(ПСТР(A2;ПОИСК(«:»;A2)+1;ПОИСК(«:»;A2;ПОИСК(«:»;A2)+1)-ПОИСК(«:»;A2)-1))
Вот как можно использовать функцию ПСТР в Excel.
Использование регулярных выражений, чтобы извлечь часть текста.
Регулярное выражение – это шаблон, состоящий из последовательности символов, который можно использовать для поиска соответствующей последовательности в другой строке.
Как добавить в Excel пользовательскую функцию работы с регулярными выражениями и как правильно составить шаблон – читайте подробную инструкцию здесь.
Вы можете извлечь из ячейки все числа или все буквы, телефонный номер, адрес электронной почты, дату, время, текст между любыми двумя символами или двумя словами, текст после определенного символа, и еще множество вариантов.
Вот пример: из наименования товара — Коммутатор Optimus U1E-8F/1G/1S, нужно извлечь номер модели. Поскольку этот номер находится в конце наименования, то будем искать то, что записано после последнего пробела.
= RegExpExtract(A1; «([^s.]+)$»)
В результате получим U1E-8F/1G/1S, что и требовалось.
Как извлечь текст из ячейки с помощью Ultimate Suite
Как вы только что видели, Microsoft Excel предоставляет набор различных функций для работы с текстовыми строками. Если вам нужно извлечь какое-то слово или часть текста из ячейки, но вы не уверены, какая функция лучше всего подходит для ваших нужд, передайте работу Ultimate Suite for Excel. Заодно не придётся возиться с формулами.
Вы просто переходите на вкладку Ablebits Data > Текст, выбираете инструмент Split Text и в выпадающем списке нажимаете Извлечь (Extract) :
Теперь вы выбираете исходные ячейки, и какие бы сложные строки они ни содержали, извлечение из них подстроки сводится к этим двум простым действиям:
- Укажите, сколько символов вы хотите получить из начала, конца или середины строки; или выберите извлечение всего текста до или после определенного символа.
- Щелкните Вставить результаты (Insert Results). Готово!
Кроме того, вы можете извлечь любое число символов с начала или в конце текста, из середины текста, между какими-то символами. Например, чтобы извлечь доменные имена из списка адресов электронной почты, вы выбираете чекбокс Все после текста (All after text) и вводите @ в поле рядом с ним. Чтобы извлечь имена пользователей, выберите переключатель Все до текста (All before text), как показано на рисунке ниже.
Помимо скорости и простоты, инструмент «Извлечь текст» имеет дополнительную ценность — он поможет вам изучить формулы Excel в целом и функции подстроки в частности. Как? Выбрав флажок Вставить как формула (Insert as formula) в нижней части панели, вы убедитесь, что результаты выводятся в виде формул, а не просто как значения. Естественно, эти формулы вы можете использовать в других таблицах.
В этом примере, если вы выберете ячейки B2 и C2, вы увидите следующие формулы соответственно:
- Чтобы извлечь имя пользователя:
=ЕСЛИОШИБКА(ЛЕВСИМВ(A2,ПОИСК(«@»,A2)-1),»»)
- Чтобы извлечь домен:
=ЕСЛИОШИБКА(ПРАВСИМВ(A2, ДЛСТР(A2)- ПОИСК(«@»,A2) — ДЛСТР(«@») + 1),»»)
Сколько времени вам потребуется, чтобы самостоятельно составить эти выражения?
Поскольку результаты представляют собой формулы, извлеченные подстроки будут обновляться автоматически, как только в исходные ячейки будут внесены какие-либо изменения. Когда в ваш набор данных добавляются новые записи, вы можете скопировать формулы в другие ячейки как обычно, без необходимости заново запускать инструмент «Извлечь текст».
Если вам интересно попробовать это, а также множество других полезных функций, включенных в Ultimate Suite for Excel, вы можете загрузить ознакомительную версию. Если вам нравятся инструменты, вы можете получить лицензию по очень специальной цене, которая доступна только для наших русскоязычных пользователей.
Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!