Как пронумеровать объединенные ячейки в excel по порядку автоматически

Если вы пробовали сделать нумерацию объединенных ячеек в Excel, то, наверное, уже поняли, что простое «протягивание ячеек» тут не работает.

При попытке «протянуть» вы получите ошибку «Для этого все объединенные ячейки должны иметь одинаковый размер». Но, нерешаемых проблем не бывает.

Для примера возьмём столбец, часть ячеек которого объединены (по две, три и пр.), а часть — нет. Необходимо пронумеровать список.

В ячейку A1 ставим 1, затем выделяем диапазон, который нужно пронумеровать. В моём примере это A3:A13. В строке формул пишем: =МАКС(A$1:A2)+1. Затем нажимаем Ctrl+Enter. Обратите внимание — Ctrl+Enter.

Функция МАКС() возвращает наибольшее значение из набора значений, а в нашем случае, мы увеличиваем наибольшее значение на единицу.

Таким образом можно сделать нумерацию, когда ячейки объединены.


  • Метки


    excel
 

Здравствуйте! Help!
Очень часто приходится пользоваться таблицами, отражающими какую либо структуру и нужно пронумеровать их. Вручную это долго и очень часто сбиваюсь, начинаю заново и так по кругу. Прошу Вас — научите, пожалуйста, как можно автоматизировать такой процесс. Пробовала =МАКС(A$1:A2)+1  что-то ничего не получилось…Очень рассчитываю на ответ! Заранее благодарна!

Прикрепленные файлы

  • Пример.xlsx (47.57 КБ)

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Если рядом не за что зацепиться (нет значений), то только макросом.

 

artemkau88

Пользователь

Сообщений: 553
Регистрация: 09.10.2019

#3

20.12.2020 14:24:47

Посмотрите этот макрос

Код
Sub Нумерация()
Dim i, n
Dim rngStart As Range
Set rngStart = Application.InputBox("Выберите первую ячейку для нумерации", , , , , , , 8)
For i = 1 To ActiveSheet.UsedRange.Rows.Count
n = n + 1
rngStart = n
Set rngStart = rngStart.Offset(1, 0)
Next i
End Sub

Изменено: artemkau8820.12.2020 14:32:53

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

Как ещё вариант, тоже макросом

 

БМВ

Модератор

Сообщений: 21383
Регистрация: 28.12.2016

Excel 2013, 2016

или не понимаю или  в A2 =МАКС(A$1:A1)+1

По вопросам из тем форума, личку не читаю.

 

Уважаемые друзья! Большое спасибо, у меня получилось!

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#7

20.12.2020 18:18:28

Цитата
БМВ написал: или не понимаю или…

или я смотрел столбец D :)

 

БМВ

Модератор

Сообщений: 21383
Регистрация: 28.12.2016

Excel 2013, 2016

#8

20.12.2020 18:48:53

Цитата
vikttur написал: столбец D

для D совершенно иная
=MAX(D$1:D1)+1  :D

По вопросам из тем форума, личку не читаю.

 

Kuzmich

Пользователь

Сообщений: 7998
Регистрация: 21.12.2012

#9

20.12.2020 19:23:25

Код
Sub iNomer()
Dim iLastRow As Long
Dim i As Long
Dim n As Long
  n = 1
  iLastRow = Columns(2).Find("Общий итог", , xlValues, xlWhole).Row
  For i = 2 To iLastRow - 1
    If Cells(i, "D").MergeCells Then
       Cells(i, "D") = n
       n = n + 1
       i = i + Cells(i, "D").MergeArea.Count - 1
    Else
       Cells(i, "D") = n
       n = n + 1
    End If
  Next
End Sub

Изменено: Kuzmich20.12.2020 19:24:04

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#10

20.12.2020 20:04:35

Цитата
БМВ написал: для D совершенно иная

Хи-хи… Посмеялся? А теперь глянь в пример )

Прикрепленные файлы

  • нумеруем.xlsx (12.52 КБ)

 

БМВ

Модератор

Сообщений: 21383
Регистрация: 28.12.2016

Excel 2013, 2016

#11

20.12.2020 20:42:09

