Excel как скопировать отфильтрованные ячейки

Копирование только видимых ячеек

Если некоторые ячейки, строки или столбцы на листе не отображаются, вы сможете скопировать все ячейки (или только видимые ячейки). По умолчанию Excel копирует не только видимые, но и скрытые или фильтрованные ячейки. Если же требуется скопировать только видимые ячейки, выполните действия, описанные ниже. Например, можно скопировать только сводные данные из структурированного листа.

Выполните указанные ниже действия:

Выделите ячейки, которые вы хотите скопировать. Дополнительные сведения можно найти в разделе выделение ячеек, диапазонов, строк и столбцов на листе.

Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.

Щелкните Главная > Найти и выделить, а затем выберите пункт Выделение группы ячеек.

Выберите параметр только видимые ячейки и нажмите кнопку ОК.

Щелкните Копировать (или нажмите клавиши CTRL+C).

Выделите левую верхнюю ячейку области вставки и нажмите кнопку Вставить (или нажмите клавиши CTRL + V).

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

Примечание: При копировании значения последовательно вставляются в строки и столбцы. Если область вставки содержит скрытые строки или столбцы, возможно, потребуется отобразить их, чтобы увидеть все скопированные данные.

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

Тем не менее, если отформатировать данные как таблицу и применить фильтр, можно скопировать и вставить только видимые ячейки.

Если не нужно форматировать данные как таблицу и установлено классическое приложение Excel, можно открыть книгу в нем, чтобы скопировать и вставить видимые ячейки. Для этого нажмите кнопку Открыть в Excel и выполните действия, описанные в статье копирование и вставка только видимых ячеек.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

Источник: support.office.com

Копирование отфильтрованного диапазона

Как скопировать из таблицы и перенести в другую таблицу
отфильтрованный автофильтром (2 условия) диапазон ячеек по столбцу “G”
например

Необходимо скопировать и перенести на другой лист все отфильтрованные данные
например по столбцу “G”

Visual Basic
06.08.2011, 19:55

Копирование отфильтрованного диапазона в новую книгу
Здравствуйте! Помогите пожалуйста разобраться. Две книги. В первой наложен фильтр. Нужно видимые.

Копирование отфильтрованного диапазона с защищенного листа книги, с удалением формул и защиты на копии
Добрый день! Подскажите, пожалуйста. Есть данный макрос: Sub CopyFilter() Dim sh As Worksheet .

Перенос отфильтрованного диапазона в массив
Добрый вечер. Собсна сабж. Sub wdwad() Dim dealArr() As Variant Dim dlRow As Long.

Копирование диапазона
как копировать из диапазона А1:С6 например А3:С3, А5:С5 при изменении выпадающего списка

06.08.2011, 23:06 2
Visual Basic
21.12.2011, 19:33 3

а как сделать если диапазонов 2 и более а не один

21.12.2011, 19:48 4
21.12.2011, 19:55 5
21.12.2011, 19:55
21.12.2011, 19:55

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Копирование диапазона
Добрый день. Подскажите, пожалуйста, как можновставить несколько строк на новый лист начиная с 5-й.

Копирование диапазона
Добрый день! И снова нужна помощь! Имеется несколько диапазонов объединенных ячеек. +1 .

Копирование диапазона ячеек
Уважаемые форумчане, подскажите, пожалуйста. Хочу скопировать диапазон ячеек с одного листа на.

Копирование диапазона в список
Задача такая: в лист1 идет последовательная запись значений из лист2, т.е. добавление к.

Источник: www.cyberforum.ru

Как вставить скопированные ячейки только в видимые/отфильтрованные ячейки

В общем-то смысл статьи уже, думаю, понятен из названия. Просто чуть-чуть расширю.

Ни для кого не секрет, что Excel позволяет выделить только видимые строки(например, если некоторые из них скрыты или применен фильтр).

если кто-то не знает, как это сделать: выделяем диапазон – Alt+;(для английской раскладки);Alt+ж(для русской). Подробнее можно почитать здесь.

Так вот, если скопировать таким образом только видимые ячейки, то скопируются они как положено. Но при попытке вставить скопированное в диапазон отфильтрованный(либо содержащий скрытые строки) – то результат вставки будет не совсем такой, как Вы ожидали. Данные будут вставлены даже в скрытые строки.

Копируем единый диапазон ячеек и вставляем только в видимые
Чтобы данные вставлялись только в видимые ячейки, можно применить такой макрос:

