Копирование диапазона значений в excel

Копировать данные в Excel можно с помощью стандартных системных средств: контекстное меню, перетягивание курсора Excel мышкой (за квадратик), комбинация клавиш CTRL+C. А можно воспользоваться удобным инструментом «Буфер обмена». В чем разница?

Копирование стандартными средствами — это возможность скопировать только один выделенный элемент (диапазон ячеек, диаграмма, таблица и т.п.). Стандартный метод позволяет перенести содержимое данных не только в приделах программ входящих в пакет MS Office, но и в другие Windows программы.

Инструмент «Буфер обмена» позволяет выделять в памяти программы до 24-х мест временного хранения содержимого данных. Таким образом, вы можете поместить в оперативную память 24 совершенно не связанных между собой элементов. Кроме того буфер обмена позволяет управлять содержимым хранилища оперативной памяти. Работа с буфером обмена ограничена в рамках программ пакета MS Office.

Нельзя вложиться в рамки одного урока, чтобы описать возможности копирования в программе Excel. Это одна из наиболее часто используемых функций в процессе работы. Сначала рассмотрим возможности перемещения данных в Excel стандартными системными средствами, а дальше оценим преимущества удобного инструмента «Буфер обмена».

Содержание

  • 1
    Примеры копирования данных стандартными средствами Excel

    • 1.1
      Как копировать таблицу в Excel?
  • 2
    Функциональное копирование смежных диапазонов ячеек
  • 3
    Вспомогательные инструменты для вставки данных

    • 3.1
      Инструмент «Формат по образцу»


Примеры копирования данных стандартными средствами Excel

Для наглядного примера рассмотрим копирование диапазонов данных.

Примечание. Другие элементы данных (диаграммы, таблицы, фигуры и т.п.) копируются аналогичным способом.

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


Как копировать таблицу в Excel?

Копировать выделенные ячейки в Excel можно несколькими способами. Создайте таблицу, так как показано на рисунке, а в ячейку C2 добавьте примечание.

Очень важно чтобы форматы ячеек отличались в исходной таблице. Содержимое ячеек не имеет значения за исключением наличия примечания.

Переместим данные диапазона B2:C3 в F3:G4.

Копирование ячеек таблицы.

Задание 1. Выделите диапазон B2:C3.

Перейдите на закладку инструментов «Главная» выберите «Копировать». Перейдите в ячейку F3 и нажмите на инструмент «Главная»-«Вставить».

Задание 2. Выделите диапазон ячеек B2:C3. Нажмите комбинацию клавиш CTRL+C и перейдите курсором на ячейку F3. После чего нажмите комбинацию клавиш CTRL+V.

Задание 3. По предварительно выделенному диапазону B2:C3 щелкните правой кнопкой мышки. Из появившегося контекстного меню выберите опцию «Копировать». Теперь щелкните правой кнопкой мышки по ячейке F3 и щелкните по опции контекстного меню «Вставить скопированные ячейки». Далее нажмите «ОК».

Вставка через контекстное меню.

Задание 4. По-прежнему выделяем B2:C3. Далее наведите курсор мышки на рамку выделенного диапазона. Нажмите клавишу CTRL на клавиатуре. Возле курсора мышки появится значок «+„. Удерживая левую клавишу мышки и клавишу CTRL, перетащите диапазон, расположив его по необходимому адресу (F3:G4). Отпустите сначала клавишу мышки, а потом CTRL.

Перетаскивание указателем мышки.

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


Функциональное копирование смежных диапазонов ячеек

Теперь копируем смежный диапазон с нижней гранью. Для этого выделяем диапазон A4:D4. Наведите указатель на точку в нижнем правом углу курсора Excel и стрелка примет вид жирного плюса “+». Теперь удерживая левую клавишу мышки, смещаем указатель на одну ячейку вниз.

Функциональное копирование.

Такой способ особенно эффективен для копирования формулы. Одна и та же формула каждый раз автоматически меняет адрес относительных ссылок. Более детально этот способ будет рассмотрен на следующих уроках по работе с функциями и формулами.

Примечание. Аналогичным способом можно скопировать столбец таблицы в смежный диапазон со стороны правой вертикальной грани. Соответственно курсор нужно смещать не вниз, а вправо.


Вспомогательные инструменты для вставки данных

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

Кнопка параметров вставки.