уппс, а вот  размножение это не заметил :-(

По вопросам из тем форума, личку не читаю.

Нумерация списка с объединенными ячейками

RumOleg

Дата: Среда, 04.04.2012, 23:44 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 6


Репутация:

0

±

Замечаний:
0% ±


Добрый день!

Прошу Вас помочь с автоматической последовательной нумерацией списка с объединенными ячейками.
В приложенном файле пример — вопрос в том, как можно автоматически пронумеровать ячейки в столбике А? Необходимо это реализовывать периодически на аналогичной огромной таблице

Большое спасибо за рассмотрение вопроса

К сообщению приложен файл:

VOPROS.xls
(14.0 Kb)

 

Ответить

Michael_S

Дата: Среда, 04.04.2012, 23:48 |
Сообщение № 2

Группа: Друзья

Ранг: Старожил

Сообщений: 2012


Репутация:

373

±

Замечаний:
0% ±


Excel2016

И чё должно получиться?

 

Ответить

RumOleg

Дата: Среда, 04.04.2012, 23:50 |
Сообщение № 3

Группа: Пользователи

Ранг: Прохожий

Сообщений: 6


Репутация:

0

±

Замечаний:
0% ±


Должны появиться числа 123456… в столбике А.
Если написать 1,2 и «протянуть» дальше вниз по столбику, то не получится, поскольку есть объединенные ячейки

К сообщению приложен файл:

123456.xls
(18.0 Kb)

 

Ответить

DV

Дата: Четверг, 05.04.2012, 00:31 |
Сообщение № 4

Группа: Друзья

Ранг: Обитатель

Сообщений: 286


Репутация:

194

±

Замечаний:
0% ±


Excel 2010 RUS

Можно так:
В А1 ставим 1
Выделяем A3:A30
В строке формул пишем:

и жмем Ctrl+Enter

Сообщение отредактировал DVЧетверг, 05.04.2012, 00:32

 

Ответить

civic4772

Дата: Понедельник, 27.08.2012, 20:50 |
Сообщение № 5

Группа: Пользователи

Ранг: Прохожий

Сообщений: 1


Репутация:

0

±

Замечаний:
0% ±


Quote (DV)

=МАКС(A$1:A2)+1

спасибо огромное, спасли от вбивания номерации строк вручную

 

Ответить

Petroff

Дата: Вторник, 14.02.2017, 13:54 |
Сообщение № 6

Группа: Пользователи

Ранг: Прохожий

Сообщений: 2


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

DV, Не могу понять как это сделать, или это из за разных версий excel? У меня 2007
что я делаю не так?

 

Ответить

Pelena

Дата: Вторник, 14.02.2017, 14:04 |
Сообщение № 7

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

У Вас в книге стиль ссылок R1C1. Зайдите в Параметры Excel и в разделе Формулы снимите флажок Стиль ссылок R1C1


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

Petroff

Дата: Вторник, 14.02.2017, 14:20 |
Сообщение № 8

Группа: Пользователи

Ранг: Прохожий

Сообщений: 2


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Pelena, Спасибо большое

Сообщение отредактировал PetroffВторник, 14.02.2017, 14:30

 

Ответить

stfio

Дата: Среда, 16.03.2022, 13:55 |
Сообщение № 9

Группа: Пользователи

Ранг: Новичок

Сообщений: 15


Репутация:

0

±

Замечаний:
0% ±


Excel 2016

у меня почему-то не получилось… подскажите пожалуйста что не так

 

Ответить

Serge_007

Дата: Среда, 16.03.2022, 14:11 |
Сообщение № 10

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

stfio, Вам надо вставлять, а не


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

stfio

Дата: Среда, 16.03.2022, 14:16 |
Сообщение № 11

Группа: Пользователи

Ранг: Новичок

Сообщений: 15


Репутация:

0

±

Замечаний:
0% ±


Excel 2016

Serge_007, огромное спасибо!

 

Ответить

When we try to insert a sequence number into an item in Excel, we always use the autofill handle, but when we try to apply the same process to cells of different sizes, the error appears. This process can’t be completed using the default functions in Excel; instead, we will be using the VBA application to complete our process.

Read this tutorial to learn how you can autonumber merged cells in Excel.

AutoNumber Merged Cells in Excel

Here, we will first insert a VBA module and then run the module to complete our task. Let us see a simple process to understand how we can auto-number merged cells in Excel.

Step 1

Let us consider an Excel sheet that contains a list of different heights, and then try to apply the sequence number using the autofill handle.

We can see that the result is not accurate, but we can use VBA code to get the perfect result. Now right-click on the sheet name and select view code to open the vba application, and click on inset and select module, then type the programme into the text box as shown in the below image.

Example

Sub NumberCellsAndMergedCells() 'Updated Bu Nirmal Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "select the range" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) Set WorkRng = WorkRng.Columns(1) xIndex = 1 Set Rng = WorkRng.Range("A2") Do While Not Intersect(Rng, WorkRng) Is Nothing Rng.Value = xIndex xIndex = xIndex + 1 Set Rng = Rng.MergeArea.Offset(1) Loop End Sub

Step 2

Now save the workbook as a macro-enabled template and press F5 to run the code. A pop-up window titled «Select the Range» will appear; select the range of cells to number as shown in the image below.

Step 3

Now click on OK to get our final output, as shown in the below image.

Conclusion

In this tutorial, we used a simple example to demonstrate how we can auto-number merged cells in Excel to highlight a particular set of data.

Как мы могли заполнить номера серий в списке объединенных ячеек разного размера в Excel? Сначала нам нужно перетащить дескриптор автозаполнения, чтобы заполнить объединенные ячейки, но в этом случае мы получим следующее предупреждающее сообщение и не сможем заполнить объединенные ячейки.

док-заполнить-объединенные-ячейки-1

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

Автоматическое нумерация / заполнение объединенных ячеек кодом VBA


стрелка синий правый пузырь Автоматическое нумерация / заполнение объединенных ячеек кодом VBA

Следующий код VBA может помочь вам быстро пронумеровать выбранные объединенные ячейки. Пожалуйста, сделайте следующее:

1. Удерживайте ALT + F11 ключи, и он открывает Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: автоматическое нумерация объединенных ячеек

Sub NumberCellsAndMergedCells()
	'Update 20141028
	Dim Rng As Range
	Dim WorkRng As Range
	On Error Resume Next
	xTitleId = "KutoolsforExcel"
	Set WorkRng = Application.Selection
	Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8)
	Set WorkRng = WorkRng.Columns(1)
	xIndex = 1
	Set Rng = WorkRng.Range("A1")
	Do While Not Intersect(Rng, WorkRng) Is Nothing
		Rng.Value = xIndex
		xIndex = xIndex + 1
		Set Rng = Rng.MergeArea.Offset(1)
	Loop