Option Explicit Dim rCopyRange As Range ‘Этим макросом копируем данные Sub My_Copy() If Selection.Count > 1 Then Set rCopyRange = Selection.SpecialCells(xlVisible) Else: Set rCopyRange = ActiveCell End If End Sub ‘Этим макросом вставляем данные, начиная с выделенной ячейки Sub My_Paste() If rCopyRange Is Nothing Then Exit Sub If rCopyRange.Areas.Count > 1 Then MsgBox “Вставляемый диапазон не должен содержать более одной области!”, vbCritical, “Неверный диапазон”: Exit Sub Dim rCell As Range, li As Long, le As Long, lCount As Long, iCol As Integer, iCalculation As Integer Application.ScreenUpdating = False iCalculation = Application.Calculation: Application.Calculation = -4135 For iCol = 1 To rCopyRange.Columns.Count li = 0: lCount = 0: le = iCol – 1 For Each rCell In rCopyRange.Columns(iCol).Cells Do If ActiveCell.Offset(li, le).EntireColumn.Hidden = False And _ ActiveCell.Offset(li, le).EntireRow.Hidden = False Then rCell.Copy ActiveCell.Offset(li, le): lCount = lCount + 1 End If li = li + 1 Loop While lCount >= rCell.Row – rCopyRange.Cells(1).Row Next rCell Next iCol Application.ScreenUpdating = True: Application.Calculation = iCalculation End Sub

Для полноты картины, данные макросы лучше назначить на горячие клавиши(в приведенных ниже кодах это делается автоматически при открытии книги с кодом). Для этого приведенные ниже коды необходимо просто скопировать в модуль ЭтаКнига(ThisWorkbook):

Option Explicit ‘Отменяем назначение горячих клавиш перед закрытием книги Private Sub Workbook_BeforeClose(Cancel As Boolean) Application.OnKey “^q”: Application.OnKey “^w” End Sub ‘Назначаем горячие клавиши при открытии книги Private Sub Workbook_Open() Application.OnKey “^q”, “My_Copy”: Application.OnKey “^w”, “My_Paste” End Sub

Теперь можно скопировать нужный диапазон нажатием клавиш Ctrl+q, а вставить его в отфильтрованный – Ctrl+w.

Tips_Macro_CopyPasteInHiddenRows.xls (46,5 KiB, 10 144 скачиваний)

Копируем только видимые ячейки и вставляем только в видимые
По просьбам посетителей сайта решил доработать данную процедуру. Теперь возможно копировать любые диапазоны: со скрытыми строками, скрытыми столбцами и вставлять скопированные ячейки также в любые диапазоны: со скрытыми строками, скрытыми столбцами. Работает совершенно так же, как и предыдущий: нажатием клавиш Ctrl+q копируем нужный диапазон(со скрытыми/отфильтрованными строками и столбцами или не скрытыми), а вставляем сочетанием клавиш Ctrl+w. Вставка производится так же в скрытые/отфильтрованные строки и столбцы или без скрытых.
Если в копируемом диапазоне присутствуют формулы, то во избежание смещения ссылок можно копировать только значения ячеек – т.е. при вставке значений будут вставлены не формулы, а результат их вычисления. Или если необходимо сохранить форматы ячеек, в которые происходит вставка – будут скопированы и вставлены только значения ячеек. Для этого надо заменить строку в коде(в файле ниже):

rCell.Copy rResCell.Offset(lr, lc)

rResCell.Offset(lr, lc) = rCell.Value

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

Tips_Macro_CopyPasteInHiddenCells.xls (54,5 KiB, 8 442 скачиваний)

Так же см.:
[[Excel удаляет вместо отфильтрованных строк – все?! Как избежать]]

Статья помогла? Поделись ссылкой с друзьями!

Поиск по меткам

Дмитрий, здравствуйте!
У меня почему-то не работают ваши файлы.
Приведу пример на последнем файле:
Открываю его в Excel 2013; разрешаю редактирование-вылезает ошибка Run-time error ‘1004’:
Method ‘OnKey’ of object’_Application’ failed
Когда нажимаю debug вылезает окошко макроса и там подсвечена желтым часть строки:
Application.OnKey “^q”, “My_Copy”
А если пробую нажимать в таблице ctrl+q, то вылезает окошко форматирования
Подскажите, пожалуйста, как это исправить.

