Я создаю приложение для работы с электронными таблицами, которое потребует от пользователя заполнения различных разделов входного листа. Для того, чтобы выделить эти разделы в логические средства, я использую заголовки и суб заголовки, как показано ниже:Именованные диапазоны Excel для создания добавочных заголовков и подзаголовков
Если у меня есть много заголовков, будет значительное количество ручной работы в нумерации заголовков , Я попытался автоматизировать процесс, создав нужный диапазон Header1
, который соответствует серым заголовкам на рисунке ниже. Таким образом, в ячейках A2
и A11
формула равна =Header1
. Формула в названном диапазоне Header1
является:
IF(COUNTA(INDIRECT(CONCATENATE("$A$1",":",ADDRESS(ROW()-1,COLUMN()))))=0,0,INDEX(INDIRECT(CONCATENATE("$A$1",":",ADDRESS(ROW()-1,COLUMN()))),MATCH(ROW(INDIRECT(ADDRESS(ROW()-1,COLUMN()))),INDIRECT(CONCATENATE("$A$1",":",ADDRESS(ROW()-1,COLUMN()))),TRUE)))+1
В основном формула подсчитывает все значения в столбце А и добавляет 1 на. Другими словами, он красиво увеличивается каждый раз, когда вы вызываете Header1
в своей камере, независимо от того, на каком листе вы находитесь (отсюда и использование INDIRECT
). Только частью жесткого кодирования является отправной клеткой, которая является A1
и я поставил 0 в том, что таким образом он обнаруживает, чтобы начать с 1
Моим вопрос - Подобным же образом, как я достиг Инкрементирование заголовков используя именованные диапазоны, как я могу это сделать для заголовков sub? В приведенной выше картинке показан эффект, который я пытаюсь достичь (например, 2.1
, 2.2
), однако я хочу, чтобы это было автоматически, просто поместив формулу =Header2
в ячейку, например.
EDIT - я получил, насколько формуле:
=SUM(INDIRECT(CONCATENATE("$A$1",":",ADDRESS(ROW()-1,COLUMN()-1)))) & "." & MAX(1,COUNTA(INDEX(INDIRECT(CONCATENATE("$B$1",":",ADDRESS(ROW()-1,COLUMN()))),MATCH(SUM(INDIRECT(CONCATENATE("$A$1",":",ADDRESS(ROW()-1,COLUMN()))))-1,INDIRECT(CONCATENATE("$A$1",":",ADDRESS(ROW()-1,COLUMN()-1))),FALSE)):INDIRECT(ADDRESS(ROW()-1,COLUMN()))))
... который работает при помещении в качестве формулы в ячейке, но не работает, когда используется в имени ассортимент. Странный!
Я думаю, что у меня есть подход, но я не совсем понимаю, что именно вы хотите сделать. У вас есть электронная таблица, которая содержит много данных, и вы хотите вставить заголовки? Можете ли вы показать образец своего «входного» листа? Если это не так, добавьте дополнительный комментарий, чтобы более четко сказать, что вы хотите сделать. – SezMe
Я был более явным. Входной лист не относится к вопросу, однако –
Это так. Каковы данные? Нумерация только? Целые? Смешанные? Решение, которое преодолевает ваши проблемы, зависит от данных. Создаете ли вы заголовок перед загрузкой данных? Если это так, проблему легко решить.Вы должны быть более конкретными, прежде чем помощь может быть предложена. – SezMe