Примечание. Если данный инструмент для вас не является вспомогательным, а скорее раздражительным, то его можно отключить. Для этого зайдите в настройки программы: «Файл»-«Параметры»-«Дополнительно»-«Вырезание, копирование и вставка». Там же уберите галочку напротив «Отображать кнопку параметров вставки при вставке содержимого».


Инструмент «Формат по образцу»

Чтобы копировать формат ячейки в Excel нужно использовать инструмент «Формат по образцу» предназначен для копирования только оформления ячеек без их значений. Принцип работы этого инструмента прост. Программой выделяется место для временного хранения в оперативной памяти только форматов без значений. Это очень удобно, когда нужно скопировать оформление и сохранить при этом значения данных.

Чтобы воспользоваться данным инструментом выделяем область формата таблицы A1:D4. Дальше надо нажать «Главная»-«Формат по образцу». Курсор мышки примет значок инструмента. После чего следует щелкнуть по ячейке B7 для вставки. Как видите, переместились только форматы без значений.

Формат по образцу.

Если после выделения диапазона A1:D4 сделать двойной щелчок по инструменту «Формат по образцу», то это действие позволяет зафиксировать нажатие кнопки. Теперь можно несколько раз щелкать по разным ячейкам для вставки формата в несмежные диапазоны по одному клику.

На следующем уроке рассмотрим преимущества инструмента «Буфер обмена».

Skip to content

На чтение 2 мин. Просмотров 9.2k.

Что делает макрос: Этот макрос сможет копировать значения указанного диапазон данных и вставить их в новый диапазон.

Содержание

  1. Как макрос работает
  2. Код макроса
  3. Как использовать

Как макрос работает

В этом макросе, мы используем метод Copy объекта Range, чтобы скопировать данные из D6: D17 и вставить в L6: L17. Обратите внимание на использование целевого аргумента. Этот аргумент говорит Excel, где нужно вставить данные.

Код макроса

Sub KopirovanieDannih()
'Копируем данные
Sheets("Лист1").Range("D6:D17").Copy _
'Вставляем данные
Destination:=Sheets("Лист1").Range("L6:L17")
End Sub

При работе с таблицей, иногда приходится копировать формулы и вставлять их в качестве значений. Для этого в макросе, вы можете использовать метод PasteSpecial. В этом примере мы копируем формулы F6:F17 в M6:M17. Обратите внимание на то, что мы не только используем xlPasteValues, также xlPasteFormats, чтобы применить форматирование из скопированного диапазона.

Sub KopirovanieDannihIFormata()
Sheets("Лист1").Range("F6:F17").Copy
Sheets("Лист1").Range("M6:M17").PasteSpecial xlPasteValues
Sheets("Лист1").Range("M6:M17").PasteSpecial xlPasteFormats
End Sub

Как использовать

Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:

  1. Активируйте редактор Visual Basic, нажав ALT + F11 на клавиатуре.
  2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
  3. Выберите Insert➜Module.
  4. Введите или вставьте код.


Download Article

Easy methods to repeat a value in Excel on PC or mobile


Download Article