Дмитрий, когда скачиваете файл с интернета – он открывается в защищенном режиме, о чем у Вас появляется предупреждение. Нельзя обратиться к свойствам листов и книг, если книга открыта в защищенном режиме. А именно так по умолчанию открываются книги, скачанные откуда-то. Варианта по сути два:
1. При открытии файла разрешить редактирование и перезапустить книгу.
2. Добавить папку, в которую скачиваются вложения, в список доверенных(Файл -Параметры -Центр управления безопасностью -Параметры центра управления безопасностью -Надежные расположения).
Есть еще вариант: в настройках макросов разрешить запуск макросов с уведомлением. Тогда сначала будет появляться запрос на редактирование, а самым последним запрос на разрешение выполнения содержимого.

Дмитрий, спасибо большое!
После пересохранения книги и добавления надежного расположения все заработало=)

Источник: www.excel-vba.ru

Как копировать в Экселе — простые и эффективные способы

Здравствуйте, уважаемые читатели! В этой статье я расскажу как копировать и вырезать ячейки в 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 . Курсор из четырехнаправленного превратится в стрелку со знаком «+».

Копирование автозаполнением

Работу автозаполнения я уже описывал в посте Расширенные возможности внесения данных. Здесь лишь немного напомню и дополню. Если нужно скопировать данные или формулы в смежные ячейки – выделите ячейку для копирования найдите маленький квадратик (маркер автозаполнения) в правом нижнем углу клетки. Тяните за него, чтобы заполнить смежные клетки аналогичными формулами или скопировать информацию.

Маркер автозаполнения

Есть еще один способ – команда Заполнить . Выделите массив для заполнения так, чтобы ячейка для копирования стояла первой в направлении заполнения. Выполните одну из команд, в зависимости от направления заполнения:

  1. Главная – Редактирование – Заполнить вниз
  2. Главная – Редактирование – Заполнить вправо
  3. Главная – Редактирование – Заполнить вверх
  4. Главная – Редактирование – Заполнить влево

Все выделенные ячейки будут заполнены данными или формулами из исходной.

Вот я и перечислил основные способы копирования и вставки. Как я обещал, далее мы рассмотрим специальные возможности копирования и вставки, о которых не знают новички. Читайте, они простые в использовании, а пользы приносят очень много.
Понравилась статья? Порекомендуйте другу и вместе с ним подписывайтесь на обновления! Уже написано очень много интересного и полезного материала, но лучшие посты еще впереди!

Источник: officelegko.com

Фильтрация данных в Excel

В Excel предусмотрено три типа фильтров:

  1. Автофильтр – для отбора записей по значению ячейки, по формату или в соответствии с простым критерием отбора.
  2. Срезы – интерактивные средства фильтрации данных в таблицах.
  3. Расширенный фильтр – для фильтрации данных с помощью сложного критерия отбора.

Автофильтр

  1. Выделить одну ячейку из диапазона данных.
  2. На вкладке Данные [Data] найдите группу Сортировка и фильтр [Sort&Filter].
  3. Щелкнуть по кнопке Фильтр [Filter] .

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

Варианты фильтрации данных

  • Фильтр по значению – отметить флажком нужные значения из столбца данных, которые высвечиваются внизу диалогового окна.
  • Фильтр по цвету – выбор по отформатированной ячейке: по цвету ячейки, по цвету шрифта или по значку ячейки (если установлено условное форматирование).
  • Можно воспользоваться строкой быстрого поиска
  • Для выбора числового фильтра, текстового фильтра или фильтра по дате (в зависимости от типа данных) выбрать соответствующую строку. Появится контекстное меню с более детальными возможностями фильтрации:
  1. При выборе опции Числовые фильтры появятся следующие варианты фильтрации: равно, больше, меньше, Первые 10… [Top 10…] и др.
  2. При выборе опции Текстовые фильтры в контекстном меню можно отметить вариант фильтрации содержит. , начинается с… и др.
  3. При выборе опции Фильтры по дате варианты фильтрации – завтра, на следующей неделе, в прошлом месяце и др.
  4. Во всех перечисленных выше случаях в контекстном меню содержится пункт Настраиваемый фильтр… [Custom…], используя который можно задать одновременно два условия отбора, связанные отношением И [And] – одновременное выполнение 2 условий, ИЛИ [Or] – выполнение хотя бы одного условия.

Если данные после фильтрации были изменены, фильтрация автоматически не срабатывает, поэтому необходимо запустить процедуру вновь, нажав на кнопку Повторить [Reapply] в группе Сортировка и фильтр на вкладке Данные.

Отмена фильтрации

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

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

Чтобы быстро снять фильтрацию со всех столбцов необходимо выполнить команду Очистить на вкладке Данные

Срезы

