Return the number of columns in a given array or reference
How to Get Excel Last Value in Column
The COLUMNS Function[1] in Excel is an Excel Lookup/Reference function. It is useful for looking up and providing the number of columns in a given reference or array. The COLUMNS function, after specifying an Excel range, will return the number of columns that are contained within that range.
Formula
=COLUMNS(array)
The COLUMNS function in Excel includes only one argument – array. The array argument is a required argument. It is the reference to a range of cells or an array or array formula for which we want the number of columns. The function returns a numerical value.
How to use the COLUMNS Function in Excel?
It is a built-in function that can be used as a worksheet function in Excel. To understand the uses of this function, let’s consider a few examples:
Example 1
Let’s see how this function works when we provide the following references:
Suppose we wish to find out the number of columns in a range. The most basic formula used is = COLUMNS(rng).
In the first reference above, we used the COLUMNS function to get the number of columns from range A6:F6. We got the result as 6 as shown in the screenshot below:
So, this function counted the number of columns and returned a numerical value as the result.
When we gave the cell reference B6, it returned the result of 1, as only one reference was given.
Lastly, when we provided the formula F1:F9, it counted the number of columns as 1 and the function returned the result accordingly.
Thus, in this function, “array” can be an array, an array formula, or a reference to a single contiguous group of cells.
COLUMNS Function – Example 2
Using Columns with other formulas: If we wish to get the address of the first cell in a named range, we can use the ADDRESS function together with the ROW and COLUMN functions. The formula to be used is below:
What happens in this formula is that the ADDRESS function builds an address based on a row and column number. Then, we use the ROW function to generate a list of row numbers, which are then shifted by adding ROWS(B5:D5)-1, so that the first item in the array is the last row number:
ROW(B5:D5)+ROWS(B5:D5)-1
We do the same for COLUMN and COLUMNS: COLUMN(B5:D5)+COLUMNS(B5:D5)-1
What happens is that the ADDRESS function now collects and returns an array of addresses. If we enter the formula in a single cell, we just get the item from the array, which is the address corresponding to the last cell in a range.
COLUMNS Function – Example 3
Now let’s see how to find out the last column in a range. The data given is as follows:
The formula used is =MIN(COLUMN(A3:C5))+COLUMNS(A3:C5)-1
Using the formula above, we can get the last column that is in a range with a formula based on the COLUMN function.
When we give a single cell as a reference, the COLUMN function will return the column number for that particular reference. However, when we give a range that contains multiple columns, the COLUMN function will return an array that contains all column numbers for the given range.
If we wish to get only the first column number, we can use the MIN function to extract just the first column number, which will be the lowest number in the array.
Once we get the first column, we can just add the total columns in the range and subtract 1, to get the last column number.
The result is shown below:
For a very large number of ranges, we can use the INDEX function instead of the MIN function. The formula would be:
=COLUMN(INDEX(range,1,1))+COLUMNS(range)-1
Click here to download the sample Excel file
Additional Resources
Thanks for reading CFI’s guide to important Excel functions! By taking the time to learn and master these functions, you’ll significantly speed up your financial analysis. To learn more, check out these additional CFI resources:
- Excel Functions for Finance
- Advanced Excel Formulas Course
- Advanced Excel Formulas You Must Know
- Excel Shortcuts for PC and Mac
- See all Excel resources
Article Sources
- COLUMNS Function
We use Range.SpecialCells() method in the below VBA Code to find and return details of last used row, column, and cell in a worksheet.
Sample Data:
Sample Data
Syntax:
expression.SpecialCells (Type, Value)
Eg: To return the last used cell address in an activesheet. ActiveSheet.Range(“A1”).SpecialCells(xlCellTypeLastCell).Address
VBA Code:
Declaring Variables:
Variable | Data Type | Comments |
---|---|---|
LastRow | Long | Find and store last used row |
LastCol | Long | store last used column |
LastCell | String | store last used cell address |
'Variable Declaration Dim LastRow As Long, LastCol As Long, LastCell As String
Use SpecialCells function to find last used row/column/cell
'Find Last Used Row LastRow = ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Row 'Find Last Used Column LastCol = ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Column 'Find Last Used Cell LastCell = ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Address
Concatenate all three variables (LastRow/LastCol/LastCell), add a new line between variables use Chr(10). Show the final output in an Excel Message box.
'Display the last used row/column/cell MsgBox "Last Used Row : " & LastRow & Chr(10) & "Last Used Column : " & LastCol & Chr(10) & "Last Used Cell : " & LastCell
Implementation:
Follow the below steps to find the Last Used Row and Last Used Column in Excel VBA
Step 1: Add a shape (Find Last Row/Column/Cell) on your worksheet.
Step 2: Right-click on “Find Last Row/Column/Cell” and “Assign Macro..”
Step 3: Select “findLastUsedCell”, you can see a list of macros if available in your workbook
Step 4: Save your excel file as “Excel Macro-Enabled Workbook” *.xlsm
Step 5: Click “Find Last Row/Column/Cell” to execute the VBA code. Code will popup below output for the above given example (Output).
Output:
Выделение диапазонов ячеек в MS EXCEL
Смотрите также «» Thenarr() = Range(«A10″).Resize(2, помещаются строки не200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Найти()
полезным будет режим по ячейке B3.. Выделяет только видимые надписи, фигуры, диаграммы ошибок. Эта опцияОКНабор значков
Выделяем диапазон смежных ячеек
значение. один из готовых + G наПерейти выбрав первую ячейкуНа листе с помощью.Offset(, 6).Value = lc).Value циликом, а сDim arr(), lc после нажатия клавиши Таким образом, выделился ячейки из выделенного (графики). Полезно при
также доступна через. Ознакомьтесь также со >Чтобы выделить 10 лидеров форматов, вы можете клавиатуре.. или диапазон ячеек,
клавиатуры можно выделить .Offset(, 6).Value +For i = первого столбца по As Long, j
Выделяем большой диапазон смежных ячеек
F8: «Расширить выделенный блок A1:B3. Данную диапазона. Ячейки в вставке данных из меню Главная/ Найти статьей Применение условногоИзменить правило с наибольшим доходом, использовать формулу дляВ спискеВажно: нажать сочетание клавиш ячейки (несмежные и .Value 13 To lr последний, в котором As Long фрагмент». операцию выделения условно
скрытых столбцах и интернета. и выделить/ Формулы. форматирования с помощью. Затем настройте параметры выполните указанные ниже применения условного форматирования.Перейти Чтобы выделить именованные ячейкиSHIFT+F8 смежные), диапазоны, строки.ClearContentsFor j = есть данные вDim criteria1, criteria2китин можно записать: A1 строках не выделяются.
Выделяем все ячейки листа
ОТЛИЧИЯ ПО СТРОКАМ.ПУСТЫЕ ЯЧЕЙКИ формулы. в разделе действия.В этой статье мыщелкните имя ячейки и диапазоны, необходимо, чтобы добавить другую или столбцы.End If 16 To UBound(arr, строке 10.criteria1 = Date: Доброго всем времени потом SHIFT+B3. Эта опция полезнаАнализирует выбранное множество
Выделяем несмежные ячейки или диапазоны ячеек
. Выделяет пустые ячейки.Краткое руководство: применение условногоОтображать каждый значок согласноВыделите диапазон, который хотите продемонстрируем несколько способов или диапазона, который сначала определить их несмежную ячейку илиЭто статья про выделение’Cells(i, j).ClearContents’зачем стирать 2)Не вижу смыслаcriteria2 = Range(«K9»).Value суток. Есть задачка,Диапазоны можно выделять и для работы со ячеек и выделяет Конечно, не все форматирования этим правилам отформатировать. На рисунке применения готовых правил требуется выделить, либо имена на листе.
Выделяем всю строку или весь столбец
диапазон ячеек к (Selection) ячеек с и так пустуюIf arr(1, j) его переделывать, т.к.lc = Cells(10, одно из условий стрелками клавиатуры. Щелкните структурами или со те, которые отличаются пустые ячейки наПрименение условного форматирования с. В данном случае выше это столбец условного форматирования. Существуют введите ссылку на Сведения об именовании области выделения. Чтобы целью изменения Формата ячейку? = criteria1 And так даже удобнее Columns.Count).End(xlToLeft).Column которой является выделение по ячейке D3,
Выделяем последнюю ячейку листа, которая содержит данные или форматирование
списком, к которому от ячеек самого листе будут выделены, помощью формулы мы так настроилиДоход тысячи возможных комбинаций, ячейку в поле ячеек и диапазонов остановить выделение, повторно ячеек, а неEnd With arr(2, j) = искать проблемы, еслиarr() = Rows(«10:11»).Value одного столбца в а теперь удерживая применен фильтр. левого столбца (сравнение т.к. их оченьПрименение условного форматирования для
excel2.ru
Выделение отдельных ячеек или диапазонов
правило, чтобы все. поэтому смело экспериментируйте,Ссылка см. в статье нажмите сочетание клавиш про выделение (Highlight)’Application.EnableEvents = True criteria2 Then будут, т.к. будетFor j = зависимости от дня SHIFT, нажмите клавишуУСЛОВНЫЕ ФОРМАТЫ производится построчно). Сочетания много (пользователь не выделения данных в значения больше 45 000На вкладке чтобы найти наилучший. Определение и использование
SHIFT+F8 ячеек цветом с’Exit ForCells(i, j).Select соответствие между листом 16 To UBound(arr, и способа производства. «стрелка вправо» три. Выделяет ячейки, к клавиш быстрого вызова:
заполняет все 1048576 Excel (на английском
считались положительным результатом,Главная вариант. Но приНапример, введите в поле имен в формулах.. Невозможно исключить отдельные
помощью Условного форматирования.’End IfApplication.EnableEvents = False и массивом. 2) День это СЕГОДНЯ(), раза пока курсор которым применено Условное строк). EXCEL выделяет
Выделение именованных и неименованных ячеек и диапазонов с помощью поля «Имя»
языке) значения от 40 000выберите этом не забывайтеСсылкаВ поле
-
ячейки или диапазоныДля того чтобы выделить’Next jIf Cells(i, j).Value
200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Найти()If arr(1, j) способ производства находится не переместится на форматирование (Главная/ Стили/Ctrl + пустые ячейки неЧасто приходится искать на до 45 000 — нейтральным,Условное форматирование
-
о своей аудитории,значениеИмя ячеек из области диапазон смежных ячеек,Next i <> «» ThenDim arr(), lc = criteria1 And в ячейке К9. ячейку G3. У Условное форматирование). на всем листе, листе ячейки содержащие а все значения >
чтобы слишком сложноеB3, которое расположено слева выделения несмежных ячеек; необязательно отрывать рукиApplication.EnableEvents = True Cells(i, j + As Long, j
-
arr(2, j) =К сожалению нет нас выделилась небольшаяПРОВЕРКА ДАННЫХПриведем пример. Имеется 2 а только на
формулы, Условное форматирование, меньше 40 000 — отрицательным.Правила отбора первых и представление не помешало, чтобы выделить эту от строка формул, можно лишь отменить с клавиатуры и
Application.Calculation = xlCalculationAutomatic 6).Value = Cells(i, As Long criteria2 Then времени научится делать строка. Теперь все. Выделяет ячейки, для столбца с почти определенной области: в Проверку данных илиС помощью параметра последних значений вас понять. ячейку, или выполните одно из все выделение целиком. браться за мышку.Application.ScreenUpdating = True j + 6).Value
Выделение именованных и неименованных ячеек и диапазонов с помощью команды «Перейти»
-
Dim criteria1, criteria2Cells(13, j).Resize(Range(«B» & самому, начальство торопит еще не отпуская которых проводится проверка одинаковыми данными: значения диапазоне просто пустые ячейки.Цветовые шкалы >Чтобы выделить повторяющиеся элементыB1:B3 указанных ниже действий.
-
Щелкните заголовок строки или Для выделения диапазонаMsgBox «Всё» + Cells(i, j).Valuecriteria1 = Date Rows.Count).End(3).Row — 12,Можно просто Select. SHIFT, нажмите клавишу допустимости данных (заданная
отличаются только вА1:Адрес последней заполненной ячейки Это и многоеможно выделить значения,Первые 10 элементов в столбце данных,, чтобы выделить диапазонЧтобы выделить именованную ячейку столбца. Строку или достаточно выделить ячейкуEnd SubCells(i, j).ClearContentscriteria2 = Range(«K9»).Value 1).Select’ Exit For Дальше сам попробую
«стрелка вниз» четыре с помощью команды строках(Последняя заполненная ячейка другое можно быстро чтобы показать диапазон. выполните указанные ниже из трех ячеек. или диапазон, введите столбец можно выделить, — левый верхнийЗа определенный период времениApplication.EnableEvents = Truelc = Cells(10,End If додумать раза, пока курсор Данные/ Работа с
58 — ячейка, которая найти при помощи или сравнить максимальныеЗатем вы можете настроить действия. Чтобы выделить несколько имя и нажмите выбрав первую ячейку угол диапазона, затем ведется регистр количестваExit For Columns.Count).End(xlToLeft).ColumnNext jKarataev не перейдет на данными/ Проверка данных).. Выделяем диапазон
support.office.com
Применение условного форматирования в Excel
расположена в самой инструмента Выделение группы и минимальные показатели количество элементов иВыделите диапазон, в котором ячеек или диапазонов, клавишу ВВОД. строки или столбца нажать клавишу проданного товара вEnd Ifarr() = Range(«A10»).Resize(2,End Sub: Выделить столбец с G7. Таким образом, При выборе переключателяА2:В10 нижней используемой строке ячеек. (в данном случае цвет заполнения. хотите выделить цветом
укажите их в |
Совет: и нажав затем |
SHIFT магазине. Необходимо регулярноNext j lc).ValueKarataev помощью макроса не мы выделили блок Всех будут выделены. и в самомРассмотрим очень полезный инструмент с января поЕсли вы применяете условное повторяющиеся значения (в поле Кроме того, можно щелкнуть сочетание клавиши одну из
отслеживать последний выданныйNext iFor j =: _Boroda_, я в получается — выделяется диапазона D3:G7. все такие ячейки.Вызываем инструмент Выделение группы крайнем правом заполненном Выделение группы ячеек. июнь). форматирование с использованием данном случае это
Выделение повторяющихся значений цветом
Ссылка стрелку рядом сCTRL+SHIFT+КЛАВИША СО СТРЕЛКОЙ стрелок (вниз, вверх,
-
из магазина товар.Application.Calculation = xlCalculationAutomatic 16 To UBound(arr, пост 2 внес несколько столбцов из-за
-
Как выделить несмежный диапазон При выборе опции ячеек с опцией столбце). Для ееСоветВыполните указанные ниже действия.гистограмм столбец «ФИО сотрудника»).через запятые.
-
полем(СТРЕЛКА ВПРАВО или влево, вправо). Для этого нужноApplication.ScreenUpdating = True
2) изменения в этом объединенных ячеек в ячеек в Excel?
Сортировка по цвету
Этих же выделяются Отличия по строкам определения можно нажать. О выделении ячеекВыделите диапазон со значениями,, Excel отображает вНа вкладкеПримечание:
Имя
-
СТРЕЛКА ВЛЕВО позволяетКоличество выделенных столбцов и отобразить последнюю записьEnd Sub If arr(1, j) месте: строке 5. Выделите мышкой блок только те ячейки,
-
и получаем 2CTRL+END на листе с которые нужно отформатировать. каждой ячейке полосу,Главная В списке, чтобы открыть список выделить всю строку, строк отображается в в столбце наименования_Boroda_ = criteria1 And200?’200px’:»+(this.scrollHeight+5)+’px’);»>arr() =Этот макрос выделяет B3:D8. Нажмите клавишу для которых установлены
выделенные ячейки, одна. Что такое пустая
помощью курсора мышиНа вкладке длина которой соответствует
Выделение первых 10 элементов в диапазоне
нажмите кнопкуПерейти именованных ячеек или СТРЕЛКА ВВЕРХ или поле Имя (слева товаров. Чтобы просто: Игорь, да ты arr(2, j) =_Boroda_ только ячейку в F8 чтобы включить те же правила на строке ячейка? Для EXCEL и клавиатуры читайтеГлавная значению ячейки относительноУсловное форматированиеможно просмотреть все
диапазонов, и выбрать СТРЕЛКА ВНИЗ позволяет от Строки формул) посмотреть на последнее
-
ваще молодец! Я criteria2 Then: Точно. А я, строке 10. специальный режим. В
-
проверки допустимости данных,5 это ячейка, в статью Выделение диапазонов ячеекнажмите кнопку других ячеек в, откройте подменю именованные или неименованные в нем нужное выделить весь столбец).
-
в формате 3Rx1C, значение столбца, достаточно тобой горжусь!
Отображение дисперсии с помощью гистограмм
Cells(10, j).Select конечно же, не200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Найти() строке состояния появится что и для, другая на которой не содержится в MS EXCEL.Условное форматирование
выбранном диапазоне.Правила выделения ячеек ячейки или диапазоны,
-
имя. Если строка или что означает, что переместить курсор наНе критика, а
-
Exit For заметил.Dim arr(), lc сообщение: «Расширить выделенный активной ячейки.8 ни значения, ни О выделении ячееки выберите пунктЧтобы повторить инструкции изи выберите пункт которые ранее были
-
Чтобы выбрать две или столбец содержат данные, выделено 3 ячейки любую его ячейку комментарии. Я прямоEnd IfНо неважно. Нужно As Long, j фрагмент». И теперьДиапазоны в Excel раньше. Логика такова: столбец формулы. А если в зависимости от
Выделение положительных, нейтральных и отрицательных значений с помощью наборов значков
Цветовые шкалы примера, выполните указанныеПовторяющиеся значения выделены с помощью более ссылки наCTRL+SHIFT+КЛАВИША СО СТРЕЛКОЙ в одном столбце. и нажать комбинацию в макросе написалNext j только одну строку As Long выделите мышкой блок
назывался блоками. Диапазон2 к ячейке применено
-
их содержимого -. Затем выберите шкалу.
-
ниже действия.. команды именованные ячейки иливыделяет текущую область данныхПосле того, как Вы горячих клавиш CTRL200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub videlit1()
-
End Sub поменять. Я ееDim criteria1, criteria2 F2:K5. Как видите, – это выделеннаясравнивается с эталонным Условное форматирование или читайте в статье Условное В данном случаеВыделите диапазон, который хотитеВ раскрывающемся списке параметровПерейти диапазоны, щелкните стрелку столбца или строки. отпустили клавишу + стрелка вApplication.Calculation = xlCalculationManualЧто касается Вашего пометил в макросе.criteria1 = Date в данном режиме прямоугольная область прилегающих столбцом задействован инструмент Проверка форматирование в MS мы использовали вариант отформатировать. На рисунке
Отображение дисперсии с помощью цветовых шкал
выберите формат и. Чтобы вернуться к рядом с полем Повторное нажатие сочетанияSHIFT низ (↓). НоApplication.ScreenUpdating = False вопроса, то нужноА может и
criteria2 = Range(«K9»).Value
-
мы имеем возможность ячеек. Данное определение
-
1 данных, и она EXCEL.Цветовая шкала «Красный-желтый-зеленый» выше это столбец нажмите кнопку ячейке или диапазону,имя клавиш, в поле Имя отобразится чаще всего пользователю
Форматирование каждой второй строки как в таблице
Dim arr(), lc записать так (вместо не нужно. Мыlc = Cells(10, выделять стразу несколько понятия легче воспринять. Если добавить еще ничего не содержит?Окно этого инструмента доступно.ДоходОК которые были выделеныи нажмите кнопкуCTRL+SHIFT+КЛАВИША СО СТРЕЛКОЙ адрес активной ячейки. приходится с последним As Long, j Rows Range): ж так и Columns.Count).End(xlToLeft).Column диапазонов. Чтобы вернутся
на практических примерах. один столбец, то Эта ячейка считается через меню Главная/ НайтиЕсли вы хотите применить.. раньше, дважды щелкните имя первого ссылкупозволяет выделить всеЕсли диапазон ячеек, который значением столбца выполнять As Long, lrКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>rr() = Range(«P10:GA11»).Value не выяснили, чтоarr() = Range(«A10»).Resize(2,
в обычный режимВ формулах диапазон записывается будут выделены все пустой. Удаление такой и выделить/ Выделение
Ищете что-то другое?
форматирование к каждойНа вкладкеДиапазон о будет отформатирован, нужное имя ссылки на ячейку или ячейки столбца или необходимо выделить не
-
различные вычислительные операции As Long
-
Но в этом Игорь хочет потом lc).Value работы, повторно нажмите адресами двух ячеек, ячейки, которые отличаются ячейки для пользователя
-
группы ячеек. Название второй строке данных,Главная и повторяющиеся элементы на ячейку в диапазон, который требуется строки. помещается на видимой в Excel. Поэтому
См. также
-
Dim criteria1, criteria2 случае надо начинать
-
делать.For j =
-
F8. которые разделенные двоеточием. в соответствующих строках может означать потерю
support.office.com
Выделение группы ячеек в MS EXCEL
инструмента не совсем это можно сделатьнажмите кнопку будут выделены выбранным списке выделить. Затем удерживаяЧтобы выделить последнюю ячейку части листа, то лучше его получитьlr = Cells(Rows.Count,
j не скитин
16 To UBound(arr,Как выделить большой диапазон Верхняя левая и от ячеек столбца формулы введенной, например, корректно, он может с помощью формулыУсловное форматирование цветом.Перейти клавишу CTRL, щелкните листа, которая содержит можно уменьшить масштаб
в качестве значения 3).End(xlUp).Row 16, а с: спасибо вам. я 2) ячеек в Excel? правая нижняя ячейка,1 в Условном форматировании.
выделять не только условного форматирования, нои выберите пунктВы можете пойти еще
. имена других ячеек данные или форматирование, отображения листа (см. для отдельной ячейки.criteria1 = Date 1. тоже малость переделалIf arr(1, j) Клавиша F5 или которая входит в.ТЕКУЩАЯ ОБЛАСТЬ ячейки, но и гораздо проще простоГистограммы дальше в поиске
Совет: или диапазонов в нажмите сочетание клавиш статью Быстрое изменениеСхематический регистр товаров, выданныхcriteria2 = Range(«K9»).ValueИ нужно еще код Олега = criteria1 And CTRL+G. В появившемся состав диапазона, напримерОТЛИЧИЯ по СТОЛБЦАМ.. Выделяет прямоугольный диапазон графические объекты. отформатировать данные как. Затем выберите стиль повторов — отсортировать список Чтобы быстро найти и полеCTRL+END масштаба отображения листа) с магазина:lc = Cells(10, здесь корректировать j:
Karataev arr(2, j) = окне, в поле A1:B3.Аналогично предыдущей опции. ячеек вокруг активнойВ этой статье рассмотрим таблицу. Выделите ячейку в разделе по цветам. Так выделите все ячейки,имя. Сама ячейка может или щелкнуть первую
Чтобы иметь возможность постоянно Columns.Count).End(xlToLeft).ColumnКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>Cells(10, j+15).Select, под выделение внутри criteria2 Then «Ссылка» введите адрес:Обратите внимание! Ячейка, от Эталоном служит верхняя ячейки. Граница этого все опции инструмента в диапазоне данныхГрадиентная заливка будет проще применить содержащие определенных типов. быть пуста и ячейку диапазона (левую наблюдать, какой товар’До этой строкикитин таблицы( прошу прощенияCells(10, j).Select B3:D12345 (или b3:d12345) которой начинается выделение строка. диапазона определяется окружающими MS EXCEL «Выделение и выберитеили массовые изменения к данных (например, формулы)Примечание: не иметь форматирование. верхнюю), а затем, зарегистрирован последним, в ничего не трогал.: Олег мне нужен за неточность)Exit For и нажмите ОК. диапазона, остается активной.
ВЛИЯЮЩИЕ ЯЧЕЙКИ его пустыми строками группы ячеек».ГлавнаяСплошная заливка повторяющимся элементам (например, или только ячейки, Текущая выделенная ячейка останется Но, она находится добравшись до последней
отдельную ячейку E1 Новые переменные не был пинок, я200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Найти()End If Таким образом, вы Это значит, что. Выделяет ячейки, на и столбцами. СочетанияПРИМЕЧАНИЯ >
- . удалить их). которые удовлетворяют определенным выделенной вместе с
- в самом правом ячейки диапазона с
- введем формулу: объявлял. Патамушта лентяй его получил. спасибо
Dim arr(), lcNext j без труда захватили при выделенном диапазоне которые есть ссылки клавиш быстрого вызова:
. Выделяет только теСтилиЕсли после применения гистограммВыполните указанные ниже действия. критериям (например, только ячейками, указанными в столбце и в помощью полосы прокруткиРезультат выполнения формулы дляc0_ = 16 .Самому никак не As Long, jEnd Sub огромный диапазон, всего данные из клавиатуры в формулах. Можно
CTRL+SHIFT+* CTRL+A ячейки, которые содержат > вы захотите отсортироватьЩелкните в любом месте видимые ячейки или поле самой нижней строке, листа, нажать клавишу
получения последнего значения:arr() = Cells(10, удавалось присвоить переменным As Long, lr_Boroda_ за пару кликов. будут введены в использовать так: выделяете. примечания к ячейкам.Форматировать как таблицу
список, просто выделите диапазона данных, а последнюю ячейку наИмя ячейки которых имеютSHIFTРазбор принципа действия формулы c0_).Resize(2, lc).Value ‘массив значения СЕГОДНЯ() и
As Long: Игорь, а 29В поле «Имя» (которое его первую ячейку. весь лист (илиТTREOBQ МАССИВ Сами примечания при. Затем выберите стиль столбец. Затем на затем на вкладке листе, содержащую данные(это относится и форматирование и неи щелкнуть последнюю для поиска последнего меньше, там только ячейки К9. ТеперьDim criteria1, criteria2 марта у тебя расположено слева от Она отличается от область, где находятся
. Эта опция используется этом не показываются. в вкладке
Данные или форматирование), нажмите к диапазонам). пусты. Иногда, выделенная ячейку диапазона (правую значения в столбце: нужные значения есть два вариантаcriteria1 = Date два лака. Какой строки формул) задайте других ячеек цветом формулы и ячейки крайне редко. Выделяет Показать их можно,коллекции стилейДанныев группе кнопкуЧтобы выделить неименованный диапазон таким образом ячейка нижнюю).For s =
Karataevcriteria2 = Range(«K9»).Value выбирать? диапазон ячеек: B3:D12345 фона. с исходными данными), диапазон ячеек, содержащий нажав кнопку Рецензирование/, после чего Excelв группеСортировка и фильтрВыделить или ссылку на находится в незаполненныхВ случае выделенияГлавную роль берет на c0_ To UBound(arr,: китин, вариант по
lc = Cells(10,И что ты (или b3:d12345) иК диапазонам относятся: вызываете инструмент Выделение массив в который Примечания/ Показать все сразу преобразует вашиСортировка и фильтр
нажмите кнопкув ячейку, введите ссылку строке и столбце. ячеек, содержащих значения, себя функция =ИНДЕКС(), 2) ‘цикл по Вашим вопросам: Columns.Count).End(xlToLeft).Column дальше с выделенным нажмите «Enter».
Несколько ячеек выделенных блоком группы ячеек с входит активная ячейка. примечания. Эта опция данные в таблицу.
щелкните значокСортировкаПерейти к на нужную ячейку Чтобы все встало можно щелкнуть первую которая должна возвращать нему200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Найти()lr = Cells(Rows.Count, столбцом делать хочешь?Способ 5 и 6 (=B5:D8). опцией Влияющие ячейки Те, кто не также доступна черезЕсли вам требуется толькоили
excel2.ru
Выделение диапазона ячеек в Excel
.всплывающего окна и или диапазон и на свои места ячейку диапазона, а содержимое ячейки таблицыIf arr(1, s)
Dim arr(), j 3).End(xlUp).Rowкитин – это самоеОдна ячейка (=A2:A2). и получаете выделенными знаком с формулами меню Главная/ Найти
табличное форматирование бездля сортировки поВ раскрывающемся списке выберите нужный вариант. нажмите клавишу ВВОД. — сохраните книгу. затем, удерживая клавишу где пересекаются определенная = criteria1 And As Longarr() = Rows(«10:11»).Value
: Насколько я понял
- быстрое решение дляЦелая строка (=18:18) или
- ВСЕ ячейки, влияющие
- массива, могут пропустить и выделить/ Примечания.
- дополнительных функций таблицы, возрастанию или по
- Сортировать по
- Условное форматирование позволяет применять
Совет:Примечание:
SHIFT
Работа с выделенным диапазоном ячеек MS Excel
строка и столбец. arr(2, s) =Dim criteria1, criteria2For j =200?’200px’:»+(this.scrollHeight+5)+’px’);»>arr() = Rows(«10:11»).Value
- выделения больших диапазонов.
- несколько строк (=18:22).
- на значения других описание этой опции.
- Сочетания клавиш быстрого можно преобразовать таблицу
убыванию.
- выберите столбец к ячейкам цвета Например, введитеМы стараемся как, дважды щелкнуть по В качестве первого criteria2 Thencriteria1 = Date 16 To UBound(arr,объявляем массив состоящий Небольшие диапазоны вЦелый столбец (=F:F) или ячеек (для их
- Остальные могут поэкспериментировать. вызова: обратно в диапазон.С помощью набора значковФИО сотрудника при определенных условиях,B3 можно оперативнее обеспечивать ее нижней границе. аргумента функции ИНДЕКСc1_ = s
- criteria2 = Range(«K9»).Value 2) из 10 и пределах одного экрана несколько столбцов (=F:K). запоминания можно изменитьвыделите ячейки отCTRL+SHIFT+щ Щелкните в любом вы можете визуально, в раскрывающемся списке таких как наличие, чтобы выделить эту вас актуальными справочными Будет выделен диапазон выступает неизменяемая константа, + c0_ -arr() = Range(«P10:GA11»).ValueIf arr(1, j)
- 11 строки Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>For лучше выделять мышкой.Несколько несмежных диапазонов (=N5:P8;E18:H25;I5:L22). фон ячеек). СравнитеA1E1. месте табличного диапазона, отметить значения, которыеСортировка повторяющихся значений или ячейку, или материалами на вашем до первой незаполненной а именно ссылка 1For j = = criteria1 And j = 16
- Чтобы выделить диапазон несколькихЦелый лист (=1:1048576). с командой менювключительно (всего 5КОНСТАНТЫ затем на ленте попадают в определенные — значение «Цвет ячейки», значений, соответствующих определеннымB1:B3 языке. Эта страница ячейки. Чтобы распространить
- на целый столбецExit For ‘сразу 1 To UBound(arr, arr(2, j) = To UBound(arr, 2) столбцов нужно подвести
Все выше перечисленные виды Формулы/ Зависимости формул/ ячеек);. Выделяет все непустыеРабота с таблицами диапазоны чисел или в раскрывающемся списке
Выделение диапазонов целых столбцов или строк
критериям (например, больше, чтобы выделить диапазон переведена автоматически, поэтому выделение на заполненные (B:B). Во втором определяем столбец для 2) criteria2 Then цикл от 16 курсор мышки на блоков являются диапазонами.
Влияющие ячейки (позволяетв Строке формул введите ячейки, не содержащиеоткройте вкладку процентов. В этомПорядок
Выделение диапазона целого листа
100 или равных из трех ячеек. ее текст может столбцы справа, нужно, аргументе находится номер работы, а неIf arr(1, j)Range(Cells(10, j), Cells(lr, до нижней границы
Выделение несмежного диапазона
заголовок первого столбца
определить на какие формулу ={1;2;3;4;5}; формул. Эта опцияКонструктор разделе мы обозначим — цвет, а в заданному доходу). ДляПримечание: содержать неточности и удерживая клавишу
exceltable.com
Выделить столбец в зависимости от изменяющихся условий (Макросы/Sub)
строки с последним ищем его заново = criteria1 And j)).Select массива Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>arr()? так? и удерживая левуюВыделение диапазонов – это ячейки влияет активнаянажмите сочетание клавиш полезна в случае,и выберите
соответствие региональной производительности последнем раскрывающемся списке — этого применяются правила
В поле грамматические ошибки. ДляSHIFT
заполненным значением столбца для каждого прохода arr(2, j) =Exit Forкитин клавишу протянуть его одна из основных
ячейка).CTRL+SHIFT+ENTER если на листе
Инструменты
стандартам с помощью значение выделения ячеек и
Имя
нас важно, чтобы
, дважды щелкнуть по
B. Чтобы узнать цикла по i
criteria2 ThenEnd If
: а их везде до заголовка последнего операций при работе
ЗАВИСИМЫЕ ЯЧЕЙКИ. создана некоторая расчетная >
положительных
Сверху
правила отбора первых
невозможно удалить или
эта статья была
правой границе ранее этот номер строкиEnd IfRange(«P10:GA11»).Columns(j).SelectNext j
по 2. столбца. В процессе с Excel. Диапазоны
. Выделяет ячейки сТеперь мы получили массив. модель и нужно
Преобразовать в диапазон, нейтральных. Нажмите кнопку и последних значений. изменить имена, определенные вам полезна. Просим выделенного диапазона. используется функция СЧЁТЗ,
Next sExit ForEnd Subошибочка. наверное первый
мы наблюдаем подсказку используют: формулами, в которых Попробуйте удалить значение очистить все ячейки.и отрицательныхОК Можно также ранжировать для ячеек и
вас уделить паруНажмите кнопку Выделить все которая возвращает количествоApplication.EnableEvents = FalseEnd If
только вот почемуKarataev Excel: количество выделенныхпри заполнении данных; есть ссылки на
из ячейки с исходными данными,Подробнее о таблицах Excelзначков., чтобы применить заданное
отдельные ячейки по
диапазонов. Имена можно секунд и сообщить, в левом верхнем
непустых ячеек в
'Обработчик событий лучше
Next j
не дает объявить: Цикл от столбца
столбцов.
при форматировании; выделенные ячейки. МожноB1
чтобы ввести в можно узнать здесь:Чтобы узнать, как это форматирование.
диапазону значений с удалять и изменять помогла ли она
углу листа (кнопка
диапазоне. Соответственно это
включить один раз
End Sub массив, ограниченный опр. 16 до последнегоВыделение строк выполняется аналогичнымпри очистке и удалении
использовать так: выделяете
. Вы получите вот них новые значения. Создание и удаление сделать, выполните указанные
»Сортировка» > «Сортировка по помощью гистограмм, цветовых только в диалоговом вам, с помощью
расположена чуть выше же число равно перед цикломкитин рамками? вот такой столбца, в котором
способом только курсор ячеек; весь лист, вызываете такое предупреждение: Если ячейка содержит таблицы Excel на ниже действия. цвету»» />
шкал и наборов
окне кнопок внизу страницы. и левее ячейки номеру последней непустой
'обычно все Application
: ну вот, с
Код200?'200px':''+(this.scrollHeight+5)+'px');">arr() = Rows("P10:GA11").Value
есть данные в мышки с нажатой
при создании графиков и инструмент Выделение группы
Выделите любую ячейку от
значение =11, то листе.Выделите диапазон, который хотите
В отсортированной таблице повторяющиеся значков. Условное форматированиеДиспетчер имен Для удобства также
А1 строки в столбце
складывают вместе или
вашей помощью наваял
понял не Rows
строке 10. В
левой клавишей нужно диаграмм и т.п. ячеек с опциейA1E1
это значение считается
Если ни один из отформатировать.
значения будут сгруппированы динамично и автоматически(вкладка приводим ссылку на). Другой вариант - B и используется вначале, или там, какое то подобие а Range
Вашем файле последний вести вдоль нумерацииСпособы выделения диапазонов: Зависимые ячейки и. Вызовите инструмент Выделение формулой, а не перечисленных выше вариантов
На вкладке сверху. корректируется при измененииФормулы оригинал (на английском нажать сочетание клавиш как второй аргумент где начинается работа
макроса.китин столбец GA. Вот строк (по вертикали).Чтобы выделить диапазон, например получаете выделенными ВСЕ группы ячеек. Установите
константой, хотя значение
вам не подходит,ГлавнаяПравило
значений.
, группа
языке) .
CTRL+A для функции ИНДЕКС,
на листеу меня работает.
: второй вопрос.далее мне до него макросДля выделения диапазона целого
A1:B3, нужно навести ячейки, зависимые от опцию Текущий массив. ячейки не может
вы можете создать
нажмите кнопку
Первые 10 элементов
Параметры условного форматирования
Определенные имена
Независимо от наличия определенных. Если лист содержит которая сразу возвращаетFor i =
критика приветствуется и
надо все данные и будет просматривать. листа следует сделать курсор мышки на других ячеек (для
После нажатия ОК, меняться. Такая ячейка
собственное правило условного
Условное форматированиепозволяет быстро выявитьУсловное форматирование с цветовыми). Дополнительные сведения см. именованных ячеек или данные, последнее значение столбца 13 To lr ожидается
из этого столбцаПо массиву быстрее щелчок левой кнопкой
ячейку A1 и
их запоминания можно будет выделен диапазон
выделена не будет.
форматирования с помощью
и выберите пункт
лидеров в диапазоне,
шкалами в статье Определение диапазонов на листе,
CTRL+A B в отдельной'For j =200?'200px':''+(this.scrollHeight+5)+'px');">Sub videlit()
перенести в завтрашний(
двигаться, поэтому макрос
мышки по верхнему
удерживая левую клавишу
изменить фон ячеек).
A1:E1 Эта опция также нескольких простых действий.Наборы значков например 10 лучшихПримечание: и использование имен чтобы быстро найти
выделяет текущую область.
ячейке E1.
с0_ To UBound(arr,
Application.Calculation = xlCalculationManual сложив эти данные двигается не по левому уголку листа,
мышки провести курсор
Сравните с командой, содержащий массив (вместо
доступна через меню
Выделите ячейки, которые нужно
. Затем выберите стиль клиентов в списке
До версии Excel 2007 условное в формулах.
и выбрать отдельных Повторное нажатие сочетания
Внимание! Все записи в 2)Application.ScreenUpdating = False
с данными столбца листу, а по где пересекаются заголовки на ячейку B3.
меню Формулы/ Зависимости
нажатия на ОК
Главная/ Найти и отформатировать. набора значков. на основании показателей. форматирование приходилось создаватьНа вкладке "
ячеек или диапазонов
клавиш
столбце B должны
'If arr(1, j)
Dim arr(), lc
из завтра) попробую
массиву.
строк и столбцов.
Казалось бы, нет
формул/ Зависимые ячейки. можно дважды кликнуть выделить/ Константы.На вкладке
Excel попытается интерпретировать и Точно так же с помощью формулы,
Главная
вводя их имена
CTRL+A
быть неразрывны (без = criteria1 And As Long, j сам наваять
_Boroda_
Или нажать комбинацию ничего проще и
ПОСЛЕДНЯЯ ЯЧЕЙКА.
на слова Текущий
ФОРМУЛЫГлавная
соответственно отформатировать ваши вы можете выбрать и поддерживались всего" в группе
и ссылок на
позволяет выделить все пустых ячеек до arr(2, j) = As Long, lr
Karataev: Может, тебе нужно горячих клавиш CTRL+A. этого достаточно для
Выделяет нижнюю правую массив). Сочетания клавиш. Выделяет ячейки, содержащиенажмите кнопку
данные. Если вам правило три уровня. Во
" ячейки можно использовать ячейки листа. последнего значения). criteria2 Then As Long
: китин, Вы используете
выделить не весь
Несмежные диапазоны складываются из практических знаний. Но ячейку листа, которая быстрого вызова:
формулы. Можно такжеУсловное форматирование нужно изменить этуПоследние 10 элементов всех версиях, начиная
Редактирование поле имени.
Выделите первую ячейку илиСтоит отметить что данная'Cells(i, j).Select'Зачем это?
Dim criteria1, criteria2 не ту версию столбец, а толькро нескольких других диапазонов.
попробуйте таким способом
содержит данные или
CTRL+/ сузить задачу, выбрави выберите пункт интерпретацию, откройте вкладку
, с Excel 2007, имеется
" нажмите кнопкуПоле "Имя" расположено слева диапазон ячеек и,
формула является динамической.
'Application.EnableEvents = False
lr = Cells(Rows.Count, моего макроса. Я внутри таблицы?
Чтобы их выделять просто
выделить блок B3:D12345.
атрибуты форматирования. Быстрее
.
тип результата, который
Создать правило
Главная
Первые/Последние 10%
множество готовых правил,
Найти и выделить
от строки формул.
excelworld.ru
Как получить последнее значение в столбце таблицы Excel
удерживая клавишу При добавлении новыхWith Cells(i, c1_) 3).End(xlUp).Row внес изменения вТогда в макросе удерживайте нажатие клавишиТеперь щелкните по ячейке воспользоваться клавиатурным эквивалентомОБЪЕКТЫ дает формула: число,.и выберитеили которые легко применять,и нажмите кнопкуКроме того, для выделенияCTRL записей в столбец ‘чтобы не обращатьсяcriteria1 = Date макрос в посте Олега (самому лень CTRL, а дальше A1, после чего этой команды -
Поиск последнего значения в столбце Excel
. Выбирает графические объекты текст, логическое значение
Создайте правило и задайтеУсловное форматированиеВыше/Ниже среднего и поддерживается доПерейти
именованных и неименованных, выделите курсором мыши
B результат в к ячейке несколькоcriteria2 = Range(«K9»).Value
2.
писать, уж если как при обычном нажмите и удерживайтеCTRL+END рабочего листа. Очень (ИСТИНА или ЛОЖЬ) для него параметры >. Выбрав правило, вы 64 уровней. Если. Можно также нажать ячеек и диапазонов остальные ячейки или ячейке E1 будет разlc = Cells(10,В этой версии готовый есть) одну выделении. Также в на клавиатуре SHIFT,. удобная опция - или ошибку. Удобно форматирования, а затемУправление правилами можете изменить число для вашей ситуации сочетание клавиш CTRL можно использовать команду диапазоны. Также можно, автоматически обновляться.
If .Value <> Columns.Count).End(xlToLeft).Column в массив arr строку поменять нужно данной ситуации особенно
а потом щелкнитеТОЛЬКО ВИДИМЫЕ ЯЧЕЙКИ позволяет обнаружить скрытые для использования поиска нажмите кнопку > правило 10 на другое
exceltable.com
не подходит ни
Как выделять столбцы в Excel? Выделение столбцов с заданным шагом
Для осуществления в Excel удаления значений ячеек, установки или снятия заливки, изменения числовых форматов, выравнивания, способа отображения информации, изменения шрифтов, их цветов, начертаний и размеров, обозначения границ и так далее, требуется предварительное выделение ячеек. Часто возникает необходимость производить подобные действия со всеми ячейками столбца, либо частью ячеек столбца, заключенной между определенными строками.
Как выделить один столбец?
Существует несколько способов выделения столбца в Excel:
1. В окне открытого рабочего листа подвести курсор мыши к имени (или номеру) столбца и когда курсор мыши превратится в черную стрелку, направленную вниз, кликнуть левой кнопкой мыши;
2. Установить маркер выделения в любую ячейку нужного столбца и использовать сочетание горячих клавиш Ctrl + Space (пробел);
3. Установить маркер выделения в первую ячейку нужного столбца и нажать сочетание клавиш Ctrl + Shift +Стрелка вниз. При этом, если в столбце есть данные, то первое использование сочетания горячих клавиш выделит область с данными, а второе – весь столбец.
Как выделить несколько столбцов подряд?
1. Подвести курсор мыши к именам столбцов и провести курсор-стрелку по именам нужных столбцов с нажатой левой кнопкой мыши;
2. Выделить щелчком левой кнопки мыши первый столбец нужного диапазона столбцов, нажать клавишу Shiftна клавиатуре и при нажатой клавише кликнуть по имени последнего столбца нужного диапазона столбцов;
3. В адресном окне строки формул указать наименование первого столбца, поставить двоеточие, указать наименование последнего столбца (например A:D) и нажать Enter.
Как выделить несколько столбцов не подряд?
Чтобы выделить несколько столбцов не подряд необходимо щелкнуть по имени каждого из столбцов при нажатой клавише Ctrl на клавиатуре.
Как выделить множество столбцов с заданным шагом (через один, через два и так далее)?
При помощи надстройки для Excel можно выделять по несколько столбцов через заданные интервалы, например можно выделить по два столбца с шагом три или по 5 столбцов с шагом 10. Кроме того, можно выделять не весь столбец, а только области столбцов, заключенные между заданными строками.
1. Выделять столбцы с заданным шагом, используя как номера, так и буквенные обозначения столбцов;
2. Выделять диапазоны столбцов с заданным шагом;
3. Выделять области столбцов (диапазонов столбцов), заключенные между заданными номерами строк.
Как выделить столбцы с заданными значениями по условию?
Выделять столбцы с заданными значениями, в зависимости от выбранных условий можно при помощи другой надстройки для Excel.
1. Выделять столбцы с заданными значениями, а также части столбцов, ограниченные выделенным или используемым диапазоном, подходящие под заданные пользователем условия;
2. Задавать для поиска как одно, так и несколько значений, используя в качестве знака-разделителя «;» точку с запятой ;
3. Выделять столбцы как на одном листе, так и на всех листах рабочей книги;
4. Задавать диапазон для поиска искомых значений;
5. Использовать дополнительные ограничения диапазона поиска искомых значений.
видео по работе с надстройкой
Выделение содержимого ячеек в Excel
В этом курсе:
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
В Excel можно выделять содержимое ячеек, строк или столбцов.
Примечание: Если лист защищен, возможность выделения ячеек и их содержимого может быть недоступна.
Выделение ячеек
Чтобы выделить ячейку, щелкните ее. Для перехода к ячейке и ее выделения также можно использовать клавиатуру.
Чтобы выделить диапазон ячеек, выделите ячейку, а затем нажмите левую кнопку мыши и перетащите указатель.
Для этого также можно использовать SHIFT+клавиши со стрелками.
Чтобы выделить несмежные ячейки и диапазоны ячеек, выберите их, удерживая нажатой клавишу CTRL.
Выделение строк и столбцов
Выберите букву в верхней части столбца, чтобы выделить его целиком. Можно также щелкнуть любую ячейку в столбце и нажать клавиши CTRL+ПРОБЕЛ.
Выберите номер строки, чтобы выделить ее целиком. Можно также щелкнуть любую ячейку в строке и нажать клавиши SHIFT+ПРОБЕЛ.
Чтобы выделить несмежные строки или столбцы, выберите их номера, удерживая нажатой клавишу CTRL.
Выделение таблицы, списка или листа
Чтобы выделить список или таблицу, щелкните любую содержащуюся в них ячейку и нажмите клавиши CTRL+A.
Чтобы выделить весь лист, нажмите кнопку выделить все в верхнем левом углу.
Примечание: В некоторых случаях выделение одной ячейки может привести к выбору нескольких смежных ячеек. Советы о том, как устранить эту проблему, см. в публикации сообщества под названием Как предотвратить одновременное выделение нескольких ячеек в Excel?.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Выделение диапазона ячеек в Excel
Диапазоны в Excel раньше назывался блоками. Диапазон – это выделенная прямоугольная область прилегающих ячеек. Данное определение понятия легче воспринять на практических примерах.
В формулах диапазон записывается адресами двух ячеек, которые разделенные двоеточием. Верхняя левая и правая нижняя ячейка, которая входит в состав диапазона, например A1:B3.
Обратите внимание! Ячейка, от которой начинается выделение диапазона, остается активной. Это значит, что при выделенном диапазоне данные из клавиатуры будут введены в его первую ячейку. Она отличается от других ячеек цветом фона.
К диапазонам относятся:
- Несколько ячеек выделенных блоком (=B5:D8).
- Одна ячейка (=A2:A2).
- Целая строка (=18:18) или несколько строк (=18:22).
- Целый столбец (=F:F) или несколько столбцов (=F:K).
- Несколько несмежных диапазонов (=N5:P8;E18:H25;I5:L22).
- Целый лист (=1:1048576).
Все выше перечисленные виды блоков являются диапазонами.
Работа с выделенным диапазоном ячеек MS Excel
Выделение диапазонов – это одна из основных операций при работе с Excel. Диапазоны используют:
- при заполнении данных;
- при форматировании;
- при очистке и удалении ячеек;
- при создании графиков и диаграмм и т.п.
Способы выделения диапазонов:
- Чтобы выделить диапазон, например A1:B3, нужно навести курсор мышки на ячейку A1 и удерживая левую клавишу мышки провести курсор на ячейку B3. Казалось бы, нет ничего проще и этого достаточно для практических знаний. Но попробуйте таким способом выделить блок B3:D12345.
- Теперь щелкните по ячейке A1, после чего нажмите и удерживайте на клавиатуре SHIFT, а потом щелкните по ячейке B3. Таким образом, выделился блок A1:B3. Данную операцию выделения условно можно записать: A1 потом SHIFT+B3.
- Диапазоны можно выделять и стрелками клавиатуры. Щелкните по ячейке D3, а теперь удерживая SHIFT, нажмите клавишу «стрелка вправо» три раза пока курсор не переместится на ячейку G3. У нас выделилась небольшая строка. Теперь все еще не отпуская SHIFT, нажмите клавишу «стрелка вниз» четыре раза, пока курсор не перейдет на G7. Таким образом, мы выделили блок диапазона D3:G7.
- Как выделить несмежный диапазон ячеек в Excel? Выделите мышкой блок B3:D8. Нажмите клавишу F8 чтобы включить специальный режим. В строке состояния появится сообщение: «Расширить выделенный фрагмент». И теперь выделите мышкой блок F2:K5. Как видите, в данном режиме мы имеем возможность выделять стразу несколько диапазонов. Чтобы вернутся в обычный режим работы, повторно нажмите F8.
- Как выделить большой диапазон ячеек в Excel? Клавиша F5 или CTRL+G. В появившемся окне, в поле «Ссылка» введите адрес: B3:D12345 (или b3:d12345) и нажмите ОК. Таким образом, вы без труда захватили огромный диапазон, всего за пару кликов.
- В поле «Имя» (которое расположено слева от строки формул) задайте диапазон ячеек: B3:D12345 (или b3:d12345) и нажмите «Enter».
Способ 5 и 6 – это самое быстрое решение для выделения больших диапазонов. Небольшие диапазоны в пределах одного экрана лучше выделять мышкой.
Выделение диапазонов целых столбцов или строк
Чтобы выделить диапазон нескольких столбцов нужно подвести курсор мышки на заголовок первого столбца и удерживая левую клавишу протянуть его до заголовка последнего столбца. В процессе мы наблюдаем подсказку Excel: количество выделенных столбцов.
Выделение строк выполняется аналогичным способом только курсор мышки с нажатой левой клавишей нужно вести вдоль нумерации строк (по вертикали).
Выделение диапазона целого листа
Для выделения диапазона целого листа следует сделать щелчок левой кнопкой мышки по верхнему левому уголку листа, где пересекаются заголовки строк и столбцов. Или нажать комбинацию горячих клавиш CTRL+A.
Выделение несмежного диапазона
Несмежные диапазоны складываются из нескольких других диапазонов.
Чтобы их выделять просто удерживайте нажатие клавиши CTRL, а дальше как при обычном выделении. Также в данной ситуации особенно полезным будет режим после нажатия клавиши F8: «Расширить выделенный фрагмент».
Выделение строк и столбцов в таблице Excel
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Вы можете выделить ячейки и диапазоны в таблице, как если бы они были выбраны на листе, но выбор строк и столбцов таблицы отличается от выбора строк и столбцов на листе.
Выполните указанное действие
Столбец таблицы с заголовком или без него
Щелкните верхний край заголовка столбца или столбца в таблице. Появится следующая стрелка выделения, указывающая на то, что при нажатии кнопки выбирается нужный столбец.
Примечание: Щелкнув верхнюю границу один раз, вы выделяете данные столбца таблицы; Дважды щелкните весь столбец таблицы.
Можно также щелкнуть в любом месте столбца «Таблица», а затем нажать клавиши CTRL + ПРОБЕЛ, либо щелкнуть первую ячейку в столбце таблицы, а затем нажать сочетание клавиш CTRL + SHIFT + стрелка вниз.
Примечание: Чтобы выбрать данные столбца таблицы, нажмите клавиши CTRL + ПРОБЕЛ. Дважды нажмите клавиши CTRL + ПРОБЕЛ, чтобы выбрать весь столбец таблицы.
Щелкните левую границу строки таблицы. Появится следующая стрелка выделения, указывающая на то, что при нажатии кнопки выбирается строка.
Вы можете щелкнуть первую ячейку в строке таблицы, а затем нажать клавиши CTRL + SHIFT + стрелка вправо.
Все строки и столбцы таблицы
Щелкните левый верхний угол таблицы. Появится следующая стрелка выделения, указывающая на то, что при нажатии кнопки выбираются данные таблицы во всей таблице.
Дважды щелкните левый верхний угол таблицы, чтобы выделить всю таблицу, включая заголовки таблицы.
Можно также щелкнуть в любом месте таблицы, а затем нажать клавиши CTRL + A, чтобы выделить данные таблицы во всей таблице, или щелкнуть верхнюю левую ячейку в таблице, а затем нажать клавиши CTRL + SHIFT + END.
Дважды нажмите сочетание клавиш CTRL + A, чтобы выделить всю таблицу, включая заголовки таблицы.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Содержание
- How do I find the last column with data?
- 7 Answers 7
- Как определить последнюю ячейку на листе через VBA?
How do I find the last column with data?
I’ve found this method for finding the last data containing row in a sheet:
Is there a similar method for finding the last data containing column in a sheet?
7 Answers 7
Lots of ways to do this. The most reliable is find.
If you want to find the last column used in a particular row you can use:
Using used range (less reliable):
Using used range wont work if you have no data in column A. See here for another issue with used range:
See Here regarding resetting used range.
I know this is old, but I’ve tested this in many ways and it hasn’t let me down yet, unless someone can tell me otherwise.
Try using the code after you active the sheet:
If you use Cells.SpecialCells(xlCellTypeLastCell).Row only, the problem will be that the xlCellTypeLastCell information will not be updated unless one do a «Save file» action. But use UsedRange will always update the information in realtime.
I think we can modify the UsedRange code from @Readify’s answer above to get the last used column even if the starting columns are blank or not.
So this lColumn = ws.UsedRange.Columns.Count modified to
this lColumn = ws.UsedRange.Column + ws.UsedRange.Columns.Count — 1 will give reliable results always
Above line Yields 9 in the immediate window.
Источник
Как определить последнюю ячейку на листе через VBA?
Очень часто при внесении данных на лист Excel возникает вопрос определения последней заполненной или первой пустой ячейки. Чтобы впоследствии с этой первой пустой ячейки начать заносить данные. В этой теме я опишу несколько способов определения последней заполненной ячейки.
В качестве переменной, которой мы будем присваивать номер последней заполненной строки, у нас во всех примерах будет lLastRow . Объявлять мы её будем как Long . Для экономии памяти можно было бы использовать и тип Integer , но т.к. строк на листе может быть больше 32767(это максимальное допустимое значение переменных типа Integer ) нам понадобиться именно Long , во избежание ошибки. Подробнее про типы переменных можно прочитать в статье Что такое переменная и как правильно её объявить
Одинаковые переменные для всех примеров
Во всех примерах ниже мы будем запоминать номер последней строки или столбца в одни и те же переменные:
Dim lLastRow As Long ‘а для lLastCol можно было бы применить и тип Integer, ‘т.к. столбцов в Excel пока меньше 32767, но для однообразности назначим тоже Long Dim lLastCol As Long
Способ 1:
Определение последней заполненной строки через свойство End
lLastRow = Cells(Rows.Count,1).End(xlUp).Row ‘или lLastRow = Cells(Rows.Count, «A»).End(xlUp).Row
1 или «A» — это номер или имя столбца, последнюю заполненную ячейку в котором мы определяем. По сути обе приведенные строки дадут абсолютно одинаковый результат. Просто иногда удобнее указать номер столбца, а иногда его имя. Поэтому использовать можно любой из приведенных вариантов, в зависимости от ситуации.
Определение последнего столбца через свойство End
lLastCol = Cells(1, Columns.Count).End(xlToLeft).Column
1 — это номер строки, последнюю заполненную ячейку в которой мы определяем.
Данный метод определения последней строки/столбца самый распространенный. Используя его мы можем определить последнюю ячейку только в одном конкретном столбце(или строке). В большинстве случаев этого более чем достаточно.
Метод основан именно на принципе работы свойства End. На примере поиска последней строки опишу принцип так, как бы мы это делали руками через выделение ячеек на листе:
- выделили самую последнюю ячейку столбца А на листе(для Excel 2007 и выше это А1048576 , а для Excel 2003 — А65536 )
- и выполнили переход вверх комбинацией клавиш Ctrl + стрелка вверх . Данная комбинация заставляет Excel двигаться вверх(если точнее, то в направлении стрелки, нажатой вместе с Ctrl ) до тех пор, пока не встретиться первая ячейка с формулой или значением. А в случае, если сочетание было вызвано из уже заполненных ячеек — то до первой пустой. И как только Excel доходит до этой ячейки — он её выделяет
- А через свойство .Row мы просто получаем номер строки этой выделенной ячейки
- даже если в ячейке нет видимого значения, но есть формула — End посчитает ячейку не пустой. С одной стороны вполне справедливо. Но иногда нам надо определить именно «визуально» заполненные ячейки. Поиск ячеек при подобных условиях будет описан ниже(Способ 4: Определение последней ячейки через метод Find)
- если на листе заполнены все строки в просматриваемом столбце(или будут заполнены несколько последних ячеек столбца или даже только одна последняя) — то результат может быть неверный(ну или не совсем такой, какой ожидали)
- Данный способ игнорирует строки, скрытые фильтром, группировкой или командой Скрыть (Hide) . Т.е. если последняя строка таблицы будет скрыта, то данный метод вернет номер последней видимой заполненной строки, а не последней реально заполненной.
Ну а если надо получить первую пустую ячейку на листе(а не первую заполненную) — придется вспомнить математику. Т.к. последнюю заполненную мы определили, то первая пустая — следующая за ней. Т.е. к результату необходимо прибавить 1. Это хоть и очевидно, но на всякий случай все же лучше об этом напомнить.
Способ 2:
Определение последней заполненной строки через SpecialCells
Определение последнего столбца через SpecialCells
Данный метод не требует указания номера столбца и возвращает последнюю ячейку(Row — строку, Column — столбец).
Если хотите получить номер первой пустой строки или столбца на листе — к результату необходимо прибавить 1.
Нюансы:
- Используя данный способ следует помнить, что не всегда можно получить реальную последнюю заполненную ячейку, т.е. именно ячейку со значением. Метод SpecialCells определяет самую «дальнюю» ячейку на листе, используя при этом механизм «запоминания» тех ячеек, в которых мы работали в данном листе. Т.е. если мы занесем в ячейку AZ90345 значение и сразу удалим его — lLastRow, полученная через SpecialCells будет равна значению именно этой ячейки, из которой вы только что удалили значения(т.е. 90345). Другими словами требует обязательного обновления данных, а этого можно добиться только сохранив файла, а временами даже только закрыв файл и открыв его снова. Так же, если какая-либо ячейка содержит форматирование(например, заливку), но не содержит никаких значений, то метод SpecialCells посчитает её используемой и будет учитывать как заполненную.
Этот недостаток можно попробовать обойти, вызвав перед определением последней ячейки вот такую строку кода:
With ActiveSheet.UsedRange: End With
Это должно переопределить границы рабочего диапазона и тогда определение последней строки/столбца сработает как ожидается, даже если до этого в ячейке содержались данные, которые впоследствии были удалены.
Выглядеть в единой процедуре это будет так:
Sub GetLastCell() Dim lLastRow As Long ‘переопределяем рабочий диапазон листа With ActiveSheet.UsedRange: End With ‘ищем последнюю заполненную ячейку на листе lLastRow = Cells.SpecialCells(xlLastCell).Row End Sub
Сам же я этот метод обычно использую для определения последней ячейки в только что созданном файле, в котором только добавляю строки кодом и в котором не может быть описанных выше нюансов.
Способ 3:
Определение последней строки через UsedRange
lLastRow = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Rows.Count — 1
Определение последнего столбца через UsedRange
lLastCol = ActiveSheet.UsedRange.Column + ActiveSheet.UsedRange.Columns.Count — 1
- ActiveSheet.UsedRange.Row — этой строкой мы определяем первую ячейку, с которой начинаются данные на листе. Важно понимать для чего это — если у вас первые строк 5 не заполнены ничем(т.е. самые первые данные заносились начиная с 6-ой строки листа), то ActiveSheet.UsedRange.Row вернет именно 6(т.е. номер первой строки с данными). Если же все строки заполнены — то вернет 1.
- ActiveSheet.UsedRange.Rows.Count — определяем кол-во строк, входящих в весь диапазон данных на листе. При этом неважно, есть ли данные в ячейках или нет — достаточно было поработать в этих ячейках и удалить значения или просто изменить цвет заливки.
В итоге получается: первая строка данных + кол-во строк с данными — 1 . Зачем вычитать единицу? Попробуем посчитать вместе: первая строка: 6. Всего строк: 3. 6 + 3 = 9. Вроде все верно. А теперь выделим на листе три ячейки, начиная с 6-ой. Выделение завершилось на 8-ой строке. Потому что в 6-ой строке уже есть данные. Поэтому и надо вычесть 1, чтобы учесть этот момент. Думаю, не надо пояснять, что если надо получить первую пустую ячейку — можно 1 не вычитать 🙂 - То же самое и с ActiveSheet.UsedRange.Column , только уже не для строк, а для столбцов.
- Обладает некоторыми недостатками предыдущего метода. Определяет самую «дальнюю» ячейку на листе, используя при этом механизм «запоминания» тех ячеек, в которых мы работали в данном листе. Следовательно попробовать обойти этот момент можно точно так же: перед определением последней строки/столбца записать строку: With ActiveSheet.UsedRange: End With
Это должно переопределить границы рабочего диапазона и тогда определение последней строки/столбца сработает как ожидается, даже если до этого в ячейке содержались данные, которые впоследствии были удалены. - даже если в ячейке нет видимого значения, но есть формула — UsedRange посчитает ячейку не пустой
Однако метод через UsedRange.Row работает прекрасно и при установленной на лист защите и внутри UDF, что делает его более предпочтительным, чем метод через SpecialCells при равных условиях.
Способ 4:
Определение последней строки и столбца, а так же адрес ячейки методом Find
Sub GetLastCell_Find() Dim rF As Range Dim lLastRow As Long, lLastCol As Long ‘ищем последнюю ячейку на листе, в которой хранится хоть какое-то значение Set rF = ActiveSheet.UsedRange.Find(What:=»*», LookIn:=xlValues, LookAt:=xlWhole, SearchDirection:=xlPrevious, MatchCase:=False, MatchByte:=False) If Not rF Is Nothing Then lLastRow = rF.Row ‘последняя заполненная строка lLastCol = rF.Column ‘последний заполненный столбец MsgBox rF.Address ‘показываем сообщение с адресом последней ячейки Else ‘если ничего не нашлось — значит лист пустой ‘и можно назначить в качестве последних первую строку и столбец lLastRow = 1 lLastCol = 1 MsgBox «A1» ‘показываем сообщение с адресом ячейки А1 End If End Sub
Этот метод, пожалуй, самый оптимальный в случае, если надо определить последнюю строку/столбец на листе без учета форматов и формул — только по отображаемому значению в ячейке. Например, если на листе большая таблица и последние строки заполнены формулами, возвращающими при определенных условиях пустую ячейку( =ЕСЛИ( A1 >0;1;»») ), предыдущие варианты вернут строку/столбец ячейки с последней ячейкой, в которой формула. В то время как данный метод вернет адрес ячейки только в случае, если в ячейке реально отображается какое-то значение. Такой подход часто используется для того, чтобы определить границы данных для последующего анализа заполненных данных, чтобы не захватывать пустые ячейки с формулами и не тратить время на их проверку.
Здесь следует обратить внимание на параметры метода Find. В данном случае мы специально указываем искать по значениям, а не по формулам:
Set rF = ActiveSheet.UsedRange.Find(What:=»*», LookIn:=xlValues , LookAt:=xlWhole, SearchDirection:=xlPrevious, MatchCase:=False, MatchByte:=False)
Нюансы:
- Метод Find , вызванный с листа или другим кодом, имеет свойство запоминать все параметры последнего поиска, а если поиск еще не вызывался — то применяются параметры по умолчанию. А по умолчанию поиск идет всегда по формулам. Поэтому я настоятельно рекомендую указывать принудительно все необходимые параметры, как в примере.
- Метод Find не будет учитывать в просмотре скрытые строки и столбцы. Это следует учитывать при его применении.
Пара небольших практических кодов
Коды ниже могут помочь понять, как использовать приведенные выше строки кода по поиску последней ячейки/строки:
Sub GetLastCell() Dim lLastRow As Long Dim lLastCol As Long ‘определили последнюю заполненную ячейку с учетом формул в столбце А lLastRow = Cells(Rows.Count, 1).End(xlUp).Row MsgBox «Заполненные ячейки в столбце А: » & Range(«A1:A» & lLastRow).Address ‘определили последний заполненный столбец на листе(с учетом формул и форматирования) lLastCol = Cells.SpecialCells(xlLastCell).Column MsgBox «Заполненные ячейки в первой строке: » & Range(Cells(1, 1), Cells(1, lLastCol)).Address ‘выводим сообщение с адресом последней ячейки на листе(с учетом формул и форматирования) MsgBox «Адрес последней ячейки диапазона на листе: » & Cells.SpecialCells(xlLastCell).Address End Sub
Выделяем диапазон ячеек в столбцах с А по С, определяя последнюю ячейку по столбцу A этого же листа:
Sub SelectToLastCell() Range(«A1:C» & Cells(Rows.Count, 1).End(xlUp).Row).Select End Sub
Копируем ячейку B1 в первую пустую ячейку столбца A этого же листа:
Sub CopyToFstEmptyCell() Dim lLastRow As Long lLastRow = Cells(Rows.Count, 1).End(xlUp).Row ‘определили последнюю заполненную ячейку Range(«B1»).Copy Cells(lLastRow+1, 1) ‘скопировали В1 и вставили в следующую после определенной ячейки End Sub
А код ниже делает тоже самое, но одной строкой — применяется Offset и используется тот факт, что изначально методом End мы получаем именно ячейку, а не номер строки(номер строки мы получаем позже через свойство .Row):
Sub CopyToFstEmptyCell() Range(«B1»).Copy Destination:=Cells(Rows.Count, 1).End(xlUp).Offset(1) End Sub
Range(«B1»).Copy — копирует ячейку В1 . Если для аргумента Destination указать другую ячейку, то в неё будет вставлена скопированная ячейка. Мы передаем в этот аргумент определенную методом End ячейку
Cells(Rows.Count, 1).End(xlUp) — возвращает последнюю заполненную ячейку в столбце А (не строку, а именно ячейку)
Offset(1) — смещает полученную ячейку на строку вниз
Используем инструмент автозаполнение(протягивание) столбца В , начиная с ячейки B2 и определяя последнюю ячейку для заполнения на основании столбца А
Sub AutoFill_B() Dim lLastRow As Long lLastRow = Cells(Rows.Count, 1).End(xlUp).Row Range(«B2»).AutoFill Destination:=Range(«B2:B» & lLastRow) End Sub
На самом деле практических кодов может быть куда больше, т.к. определение последней заполненной или первой пустой ячейки является чуть ли не самой распространенной задачей при написании кодов в Excel.
Статья помогла? Поделись ссылкой с друзьями!
Источник