This wikiHow teaches how to copy one value to an entire range of cells in Microsoft Excel. If the cells you want to copy to are in a single row or column, you can use Excel’s Fill feature to fill the row or column with the same value. If you want the value to appear in a wider range of cells, such as multiple contiguous or non-connected (desktop-only) rows and columns, you can easily paste the value into a selected range.

  1. Image titled Add the Same Value to Multiple Cells in Excel Step 1

    1

    Type the value into an empty cell. For example, if you want the word «wikiHow» to appear in multiple cells, type wikiHow into any empty cell now. Use this method if you want the same value to appear in an entire range.

  2. Image titled Add the Same Value to Multiple Cells in Excel Step 2

    2

    Right-click the cell containing the value and select Copy. This copies the value to your clipboard.

    Advertisement

  3. Image titled Add the Same Value to Multiple Cells in Excel Step 3

    3

    Select the range of cells in which you want to paste the value. To do this, click and drag the mouse over every cell where the value should appear. This highlights the range.

    • The range you select doesn’t have to be continuous. If you want to select cells and/or ranges that aren’t connected, hold down the Control key (PC) or Command key (Mac) as you highlight each range.
  4. Image titled Add the Same Value to Multiple Cells in Excel Step 4

    4

    Right-click the highlighted range and click Paste. Every cell in the selected range now contains the same value.

  5. Advertisement

  1. Image titled Add the Same Value to Multiple Cells in Excel Step 5

    1

    Type the value into an empty cell. For example, if you want the word «wikiHow» to appear in multiple cells, type wikiHow into an empty cell above (if applying to a column) or beside (if applying to a row) the cells you want to fill.

  2. Image titled Add the Same Value to Multiple Cells in Excel Step 6

    2

    Tap the cell once to select it. This highlights the cell.

  3. Image titled Add the Same Value to Multiple Cells in Excel Step 7

    3

    Tap the highlighted cell once more. This opens the Edit menu.

  4. Image titled Add the Same Value to Multiple Cells in Excel Step 8

    4

    Tap Copy on the menu. Now that the value is copied to your clipboard, you’ll be able to paste it into a series of other cells.

  5. Image titled Add the Same Value to Multiple Cells in Excel Step 9

    5

    Select the range of cells in which you want the selected value to appear. To do so, tap the first cell where you want the copied value to appear, and then drag the dot at its bottom-right corner to select the entire range.

    • There is no way to select multiple non-touching ranges at once. If you need to copy the value into another non-adjacent range, repeat this step and the next step for the next range after pasting into this one.
  6. Image titled Add the Same Value to Multiple Cells in Excel Step 10

    6

    Tap the selected range and tap Paste. This copies the selected value into every cell in the range.

  7. Advertisement

  1. Image titled Add the Same Value to Multiple Cells in Excel Step 11

    1

    Type the value into an empty cell. For example, if you want the word «wikiHow» to appear in multiple cells, type wikiHow into an empty cell above (if applying to a column) or beside (if applying to a row) the cells you want to fill.

  2. Image titled Add the Same Value to Multiple Cells in Excel Step 12

    2

    Hover the mouse cursor over the bottom-right corner of the cell. The cursor will turn to crosshairs (+).

  3. Image titled Add the Same Value to Multiple Cells in Excel Step 13

    3

    Click and drag down the column or across the row to fill all cells. As long as Excel does not detect a pattern, all selected cells will be filled with the same value.

    • If the filled cells show up as a pattern, such as a series of increasing numbers, click the icon with a plus sign at the bottom of the selected cells, then select Copy cells.
  4. Advertisement

  1. Image titled Add the Same Value to Multiple Cells in Excel Step 14

    1

    Type the value into an empty cell. For example, if you want the word «wikiHow» to appear in multiple cells, type wikiHow into an empty cell above (if applying to a column) or beside (if applying to a row) the cells you want to fill.

  2. Image titled Add the Same Value to Multiple Cells in Excel Step 15

    2

    Tap the cell once to select it. This highlights the cell.[1]

  3. Image titled Add the Same Value to Multiple Cells in Excel Step 16

    3

    Tap the highlighted cell once more. This opens the Edit menu.

  4. Image titled Add the Same Value to Multiple Cells in Excel Step 17

    4

    Tap Fill on the menu. You will then see some arrow icons.

  5. Image titled Add the Same Value to Multiple Cells in Excel Step 18

    5

    Tap and drag the Fill arrow across the cells you want to fill. If you want to fill a row, tap the arrow pointing to the right and drag it until you’re finished filling all of the cells. If you’re filling a column, tap the arrow pointing downward, and then drag it down to fill the desired amount of cells.

  6. Advertisement

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Submit

Advertisement

Thanks for submitting a tip for review!

References

About This Article

Article SummaryX

1. Enter the value into a blank cell.
2. Right-click the cell and click Copy.
3. Highlight the cells you want to paste into.
4. Right-click the highlighted area and select Paste.

Did this summary help you?

Thanks to all authors for creating a page that has been read 38,174 times.

Is this article up to date?

Копирование значений из диапазона ячеек в массив и обратно с помощью VBA Excel. Простейшие примеры обмена значениями между диапазоном и массивом.

Как известно, VBA обрабатывает информацию в массивах значительно быстрее, чем в ячейках рабочего листа Excel. Поэтому, при работе с большими объемами данных, удобнее использовать массивы, чем наблюдать во время выполнения кода за мерцанием изображения на экране или просто смотреть в неизменную картинку, если обновление экрана отключено (Application.ScreenUpdating = False). Здесь обмен значениями между массивом и диапазоном ячеек будет вполне уместен.

Копирование значений из диапазона ячеек в массив

Чтобы скопировать значения из диапазона ячеек в массив, необходимо объявить переменную универсального типа (As Variant) и присвоить ей значения диапазона ячеек с помощью оператора присваивания (=):

