more Пользователь Сообщений: 9 |
Здравствуйте! |
webley Пользователь Сообщений: 1995 |
|
more Пользователь Сообщений: 9 |
{quote}{login=webley}{date=08.07.2011 11:58}{thema=}{post}попробуйте{/post}{/quote} |
webley Пользователь Сообщений: 1995 |
а вся строка и копируется |
{quote}{login=webley}{date=11.07.2011 10:09}{thema=}{post}а вся строка и копируется а не мог бы выложить код?? спасибо! |
|
Serge Пользователь Сообщений: 11308 |
Код стоит денег. Вы в файл заглядывали? |
да, конечно, приминил в своем файле, все работает за что огромное спасибо, но хотелось бы доработать, в частности копирования не всей строки а лишь необходимые ячейки в строке. |
|
KuklP Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
Вы уж определитесь: Я сам — дурнее всякого примера! … |
извинияюсь, то писал другой участник, функционально смысл вопроса идентичен. |
|
KuklP Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
Да я уж понял. Если судить по пунктуации, то один. Ну Вы еще и в орфографии Тс переплюнули:-) Так, что мой недочет. Я сам — дурнее всякого примера! … |
к сожалению влияние «клавы» распространяется не только на почерк.. честно сказать мне бы макрос доделать.. |
|
KuklP Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
А проблема в чем? Прочитать правила, выложить пример. Откуда кому знать, какие ячейки «лишь необходимые ячейки в строке»? Я сам — дурнее всякого примера! … |
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
{quote}{login=KukLP}{date=16.07.2011 05:53}{thema=}{post} Откуда кому знать, какие ячейки «лишь необходимые ячейки в строке»?{/post}{/quote} |
KuklP Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
Тогда тебе и рисовать:-) 63333 Я сам — дурнее всякого примера! … |
Hugo Пользователь Сообщений: 23252 |
#15 16.07.2011 21:42:21 Да что там рисовать — переделки полстроки: Range(Cells(Target.Row, 1), Cells(Target.Row, 5)).Copy Destination:=Sheets(«Лист2»).Rows(Sheets(«Лист2»).Cells(Rows.Count, 4).End(xlUp).Row + 1) |
Dmitry1992_92, Здравствуйте!
Я тоже начинающий, но позволю попробую ответить с помощью формулы.
Прикладываю файл с примером.
На листе 1 в столбец А вводите значения, а на листе 2 в столбце B будут заполнятся значения лишь тогда, когда будут заполнены ячейки.
А если ячейки пустые – то и на листе 2 в столбце В ячейки тоже будут пустые.
Вот формула:
Код
=ЕСЛИ(Лист1!A1<>»»;Лист1!A1;»»)
Это значит, если на Листе1 ячейка A1 не пустая то результат будет тот же что и в ячейке A1 на листе 1.
Мне кажется правильнее было бы Вам вопрос сформулировать не Как сделать автоматическое копирование ячейки?
А «Как формулой сделать автоматическое копирование значение ячейки?»
Что бы скопировать формулы – надо «протянуть» их вниз.
Dmitry1992_92 так Вы хотели?
P. S. Dmitry1992_92 Дополняю сообщение. После написанного.
Пожалуйста. Рад был помочь.
А если Вам нужно что бы было тоже значение что в ячейке на том же листе (например на Лист1) – то формула будет следующей:
А вот формула Если не пустая ячейка A1 то результат 1.
Или другой вариант формулы:
Код
=ЕСЛИ(ЕПУСТО(A1);»»;»1″)
А вот если не пустая ячейка А1 то результат слово «яблоко»
Код
=ЕСЛИ(ЕПУСТО(A1);»»;»яблоко»)
@Dazumi30
You can hide the existing empty lines by selecting / clicking the filter function for column E (Available) in «Table2» only «Yes».
You could also use VBA here, but with many lines that would be more time-consuming than with the filter.
Here also a VBA suggestion, in case you change your mind … is intended for the empty lines in Table2.
Dim x as integer
Tabelle1.Activate
x = 3
Do
If Cells(x, 5).Value = "" Then
Rows(x).EntireRow.Hidden = True
Else
Rows(x).EntireRow.Hidden = False
End If
x = x + 1
If Cells(x, 1).Value = "Yes" Then Exit Do
Loop
End Sub
'Untested
I would be happy to know if I could help.
Nikolino
I know I don’t know anything (Socrates)
Эта статья может вам помочь для автоматического копирования и вставки значения ячейки в текущем листе или с одного листа на другой без использования сочетаний клавиш.
Автоматическое копирование и вставка ячейки в текущий лист или с одного листа на другой с формулой
Автоматическое копирование и вставка ячейки в текущий лист с помощью VBA
Скопируйте и вставьте несколько диапазонов на текущий лист или с одного листа на другой с помощью Kutools for Excel
Автоматическое копирование и вставка ячейки в текущий лист или с одного листа на другой с формулой
Вы можете использовать формулу для автоматического копирования и вставки ячейки. Пожалуйста, сделайте следующее.
1. Чтобы скопировать и вставить ячейку в текущий лист, например, скопировать ячейку с A1 в D5, вы можете просто выбрать ячейку назначения D5, а затем ввести = A1 и нажмите клавишу Enter, чтобы получить значение A1.
2. Для копирования и вставки ячейки с одного листа на другой, например для копирования ячейки A1 листа Sheet1 в ячейку D5 листа Sheet2, выберите ячейку D5 на листе Sheet2, затем введите = Лист1! A1 и нажмите клавишу Enter, чтобы получить значение.
Tips: Целевая ячейка связана с скопированной ячейкой и будет изменена по мере изменения исходной ячейки.
Автоматическое копирование и вставка ячейки в текущий лист с помощью VBA
Следующий код VBA помогает скопировать ячейку или диапазон ячеек и вставить их в указанные ячейки на текущем листе.
1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.
2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. Затем скопируйте и вставьте приведенный ниже код VBA в окно модуля.
Код VBA: автоматическое копирование и вставка ячейки в текущий лист
Sub RangeTest()
On Error Resume Next
Dim xRg As Range
Set xRg = Application.Selection
Range("A1 ").Copy Range("D5")
xRg.Select
End Sub
Внимание: В коде A1 — это ячейка, которую вы скопируете, а D5 — это ячейка назначения для размещения значения ячейки A1. Для автоматического копирования и вставки диапазона ячеек замените ячейку диапазоном, например замените A1 на A1: A10 и замените D5 на D1: D10.
3. нажмите F5 нажмите клавишу для запуска кода, то определенная ячейка (диапазон) будет автоматически скопирована и вставлена в указанную ячейку (диапазон), а также форматирование ячейки.
Скопируйте и вставьте несколько диапазонов на текущий лист или с одного листа на другой с помощью Kutools for Excel
Если у вас есть несколько диапазонов, которые нужно скопировать одновременно, вы можете попробовать Копировать диапазоны полезности Kutools for Excel.
1. Выберите несколько диапазонов, которые нужно скопировать, удерживая Ctrl ключ. Затем нажмите Кутулс > Копировать диапазоны. Смотрите скриншот:
2. в Копировать несколько диапазонов диалоговое окно, вы можете увидеть, что выбранные диапазоны перечислены в Диапазоны для копирования коробка. Затем укажите параметр в Специальная вставка раздел, проверьте Включая высоту строки или Включая ширину столбца поле, как вам нужно, и, наконец, нажмите OK кнопка. Смотрите скриншот:
3. В секунду Копировать несколько диапазонов диалоговом окне укажите пустую ячейку для вставки выбранных диапазонов, а затем щелкните значок OK кнопку.
Внимание: если вы хотите вставить выбранные диапазоны на другой лист, выберите ячейку на этом листе и нажмите кнопку «ОК» во втором диалоговом окне «Копировать несколько диапазонов».
Теперь выбранные диапазоны копируются и вставляются в указанное место.
Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Скопируйте и вставьте несколько диапазонов в текущий лист или с одного листа на другой
Статьи по теме:
- Как автоматически заполнять другие ячейки при выборе значений в раскрывающемся списке Excel?
- Как выполнить автозаполнение при вводе в раскрывающемся списке Excel?
- Как автоматически заполнять дату в ячейке, когда соседняя ячейка обновляется в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
0 / 0 / 0 Регистрация: 25.08.2015 Сообщений: 33 |
|
1 |
|
Автоматическое копирование формул при добавлении строки27.09.2016, 14:32. Показов 18935. Ответов 5
В таблицу часто вносятся данные путём добавления строк (зачастую в хаотичном порядке то в середину то выше то ниже, но главное что не в первую и не в последнюю строку) Если да то как??? Простой пример прилагаю.
0 |
5942 / 3154 / 698 Регистрация: 23.11.2010 Сообщений: 10,524 |
|
27.09.2016, 14:53 |
2 |
Сообщение было отмечено Kamekadze_rus как решение РешениеОтформатируйте таблицу как Таблицу и тогда все Ваши пожелания реализуются.
2 |
0 / 0 / 0 Регистрация: 25.08.2015 Сообщений: 33 |
|
27.09.2016, 15:01 [ТС] |
3 |
А как это сделать? ))))
0 |
5942 / 3154 / 698 Регистрация: 23.11.2010 Сообщений: 10,524 |
|
27.09.2016, 15:08 |
4 |
Kamekadze_rus, выделить таблицу — Главная — группа Стили — Форматировать как таблицу.
0 |
2640 / 1697 / 694 Регистрация: 04.09.2015 Сообщений: 3,367 |
|
27.09.2016, 15:11 |
5 |
Еще можно формулы немного поправить, чтобы при вставке строк не было ошибки деления на ноль и автоматически добавлялся номер строки.
0 |
0 / 0 / 0 Регистрация: 25.08.2015 Сообщений: 33 |
|
27.09.2016, 15:16 [ТС] |
6 |
Всем большое спасибо!
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
27.09.2016, 15:16 |
Помогаю со студенческими работами здесь Автоматическое копирование строки в другую таблицу по признаку содержания определенной ячейки QTextBrowser — автоматическое копирование текста при нажатии Как сделать автоматическое копирование данных при их изменении? Excel. Копирование столбца, при заполнении 22-й строки продолжить копирование в соседний столбец Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 6 |
Таблица в Excel – это сложный массив с множеством параметров. Он может состоять из значений, текстовых ячеек, формул и быть отформатирован разными способами (ячейки могут иметь определенное выравнивание, цвет, направление текста, специальные пометки и т.п.).
При копировании таблицы иногда требуется перенести не все ее элементы, а только некоторые. Рассмотрим, как это можно сделать.
Специальная вставка
Очень удобно выполнять перенос данных таблицы с помощью специальной вставки. Она позволяет выбрать только те параметры, которые нам необходимы при копировании. Рассмотрим пример.
Имеем таблицу с показателями по наличию макарон определенных марок на складе магазина. Наглядно видно, сколько килограмм было в начале месяца, сколько докуплено и продано, а также остаток на конец месяца. Два важных столбца выделены разными цветами. Остаток на конец месяца рассчитан по элементарной формуле.
Попробуем воспользоваться командой СПЕЦИАЛЬНАЯ ВСТАВКА и скопировать все данные.
Сначала мы выделяем имеющуюся таблицу, правой кнопкой вызываем меню и жмем КОПИРОВАТЬ.
В свободной ячейке снова вызываем меню правой кнопкой и нажимаем СПЕЦИАЛЬНАЯ ВСТАВКА.
Если мы оставим все как есть по умолчанию и просто нажмем ОК, то таблица вставится полностью, со всеми ее параметрами.
Попробуем поэкспериментировать. В СПЕЦИАЛЬНОЙ ВСТАВКЕ выберем другой пункт, например, ФОРМУЛЫ. Получили уже неформатированную таблицу, но с работающими формулами.
Теперь вставим не формулы, а только ЗНАЧЕНИЯ результатов их вычислений.
Чтобы новая таблица со значениями получила внешний вид аналогичный образцу выделим ее и вставим ФОРМАТЫ с помощью специальной вставки.
Теперь попробуем выбрать пункт БЕЗ РАМКИ. Получили полную таблицу, но только без выделенных границ.
Полезный совет! Чтобы перенести формат вместе с размерами столбцов нужно перед копированием выделить не диапазон исходной таблицы, а столбцы целиком (в данном случаи это диапазон A:F).
Аналогично можно поэкспериментировать с каждым пунктом СПЕЦИАЛЬНОЙ ВСТАВКИ, чтобы наглядно увидеть, как она работает.
Перенос данных на другой лист
Перенос данных на другие листы книги Excel позволяет связывать несколько таблиц. Это удобно тем, что при замене какого-то значения на одном листе, меняются значения на всех остальных. При создании годовых отчетов это незаменимая вещь.
Рассмотрим, как это работает. Для начала переименуем листы Excel в месяцы. Затем с помощью уже знакомой нам СПЕЦИАЛЬНОЙ ВСТАВКИ перенесем таблицу на февраль и удалим значения из трех столбов:
- На начало месяца.
- Приход.
- Расход.
Столбец «На конец месяца» у нас задан формулой, поэтому при удалении значений из предыдущих столбцов, он автоматически обнуляется.
Перенесем данные по остатку макарон каждой марки с января на февраль. Это делается буквально в пару нажатий.
- На листе ФЕВРАЛЬ ставим курсор в ячейку, показывающую количество макарон марки А на начало месяца. Можно посмотреть на рисунок выше – это будет ячейка D3.
- Ставим в этой ячейке знак РАВНО.
- Переходим на лист ЯНВАРЬ и кликаем на ячейку, показывающую количество макарон марки А на конец месяца (в нашем случае это ячейка F2 на листе «январь»).
Получаем следующее: в ячейке C2 образовалась формула, которая отсылает нас на ячейку F2 листа ЯНВАРЬ. Протянем формулу вниз, чтобы знать количество макарон каждой марки на начало февраля.
Аналогично можно перенести данные на все месяцы и получить наглядный годовой отчет.
Перенос данных в другой файл
Аналогично можно переносить данные из одного файла в другой. Данная книга в нашем примере так и называется EXCEL. Создадим еще одну и назовем ее ПРИМЕР.
Примечание. Создавать новые файлы Excel можно даже в разных папках. Программа будет автоматически искать указанную книгу, независимо от того, в какой папке и на каком диске компьютера она находится.
Скопируем в книгу ПРИМЕР таблицу с помощью все той же СПЕЦИАЛЬНОЙ ВСТАВКИ. И опять удалим значения из трех столбцов. Проведем те же действия, что и в предыдущем параграфе, но переходить уже будем не на другой лист, а на другую книгу.
Получили новую формулу, которая показывает, что ячейка ссылается на книгу EXCEL. Причем видим, что ячейка F2 выглядит как $F$2, т.е. она зафиксирована. И если мы хотим протянуть формулу на остальные марки макарон, сначала нужно удалить значки доллара, чтобы снять фиксацию.
Теперь вы знаете, как грамотно переносить данные из таблиц в рамках одного листа, с одного листа на другой, а также с одного файла в другой.
Автоматический перенос данных из одной таблицы в другую в программе Excel.
Приведу три способа Автоматического переноса данных с одного листа программы «Эксель» в другой.
Первый, самый простой и примитивный способ связи двух таблиц на разных листах документа -вставка данных при помощи опции специальной вставки.
Рассмотрим, как соединить две таблицы по шагам.
Первый шаг.
Необходимо выделить ту таблицу, из которой будут транслироваться данные во вторую таблицу.
Второй шаг.
Копировать информацию сочетанием клавиш ctrl+C или вызвав контекстное меню правой кнопкой мыши и кликнув по пункту меню «Копировать»
Третий шаг.
Перейти на лист документа «Excel», в который Вы планируете транслировать информацию из первой таблицы.
Четвертый шаг.
Поставить курсор в первую (левую верхнюю) ячейку таблицы и выбрать в меню «Вставка» пункт «Вставить связь». В некоторых версиях программы «Excel» этот пункт находится в меню «Специальная вставка»
После вставки связи следует отформатировать вид ячеек – привести их к надлежащему виду.
Результат вставки связи
Второй способ переноса данных из одной таблицы в другую — это использование сводных таблиц в программе «Excel».
При использовании данного метода роль второй таблицы («реципиента») играет сама сводная таблица.
Как обновить сводную таблицу
При клике правой кнопкой мыши по сводной таблице и нажатии на пункт «Обновить» сводная таблица автоматически перенесет все данные из связанного массива информации («таблицы донора»).
О том, как в «Эксель» создавать сводные таблицы подробно написано в статье:
Как делать сводные таблицы в программе «Excel» и для чего они нужны.
Третий способ самый эффективный и наиболее автоматизированный — это использование меню надстройки «Power Query».
Правда нужно отметить, что этот способ подходит только пользователям Excel 2016 и пользователям Excel 2013и выше с установленной надстройкой «Power Query».
Смысл способа в следующем:
Необходимо открыть вкладку «Power Query». В разделе «Данные Excel» нажимаем кнопку (пиктограмму) «Из таблицы».
Из таблицы -Power Query
Далее нужно выбрать диапазон ячеек, из которых нужно «притянуть» информацию и нажимаем «Ок».
Источник данных для запроса Power Query
После выбора области данных появится окно настройки вида новой таблицы. В этом окне Вы можете настроить последовательность вывода столбцов и удалить ненужные столбцы.
После настройки вида таблицы нажмите кнопку «Закрыть и загрузить»
Обновление полученной таблицы происходит кликом правой кнопки мыши по названию нужного запроса в правой части листа (список «Запросы книги»). После клика правой кнопкой мыши в выпадающем контекстном меню следует нажать на пункт «Обновить»
Обновление запроса в PowerQuery
Всем добра.
Задача:
В некую таблицу скопировать все значения из столбца другой таблицы где значение справа равно некоторому.
Мысли:
Когда у меня первый раз спросили про такое, я ответил- фигушки, без макроса никак, по крайней мере для неопределенного количества найденных строк.
Спустя время мне задали этот вопрос повторно и тут меня осенило — это не невозможно.
Итак в чем заключается мысль?, а мысль в доп столбце, в котором хранится номер позиции вхождения в некотором диапазоне, где начало диапазона определяется предыдущим.
на деле это выглядит так:
Искать будем значение из ячейки $B$5 (в этой ячейке динамический выпадающий список) в другом листе:
=ПОИСКПОЗ($B$5;ЛИСТ2!B:B;0)
ПоискПоз — ищет вхождения в диапазоне
Результат формулы = 8, т.е. восьмая строчка
Проверяем, и вправду так.
Последующие ячейки при расчете будут учитывать предыдущую:
=ПОИСКПОЗ($B$5;ДВССЫЛ(«Карт.сч.!R»&$C16+1&»C2:R[1000]C2»;ЛОЖЬ);0)+C16)
Во втором аргументе формулы ПоискПоз ( ДВССЫЛ(«Карт.сч.!R»&$C16+1&»C2:R[1000]C2»;ЛОЖЬ); ) формируется диапазон $B$0+предыдущее положение+1 т.е. R9C2:R1000C2
Т.о. мы исключаем уже найденную строку из массива для поиска.
В итоге вот такой формулой
ДВССЫЛ(«Карт.сч.!R»&C16&»C5»;ЛОЖЬ)
Мы получаем значение из пятой колонки строки номер 8, и так далее.
Это можно записать в одну ячейку, но в моем случае получается очень громоздкая конструкция:
=ЕСЛИОШИБКА(ЕСЛИ(ЕПУСТО(ДВССЫЛ(«Карт.сч.!R»&ЕСЛИОШИБКА(ПОИСКПОЗ(ДВССЫЛ(«$B»&СТРОКА()-B17-10;ИСТИНА);ДВССЫЛ(«Карт.сч.!R»&$C16+1&»C2:R[1000]C2″;ЛОЖЬ);0)+C16;»-«)&»C5″;ЛОЖЬ));»АВАНС «;»»)&ТЕКСТ(ДВССЫЛ(«Карт.сч.!R»&ЕСЛИОШИБКА(ПОИСКПОЗ(ДВССЫЛ(«$B»&СТРОКА()-B17-10;ИСТИНА);ДВССЫЛ(«Карт.сч.!R»&$C16+1&»C2:R[1000]C2″;ЛОЖЬ);0)+C16;»-«)&»C3″;ЛОЖЬ);»дд.ММ.гггг»);»»)
Для двойных/тройных условий в поиске предлагаю использовать доп колонку, в таблице поиска, с конкатенацией колонок.