End Sub

3, Затем нажмите F5 нажмите клавишу для запуска этого кода, и появится диалоговое окно, позволяющее выбрать объединенные ячейки, которые вы хотите заполнить, см. снимок экрана:

док-заполнить-объединенные-ячейки-1

4. Выбрав объединенные ячейки, нажмите OK, теперь выбранные вами объединенные ячейки были заполнены последовательными номерами, см. снимок экрана:

док-заполнить-объединенные-ячейки-1


Статьи по теме:

Как автоматически пронумеровать или перенумеровать после фильтра в Excel?

Как быстро объединить соседние строки с одинаковыми данными в Excel?

Как разделить ячейки и заполнить повторяющиеся значения в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (10)


Оценок пока нет. Оцените первым!

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

Нумерация вручную

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

Нумерация при помощи маркера заполнения

Значительно ускорить нумерацию строк поможет так называемый маркер заполнения, ухватившись за который мышью и перетащив на нужное количество строк вниз можно получить последовательную нумерацию строк. Маркер заполнения это правый нижний уголок ячейки. Несколько практически одинаковых способов:

Маркер заполнения
  1. Нужно установить номер в ячейку первой строки, затем ухватить маркер заполнения и при нажатой кнопке Ctrl, оттянуть маркер вниз на все строки которые нужно пронумеровать.
  2. Ставим в первую и вторую ячейку последовательно нумерацию, например 1 и 2, и, зацепив мышкой маркер заполнения, тянем его вниз.
  3. Нумерация строк при помощи функции СТРОКА. В ячейке с номером 1 вписываем =СТРОКА(A1), далее как в предыдущих способах: захватываем маркер заполнения и перетягиваем его вниз.
  4. При помощи формулы СУММА или сложения. В первой ячейке вписываем 1, во второй пишем =, после знака указываем предыдущую ячейку и прибавляем единицу (+1). Должно получиться примерно следующее: =А3+1, далее жмем Enter и маркером заполнения перетаскиваем формулу в конец списка.

Интересно, что при втором способе можно задать шаг нумерации, например проставим номера 1 и сразу 3, то все строки будут пронумерованы 1,3,5… и т.д., т.е. нечетными числами. Или пронумеруем строки через одну, то и нумерация строк продолжится через одну строку.

Отображение или скрытие маркера заполнения

Разрешить или запретить отображать маркеры заполнения и перетаскивание ячеек можно в параметрах Excel во вкладке дополнительно. Как правило, в Эксель этот параметр бывает в состоянии разрешить и пользоваться им можно сразу.