Dim a As Variant

a = Range(«A1:C3»)

VBA Excel автоматически преобразует объявленную переменную в двумерный массив, соответствующий размерности диапазона ячеек, в нашем случае в массив — a(1 To 3, 1 To 3), и заполняет его значениями. Нумерация измерений массивов, созданных таким образом, начинается с единицы (1).

Можно, в этом случае, объявить сразу динамический массив, чтобы изначально указать, что эта переменная будет массивом. Так как свойством диапазона ячеек по умолчанию в VBA Excel является значение (Value), его можно в коде явно не указывать, но, при желании, можно и указать. Получится такая конструкция, аналогичная первой:

Dim a() As Variant

a = Range(«A1:C3»).Value

Стоит отметить, что для копирования значений из диапазона ячеек в массив можно использовать только обычную переменную или динамический массив универсального типа (Variant). VBA Excel автоматически преобразовывает их в двумерный массив. Если объявить двумерный массив с указанной заранее размерностью, использовать его не получится, будет сгенерирована ошибка с сообщением: Can’t assign to array (Нельзя назначать массив).

Копирование значений из массива в диапазон ячеек

Значения в диапазон ячеек добавляются из массива с помощью оператора присваивания (=):

Range(«A6:F15») = a

‘или

Range(«A6:F15»).Value = a

‘где a — переменная двумерного массива

Обратите внимание, что вставить значения в диапазон ячеек можно только из двумерного массива. Размерность такого массива может начинаться с нуля (0). Количество элементов в измерениях массива должно совпадать с количеством строк и столбцов в диапазоне ячеек. Если вам нужно вставить значения в одну строку или в один столбец, укажите размерность единственной строки или единственного столбца как (0) или (1 To 1), если вы хотите использовать нумерацию измерений своего массива с единицы. Например, для записи десяти значений из массива в одну строку можно объявить такой массив — massiv(9, 0), или в один столбец — massiv(0, 9).

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

Обмен значениями между двумя диапазонами

Обмен значениями можно осуществить в VBA Excel не только между массивом и диапазоном, но и между двумя диапазонами одинаковой размерности:

Range(«B2:D6») = Range(«G7:I11»).Value

У диапазона, являющегося источником значений, обязательно должно быть указано свойство Value.

Если диапазон ячеек, принимающий значения, по размеру меньше диапазона-источника, то он будет заполнен полностью:

Range(«B2:D6») = Range(«G5:L13»).Value

Если принимающий диапазон ячеек по размеру больше передающего, то часть его будет заполнена значениями диапазона-источника, а остальные ячейки — значениями #Н/Д:

Range(«B2:D6») = Range(«G7:H9»).Value

Простейшие примеры обмена значениями

Эти примеры составлены так, чтобы вам не пришлось совершать лишних действий, просто скопируйте их в свой модуль любой книги Excel с поддержкой макросов и запустите по очереди на выполнение.

Пример 1

Заполнение двумерного массива значениями и и их присвоение диапазону ячеек на рабочем листе Excel:

Sub Test1()

Dim a(2, 2) As Variant

a(0, 0) = «телепузик»

a(0, 1) = «журналист»

a(0, 2) = «ящерица»

a(1, 0) = «короед»

a(1, 1) = «утенок»

a(1, 2) = «шмель»

a(2, 0) = 200

a(2, 1) = 300

a(2, 2) = 400

Range(«A1:C3»).Value = a

End Sub

В данном случае переменная массива не обязательно должна быть универсального типа (As Variant), например, если бы в нее записывались только текстовые данные, ее можно было бы объявить как строковую (As String), и все бы работало.

Пример 2

Объявление обычной переменной универсального типа, присвоение ей значений из диапазона ячеек «A1:C3», записанных кодом первого примера, и вставка этих значений из полученного двумерного массива в диапазон «D10:F12»:

Sub Test2()

Dim a As Variant

a = Range(«A1:C3»)

Range(«D10:F12») = a

End Sub

Естественно, указанные диапазоны ячеек расположены на активном листе.

Пример 3

Допустим, на рабочем листе «Лист1» в ячейках «A1:A5» записано количество какого-то товара, а в ячейках «B1:B5» — его цена. Необходимо к этой информации добавить сумму каждого товара, умножив количество на цену, и перенести данные на «Лист2».

Sub Test3()

