Как в эксель скопировать только видимые ячейки
Как в эксель скопировать только видимые ячейки
Сделал как ты описал, но получил другое сообщение: “Данная команда неприменима для несвязных диапазонов”.
Нет ли у тебя объединенных ячеек (это вообще источник гемороя при работе с таблицами )?
Вообще, если для вставки выбрать одну ячейку, то данные вставляются. Но все подряд, а не с пропусками!
Что предпринять?
Можно в режиме автофильтра в первой ячейке второго столбца (куда вставляешь) написать формулу =(первая ячейка первого столбца) и скопировать ее на весь второй столбец. Формулы вставятся только в видимые ячейки.
Потом, при желании, можно заменить формулы на значения: снять автофильтр, выделить второй столбец, копировать, Правка – Специальная вставка – значения.
2. GreedBeef , 23.06.2006 13:32 |
Nosorog
Нет ли у тебя объединенных ячеек (это вообще источник гемороя при работе с таблицами )? Можно в режиме автофильтра в первой ячейке второго столбца (куда вставляешь) написать формулу =(первая ячейка первого столбца) и скопировать ее на весь второй столбец. Не получается Формулы вставятся только в видимые ячейки. |
3. GreedBeef , 26.06.2006 14:46 |
Или только через макросы можно это реализовать? Хотя хотелось бы проделывать такие вставки вручную. |
4. Nosorog , 26.06.2006 15:41 |
GreedBeef Я все же не могу смоделировать у себя ситуацию, когда возникает ошибка, которую ты описал: “Данные не могут быть вставлены из-за несоответствия формы и размеров области копирования и области вставки”. Значит, копируется столбец из таблицы, к которой применен автофильтр, в другую книгу в таблицу, к которой тоже применен автофильтр? И ты хочешь, чтобы каждая видимая ячейка первой таблицы скопировалась в очередную видимую ячейку второй таблицы? Так? |
5. GreedBeef , 26.06.2006 20:57 |
Nosorog
На Листе2 в ячейках A1:A10 находятся числа 1. 10. К сообщению приложены файлы: 1.png, 290×396, 9Кb |
6. Vic_K , 26.06.2006 23:13 |
GreedBeef Если копируем с листа с автофильтром и вставляем в лист с автофильтром: то только на промежуточный лист и там сравнивать. Кстати получить ошибку у казанную вами мне так и не удалось, при вставке всего столбца валится такая же как у Nosorog. Если выделить именно те ячейки которые будут копироваться, то происходит вставка первой и последней ячеек. Да, совсем забыл офис 2003. |
7. GreedBeef , 27.06.2006 00:31 |
Nosorog Значит, копируется столбец из таблицы, к которой применен автофильтр, в другую книгу в таблицу, к которой тоже применен автофильтр? Нет Vic_K Постараюсь объяснить ещё раз – я копирую данные из обычной таблицы (без автофильтра) в колонку другой таблицы, у которой по одному из столцов применен автофильтр. Excel 2003 (imho для данного вопроса это не важно) |
8. Vic_K , 27.06.2006 08:35 |
GreedBeef Да я попробовал, выделять диапазон когда вставляю и получил такую же ошибку как и вы. если просто поставить курсор и нажать вставить, то происходит вставка без учета фильтра. моё мнение напрямую никак. |
9. Gogins-jan , 04.02.2007 19:45 |
Попробуй сначала отсортировать диапазон по столбцу со значениями по которым потом будешь задавать фильтрацию данных. Проверено на практике, значительно упрощает жизнь. Вообще имею немного более сложную задачу и ответа на свой вопрос ещё не нашёл. В твоём случае корень проблеммы лежит в том, что Ехсел при фильтрации просто напросто скрывает строки с ненужными параметрами. Попробуй скрыть в диапазоне несколько строк и вставить прогрессию из элементарных чисел в столбец и ты получишь тоже сообщение. Просто функция копирования или прогрессии не может работать в двух несвязанных диапазонах. |
10. Alex1111_1 , 10.07.2011 03:59 |
Есть решение
В листе 1, Там где список уже с автофильтром – рядом в столбце поставьте СТРОКА(А1), скопируйте эту формулу на все значения строк. Скопируйте получившиеся числа строк. В листе 2, Специальная вставка – Значения – вставить. – вы получите список строк подряд. Заполните строки как вам нужно Затем в VBA напишите следующее (или подобное – смотрите как вам надо) В программе надеюсь разберетесь (вставлен мой пример) Private Sub CommandButton1_Click() ‘считываем значение For j = 1 To 14 В результате – получите вставленные значения, которые шли подряд – в листе 2, в автофильтр – который в листе 1 |
11. Вика , 14.12.2011 15:06 |
А без бейсика никак не обойтись? Почти та же самая задача – из одного файла из отфильтрованного списка надо вставить значения в другой файл тоже в отфильтрованный список (количество элементов в обоих отфильтрованных списков одинаковое). В итоге вышеупомянутая ошибка: Данная команда неприменима для несвязных диапазонов. Ладно бы это была разовая задача, но количество данных в отфильтрованном списке постонно меняется и их не 10 штук. Excel – 2010. |
12. Cynacyn , 08.11.2012 14:38 | |||||||||||||||||||||||||||||||||
Я справился “вручную”. Рядом со столбцом в который будем вставлять значения протягиваем функцию СТРОКА() Я использовал СТРОКА()*1111 для того чтобы номер строки не совпал с копируемым значением. Копируем столбец с номерами строк в соседний со значениями которые нужно перенести столбец (эти два столбца дальше буду называть “таблица1”) Рядом со столбцом в который будем вставлять значения, где уже протянута функция СТРОКА() протягиваем функция ВПР(тут ячейку с номером строки в соседнем столбце;таблица 1;номер столбца в таблица1 со значениями для переноса; ) Выделяем полностью столбец в котором у нас функция ВПР, нажимаем “Выделить только видимые ячейки”, копируем. Выделяем полностью столбец в который копируем, нажимаем “Выделить только видимые ячейки”, “Специальная вставка. “->”значения”. ![]() P.S. У меня работало с автофильтром по одному столбцу, с несколькими столбцами не работает – ошибка “Данная команда не работает для несвязных диапазонов” или не вставляет в неотображаемые (не попавшие в фильтр) ячейки.
–>
Копирование в экселе |
|||||||||||||||||||||||||||||||||
|