Разрешить маркеры…

Как автоматически пронумеровать строки при помощи инструмента Прогрессия

Автоматически пронумеровать строки   таблицы можно при помощи функции прогрессия не пользуясь маркером заполнения, т.е. захватывать его и перетаскивать не нужно. Для этого выделяем первую ячейку списка (предварительно вставив туда единицу), открываем инструмент прогрессия, переключаем ее в положение по столбцам, указываем конечное значение (количество всех строк, которые нужно пронумеровать). Наконец жмем ОК и видим, что все строки таблицы пронумерованы. Нужно сказать, что при удалении или наоборот, при вставке новой строки нумерация нарушается. Восстановить нумерацию удобно опять же при помощи перетаскивания маркера заполнения.

Нумерация при помощи прогрессии

Нумерация строк с объединенными ячейками

Часто приходится делать таблицы в которых нескольким строкам нужно придать один номер, так как в таблице выполнено объединение нескольких ячеек. Для такого случая все приведенные выше примеры не подходят: на все наши попытки программа отвечает отказом (требуется, чтобы ячейки имели одинаковый размер).

Ячейки объединил, нужно нумеровать как одну строку

Для такого случая есть еще одна функция, но ее написание зависит от количества строк из которых состоит шапка таблицы, например, шапка занимает две строки, тогда в третьей строке (ячейке) пишем =МАКС(А$1:А2)+1. Если нумерация начинается с пятой строки, тогда формула может быть следующей: =МАКС(А$1:А4)+1. Для нумерации строк нужно выделить все ячейки, в которых нужна нумерация, в том числе и объединенные, в строку формул вписываем эту формулу (знак $ можно поставить простым нажатием кнопки F4), затем одновременно нажимаем кнопки Ctrl и Enter.

Формула, чтобы вставить знак $, нажимаем на кнопку F4
Одновременно нажимаем кнопки Ctrl и Enter

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

Работаю над таблицей, очень большой.
Необходимо пронумеровать эту таблицу. Но в таблице в строках есть объединенные ячейки.
Ячейки объединены не равномерно по 2 3 и даже болще строк.
Помогите пожалуйста очень нужно!


Вы щас про Excel говорите?
Там вроде и так строки пронумерованы, независимо от объединения ячеек.
Параметры->Вид->Отображать заголовки строк и столбцов

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…
www.excel-vba.ru
Просто СПАСИБО [+оказать+]
Считаешь СПАСИБО мало? Яндекс.Деньги: 41001332272872; WM: R298726502453


И если не трудно примерчик выложите…Или поподробнее про проблему.Может Вам нужна нумерация только объединенных ячеек?

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…
www.excel-vba.ru
Просто СПАСИБО [+оказать+]
Считаешь СПАСИБО мало? Яндекс.Деньги: 41001332272872; WM: R298726502453


Цитата: Prist от 13.11.2008, 09:57
И если не трудно примерчик выложите…Или поподробнее про проблему.Может Вам нужна нумерация только объединенных ячеек?

Вот пример во вложении. Реч идет об Excel. Мне нужна нумерация только объединенных ячеек.


Вот пример во вложении. Реч идет об Excel. Мне нужна нумерация только объединенных ячеек.


Я думаю посчитать можно, но через VBA. По крайней мере я не знаю как это можно сделать стандартными средствами Excel. Устроит через VBA — пишите. Сразу пример приложить не могу — нет доступа к VBA.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…
www.excel-vba.ru
Просто СПАСИБО [+оказать+]
Считаешь СПАСИБО мало? Яндекс.Деньги: 41001332272872; WM: R298726502453


Цитата: tkk78 от 13.11.2008, 10:28
Мне нужна нумерация только объединенных ячеек.

Они же у Вас, вроде, все объединены?..
Выделите ячейки, которые хотите пронумеровать, и выполните макрос:

Sub Auto123()
Dim i As Range, LMC As String, n As Single
  For Each i In Selection
    If i.MergeCells Then
      If LMC <> i.MergeArea.Address Then
        n = n + 1: i = n
      End If
      LMC = i.MergeArea.Address
    Else
      n = n + 1: i = n
End If: Next: End Sub

Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли


Понравилась статья? Поделить с друзьями:
  • Как пронумеровать некоторые страницы в word
  • Как пронумеровать не все страницы word 2010
  • Как пронумеровать листы в документе word
  • Как пронумеровать листы в word со второй страницы
  • Как пронумеровать листы в word без титульного листа