Dim a As Variant, i As Long

  a = Лист1.Range(«A1:C5»)

    For i = 1 To 5

      a(i, 3) = a(i, 1) _

      * a(i, 2)

    Next

  Лист2.Range(«A1:C5») = a

End Sub

Массив создан сразу с размерностью 5×3 с элементами под суммы. Даже если на первом листе в ячейках «C1:C5» есть какие-то значения, в массиве они будут перезаписаны результатами вычислений.

Копирование значений из массива в массив

Этот пример показывает, как в VBA Excel можно скопировать значения из одного массива в другой:

Sub Test4()

Dim arr1, arr2

    arr1 = Range(«G7:I11»)

    arr2 = arr1

    Range(«B2:D6») = arr2

End Sub


Как в excel скопировать несвязанные диапазоны

GreedBeef
Выделяю требуемый столбец, «только видимые ячееки», попытка вставки — «Данные не могут быть вставлены из-за несоответствия формы и размеров области копирования и области вставки»

Сделал как ты описал, но получил другое сообщение: «Данная команда неприменима для несвязных диапазонов».
Нет ли у тебя объединенных ячеек (это вообще источник гемороя при работе с таблицами )?
Вообще, если для вставки выбрать одну ячейку, то данные вставляются. Но все подряд, а не с пропусками!

Что предпринять?
Можно в режиме автофильтра в первой ячейке второго столбца (куда вставляешь) написать формулу =(первая ячейка первого столбца) и скопировать ее на весь второй столбец. Формулы вставятся только в видимые ячейки.
Потом, при желании, можно заменить формулы на значения: снять автофильтр, выделить второй столбец, копировать, Правка — Специальная вставка — значения.

Нет ли у тебя объединенных ячеек (это вообще источник гемороя при работе с таблицами )?
Нет, обычные ячейки

Можно в режиме автофильтра в первой ячейке второго столбца (куда вставляешь) написать формулу =(первая ячейка первого столбца) и скопировать ее на весь второй столбец.

Не получается
Делаю так — автофильтр, выделяю итоговый столбец, Ctrl+G «Выделить только видимые ячейки», в первую итоговую ячейку — относительную формулу ссылки на ячейки с данными =[Книга2]Лист1!B1
Ctrl+Enter — копирую формулу на все выделенные ячейки

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

GreedBeef
Я все же не могу смоделировать у себя ситуацию, когда возникает ошибка, которую ты описал: «Данные не могут быть вставлены из-за несоответствия формы и размеров области копирования и области вставки».

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

На Листе2 в ячейках A1:A10 находятся числа 1. 10.
Делаю все так, как описывал выше, и ожидаю увидеть напротив ИСТИНА — число из списка.
Однако происходит, как на картинке

К сообщению приложены файлы: 1.png, 290×396, 9Кb

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

Vic_K
Если копируем с листа с автофильтром и вставляем в лист с автофильтром
Нет

Постараюсь объяснить ещё раз — я копирую данные из обычной таблицы (без автофильтра) в колонку другой таблицы, у которой по одному из столцов применен автофильтр.
Как надо правильно копировать непрерывный диапазон в диапазон, содержащий пустые ячейки только для нужных значений (за исключением скрытых из-за фильтрации)?

Excel 2003 (imho для данного вопроса это не важно)

В листе 1, Там где список уже с автофильтром — рядом в столбце поставьте СТРОКА(А1), скопируйте эту формулу на все значения строк.
Например:
35
39
40
43
70
71
89
101
191
305

Скопируйте получившиеся числа строк.

В листе 2, Специальная вставка — Значения — вставить. — вы получите список строк подряд.

Заполните строки как вам нужно

Затем в VBA напишите следующее (или подобное — смотрите как вам надо)

В программе надеюсь разберетесь (вставлен мой пример)

Private Sub CommandButton1_Click()

‘считываем значение
ivalue = Worksheets(«Лист2»).Cells(i, 2).Value

For j = 1 To 14
‘находим значение и меняем ячейки рядом
Worksheets(«Лист1»).Cells(ivalue, 6 + j) = Worksheets(«Лист2»).Cells(i, 2 + j)

В результате — получите вставленные значения, которые шли подряд — в листе 2, в автофильтр — который в листе 1