Срезы – это те же фильтры, но вынесенные в отдельную область и имеющие удобное графическое представление. Срезы являются не частью листа с ячейками, а отдельным объектом, набором кнопок, расположенным на листе Excel. Использование срезов не заменяет автофильтр, но, благодаря удобной визуализации, облегчает фильтрацию: все примененные критерии видны одновременно. Срезы были добавлены в Excel начиная с версии 2010.

Создание срезов

В Excel 2010 срезы можно использовать для сводных таблиц, а в версии 2013 существует возможность создать срез для любой таблицы.

Для этого нужно выполнить следующие шаги:

    Выделить в таблице одну ячейку и выбрать вкладку Конструктор [Design].

  1. В диалоговом окне отметить поля, которые хотите включить в срез и нажать OK.

Форматирование срезов

  1. Выделить срез.
  2. На ленте вкладки Параметры [Options] выбрать группу Стили срезов [Slicer Styles], содержащую 14 стандартных стилей и опцию создания собственного стиля пользователя.

  1. Выбрать кнопку с подходящим стилем форматирования.

Чтобы удалить срез, нужно его выделить и нажать клавишу Delete.

Расширенный фильтр

Расширенный фильтр предоставляет дополнительные возможности. Он позволяет объединить несколько условий, расположить результат в другой части листа или на другом листе и др.

Задание условий фильтрации

  1. В диалоговом окне Расширенный фильтр выбрать вариант записи результатов: фильтровать список на месте [Filter the list, in-place] или скопировать результат в другое место [Copy to another Location].

  1. Указать Исходный диапазон [List range], выделяя исходную таблицу вместе с заголовками столбцов.
  2. Указать Диапазон условий [Criteria range], отметив курсором диапазон условий, включая ячейки с заголовками столбцов.
  3. Указать при необходимости место с результатами в поле Поместить результат в диапазон [Copy to], отметив курсором ячейку диапазона для размещения результатов фильтрации.
  4. Если нужно исключить повторяющиеся записи, поставить флажок в строке Только уникальные записи [Unique records only].

Источник: micro-solution.ru

Как скопировать и вставить видимые ячейки (отфильтрованные ячейки таблицы) в CSV

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

Я хотел бы сделать это через save CSV, но, по-видимому, это невозможно. Приведенный ниже код работает, но он, похоже, не копирует видимые ячейки/отфильтрованные ячейки, как мне бы хотелось.

Заранее спасибо. Или если есть еще один рекомендуемый способ для получения отфильтрованных таблиц в CSV, я хотел бы услышать, как это сделать. Овации.

2 Ответа

Я думаю, что эта линия-ваша проблема:

Вы должны получить доступ к объекту tbl , например:

Аналогично, вы можете использовать:

И, наконец, избегайте всех объектов с префиксом Active (например , ActiveWorkbook , ActiveWindow ). Вы уже знаете, как назначать переменные, а затем быть последовательным об этом.

Похожие вопросы:

Я использую AutoFilter для сортировки таблицы в VBA, что приводит к меньшей таблице данных. Я хочу только скопировать / вставить видимые ячейки одного столбца после применения фильтра. Кроме того, я.

Я пытаюсь скопировать и вставить список только в видимые ячейки. По какой-то причине я получаю ошибку типа miss-match, и я не понимаю, почему. При отладке ошибка возникает на третьей строке. Sub.

Вам нужен способ вставить данные электронной таблицы в ячейки формы vba? У меня есть таблица csv, обновленная новыми данными, которые я загружаю каждый день. Я хочу скопировать все столбцы в этот.

Сценарий У меня есть лист excel с большим количеством значений. Я использую некоторый макрос для фильтрации этих значений. Что мне нужно Мне нужно скопировать только отфильтрованные значения с.

Вопрос: Я использую jqGrid для отображения таблицы. Однако производительность в Internet Explorer 9 & 8 не очень хороша, если он должен отображать более 20 строк. Я попробовал SlickGrid, и его.

Я пытаюсь скопировать видимые ячейки после использования моего фильтра на другой лист в той же книге, но я не уверен в этом коде. Как это выглядит сейчас: Sub Button1_Click() Dim i As Integer Dim.

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

У меня есть простое приложение Office.js, которое считывает данные из одного столбца, ищет что-то, а затем выводит результаты в соседний столбец. Он отлично работает в нормальных условиях, но если.

Я довольно новичок в VBA, и я хотел бы вырезать данные, доступные под столбцом заголовка, из столбцов L в S и вставить их в Столбцы D В K на том же листе. Обратите внимание, что это отфильтрованный.

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

Источник: coderoad.ru

Добавить комментарий

Adblock
detector