Я справился «вручную».
Рядом со столбцом в который будем вставлять значения протягиваем функцию СТРОКА()
Я использовал СТРОКА()*1111 для того чтобы номер строки не совпал с копируемым значением.
Копируем столбец с номерами строк в соседний со значениями которые нужно перенести столбец (эти два столбца дальше буду называть «таблица1»)
Рядом со столбцом в который будем вставлять значения, где уже протянута функция СТРОКА() протягиваем функция ВПР(тут ячейку с номером строки в соседнем столбце;таблица 1;номер столбца в таблица1 со значениями для переноса; )
Выделяем полностью столбец в котором у нас функция ВПР, нажимаем «Выделить только видимые ячейки», копируем.
Выделяем полностью столбец в который копируем, нажимаем «Выделить только видимые ячейки», «Специальная вставка. «->»значения».

P.S. У меня работало с автофильтром по одному столбцу, с несколькими столбцами не работает — ошибка «Данная команда не работает для несвязных диапазонов» или не вставляет в неотображаемые (не попавшие в фильтр) ячейки.

Скрытый текст:Sub PasteToVisible()
Dim copyrng As Range, pasterng As Range
Dim cell As Range, i As Long

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Блог активной пенсионерки.

суббота, 23 августа 2014 г.

Microsoft Excel. Выделение ячеек. Связные и несвязные диапазоны ячеек.

Каждая ячейка в таблице имеет свой адрес. Он обозначается номером столбца и номером строки.

Столбцы в таблице обозначаются буквой С и цифрами.
Ряды — обозначаются буквой R и цифрами.

Например ячейка , расположенная в 5-м ряду, во втором столбце имеет адрес: R5C2.

Этот адрес показан в поле имени.

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

Ячейка становится активной и туда можно помещать информацию.

Чтобы выделить ряд, нужно щелкнуть на значении ряда.

Чтобы выделить столбец, нужно щелкнуть на значении столбца.

Выделенная совокупность ячеек называется диапазоном.
Диапазоны бывают связные и несвязные.

Связные диапазоны имеют одну выделенную границу. В правом нижнем углу связной ячейки находится маркер.

Несвязные – выделенные не смежные ячейки.

Щелкните левой кнопкой мыши на требуемой ячейке и не отпуская кнопки, протяните вправо и вниз. Отпустите кнопку.
Вы получите связный диапазон ячеек.

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

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

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

Вы можете выделить несколько групп ячеек в разных местах таблицы.
Отпустите клавишу Ctrl. Вы получили несвязный диапазон.

Можно создать связный диапазон с помощью клавиши Shift и клавиши стрелка.

Поместите курсор в ячейку, нажмите клавишу Shift и несколько раз щелкните клавишей стрелка вправо и потом кнопкой стрелка вниз или наоборот.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Копирование данных листа стандартными средствами Excel

Копировать данные в Excel можно с помощью стандартных системных средств: контекстное меню, перетягивание курсора Excel мышкой (за квадратик), комбинация клавиш CTRL+C. А можно воспользоваться удобным инструментом «Буфер обмена». В чем разница?

Копирование стандартными средствами – это возможность скопировать только один выделенный элемент (диапазон ячеек, диаграмма, таблица и т.п.). Стандартный метод позволяет перенести содержимое данных не только в приделах программ входящих в пакет MS Office, но и в другие Windows программы.

Инструмент «Буфер обмена» позволяет выделять в памяти программы до 24-х мест временного хранения содержимого данных. Таким образом, вы можете поместить в оперативную память 24 совершенно не связанных между собой элементов. Кроме того буфер обмена позволяет управлять содержимым хранилища оперативной памяти. Работа с буфером обмена ограничена в рамках программ пакета MS Office.

Нельзя вложиться в рамки одного урока, чтобы описать возможности копирования в программе Excel. Это одна из наиболее часто используемых функций в процессе работы. Сначала рассмотрим возможности перемещения данных в Excel стандартными системными средствами, а дальше оценим преимущества удобного инструмента «Буфер обмена».

Примеры копирования данных стандартными средствами Excel

Для наглядного примера рассмотрим копирование диапазонов данных.

Примечание. Другие элементы данных (диаграммы, таблицы, фигуры и т.п.) копируются аналогичным способом.

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

Как копировать таблицу в Excel?

Копировать выделенные ячейки в Excel можно несколькими способами. Создайте таблицу, так как показано на рисунке, а в ячейку C2 добавьте примечание.

Очень важно чтобы форматы ячеек отличались в исходной таблице. Содержимое ячеек не имеет значения за исключением наличия примечания.

Переместим данные диапазона B2:C3 в F3:G4.

Задание 1. Выделите диапазон B2:C3.

Перейдите на закладку инструментов «Главная» выберите «Копировать». Перейдите в ячейку F3 и нажмите на инструмент «Главная»-«Вставить».

Задание 2. Выделите диапазон ячеек B2:C3. Нажмите комбинацию клавиш CTRL+C и перейдите курсором на ячейку F3. После чего нажмите комбинацию клавиш CTRL+V.

Задание 3. По предварительно выделенному диапазону B2:C3 щелкните правой кнопкой мышки. Из появившегося контекстного меню выберите опцию «Копировать». Теперь щелкните правой кнопкой мышки по ячейке F3 и щелкните по опции контекстного меню «Вставить скопированные ячейки». Далее нажмите «ОК».

Задание 4. По-прежнему выделяем B2:C3. Далее наведите курсор мышки на рамку выделенного диапазона. Нажмите клавишу CTRL на клавиатуре. Возле курсора мышки появится значок «+». Удерживая левую клавишу мышки и клавишу CTRL, перетащите диапазон, расположив его по необходимому адресу (F3:G4). Отпустите сначала клавишу мышки, а потом CTRL.

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

Функциональное копирование смежных диапазонов ячеек

Теперь копируем смежный диапазон с нижней гранью. Для этого выделяем диапазон A4:D4. Наведите указатель на точку в нижнем правом углу курсора Excel и стрелка примет вид жирного плюса «+». Теперь удерживая левую клавишу мышки, смещаем указатель на одну ячейку вниз.

Такой способ особенно эффективен для копирования формулы. Одна и та же формула каждый раз автоматически меняет адрес относительных ссылок. Более детально этот способ будет рассмотрен на следующих уроках по работе с функциями и формулами.

Примечание. Аналогичным способом можно скопировать столбец таблицы в смежный диапазон со стороны правой вертикальной грани. Соответственно курсор нужно смещать не вниз, а вправо.

Вспомогательные инструменты для вставки данных

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

Примечание. Если данный инструмент для вас не является вспомогательным, а скорее раздражительным, то его можно отключить. Для этого зайдите в настройки программы: «Файл»-«Параметры»-«Дополнительно»-«Вырезание, копирование и вставка». Там же уберите галочку напротив «Отображать кнопку параметров вставки при вставке содержимого».

Инструмент «Формат по образцу»

Чтобы копировать формат ячейки в Excel нужно использовать инструмент «Формат по образцу» предназначен для копирования только оформления ячеек без их значений. Принцип работы этого инструмента прост. Программой выделяется место для временного хранения в оперативной памяти только форматов без значений. Это очень удобно, когда нужно скопировать оформление и сохранить при этом значения данных.

Чтобы воспользоваться данным инструментом выделяем область формата таблицы A1:D4. Дальше надо нажать «Главная»-«Формат по образцу». Курсор мышки примет значок инструмента. После чего следует щелкнуть по ячейке B7 для вставки. Как видите, переместились только форматы без значений.

Если после выделения диапазона A1:D4 сделать двойной щелчок по инструменту «Формат по образцу», то это действие позволяет зафиксировать нажатие кнопки. Теперь можно несколько раз щелкать по разным ячейкам для вставки формата в несмежные диапазоны по одному клику.

На следующем уроке рассмотрим преимущества инструмента «Буфер обмена».

I’m trying to copy values from a table to a Range, in Excel using vba Macros, but I dont want the table format, only its values. How can I achieve this?

Here is part of the code:

    'Source range
    Set r = Sheets("Sheet1").Range("Table1")

    'Destination range
    Set dest = Range(.Cells(linhaAtual, 1), .Cells(linhaAtual + r.Rows.Count - 1, 5))

    r.Copy Destination:= dest

asked Jun 18, 2014 at 20:59

pablo.vix's user avatar

You can skip the copy command altogether by assigning the values of the source range to your destination range:

'Source range
Set r = Sheets("Sheet1").Range("Table1")
'Destination range
Set dest = Range(.Cells(linhaAtual, 1), .Cells(linhaAtual + r.Rows.Count - 1, 5))

dest.Value = r.Value

answered Jun 19, 2014 at 12:47

MP24's user avatar

MP24MP24

3,07721 silver badges23 bronze badges

1

I believe you are looking for the functionality of pasting values. You can record it, or use what I have done below. (from recording so selecting is in there, which will make it run slower, but you aren’t looping so it is only constant time being added).

Selection.Copy
        'Select your destination like range("destination").select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False

answered Jun 18, 2014 at 21:11

Kory's user avatar

KoryKory

3081 silver badge7 bronze badges

1

I assume you want to copy from «Sheet1» to «Sheet1» — of course you can make this a parameter and loop through all your sheets

Dim rSource as range 'Source Range
Dim rDest as range   'Target Range - It should be the same dimension
Dim wbSource as workbook 'Source Workbook
Dim wbTarget as workbook 'Target Workbook
Dim myRange as string

myRange = "A:G" ' It is an example, you can make it dynamic

'add new workbook
    Workbooks.Add
    Set wbTarget = ActiveWorkbook

'Set the Source Range
    Set rSource = wbSource.Sheets("Sheet1").Range(myRange)

'Destination Range
    Set rDest = wbTarget.Sheets("Sheet1").Range(myRange)

'Copy values only
    rSource.Copy
    rDest.PasteSpecial xlPasteValues

answered Oct 8, 2018 at 17:20

pbou's user avatar

pboupbou

2782 silver badges13 bronze badges

You need to use the pastespecial command as shown below.

'Source range
Set r = Sheets("Sheet1").Range("Table1")

'Destination range
Set dest = Range(.Cells(linhaAtual, 1), .Cells(linhaAtual + r.Rows.Count - 1, 5))

r.Copy 
dest.pastespecial paste:=xlPasteValues

answered Jun 18, 2014 at 21:15

gtwebb's user avatar

gtwebbgtwebb

2,9713 gold badges13 silver badges22 bronze badges

r.Copy
dest.pastespecial xlPastevalues

answered Jun 18, 2014 at 21:19

user2649602's user avatar

1

I achieve a solution that works.

There follows the code:

    Set r = Sheets("Criteria").Range("CriteriaTable")

    Set dest = Range(.Cells(linhaAtual, 1), .Cells(linhaAtual + r.Rows.Count - 1, 5))
    Sheets("Criteria").Activate
    r.Select
    Selection.Copy
    Sheets("Load").Activate
    dest.Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

answered Jun 20, 2014 at 15:28

pablo.vix's user avatar

pablo.vixpablo.vix

2,0432 gold badges15 silver badges12 bronze badges

Use the Range.Value method. Its like setting a variable a = 1. Where you think of it as copying 1 to a. So…

Range2.value = Range1.value

or

Worksheets("historical").Range("A1:F15").Value =  Worksheets("actuals").Range("A1:F15").Value

Here I’m copying some data in worksheet actual to some historical worksheet. Or if you prefer setting the value of one range to another range.

Saurabh Bhandari's user avatar

answered Jan 30, 2018 at 4:08

RHH1095's user avatar

RHH1095RHH1095

791 silver badge4 bronze badges

You can skip the copy command altogether as MP24 said .. his suggestion worked for me after modifyibg the last line from «value» to «formula» as follows

Set r = Sheets(«Sheet1»).Range(«Table1»)
Set dest = Range(.Cells(linhaAtual, 1), .Cells(linhaAtual +
r.Rows.Count — 1, 5))

dest.formula = r.formula

answered Aug 1, 2022 at 6:42

Jawali M's user avatar

Цитата
Андрей VG написал:
Раздать таблицы K, нет лучше N сотрудникам, тогда параллельное копирование позволит ускорить общее время выполнения всей задачи.

Сейчас наоборот свожу данные от многих сотрудников…к сожалению, данный вариант не подходит…Наверняка должно быть в экселе предусмотрено такое быстрое копирование…Выделить начальную и конечную ячейку, что-то нажать и выделится весь диапазон…только я не помню, как это делается…Вроде нашел вариант —
Как выделить большой диапазон ячеек в Excel? Клавиша F5 или CTRL+G. В появившемся окне, в поле «Ссылка» введите адрес: B3:D12345 (или b3:d12345) и нажмите ОК. Таким образом, вы без труда захватили огромный диапазон, всего за пару кликов.

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Копирование диапазона в массив excel vba
  • Копирование значения ячейки в другую ячейку в excel
  • Копирование данных с одного листа на другой excel с условием
  • Копирование значения ячейки в excel на другой лист
  • Копирование данных с одного листа на другой excel vba

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии