Excel объединяет ячейки, сохраняет значения, сворачивая диаграмму

1

Представьте себе диаграмму, которая выглядит следующим образом (строки 1,2,3 объединены в столбцы B, C, D):

   A    B    C    D
1 th
2 in   ##   ##   ##   
3 g1
4 th
5 in   ##   ##   ## 
6 g2

Я хочу график, который выглядит следующим образом:

   A    B    C    D
  th  
1 in   ##   ##   ##
  g1  
  th
2 in   ##   ##   ## 
  g2

Как мне это сделать? Было бы замечательно, если бы новые строки в столбце А были сохранены, но это не нарушит условия сделки, если они не будут.

Другими словами, я хочу, чтобы данные в ячейках A1, A2, A3 все были в A1; A4, A5, A6 должны быть в A2; A7, A8, A9, чтобы быть в A3, и т. Д.

Кроме того, мне нужны данные, которые находятся в B1: 3 (объединены), чтобы быть в B1 (не объединены); B4: 6 (объединено) в B2 (не объединено); и аналогично для столбцов C, D и т. д.

К вашему сведению, здесь десятки тысяч строк.

Аарон Гейтс
источник
Вы просто сказать , что вы хотите текст в ячейке A1 и A2 , чтобы быть многоуровневым , как это может быть размещен с Alt + ENTER между го и т.д.
Антония
@ Антония, нет. Я объясню лучше в вопросе.
Аарон Гейтс
Если я понимаю проблему, вы хотите, чтобы число в каждой ячейке столбца Aбыло таким же, как номер строки, то есть Aстрока столбца 25000была бы g25000. Это то, что вы хотите сделать?
Creidhne
После того, как B1: 3, B4: 6 и т. Д. Не объединены, хотите ли вы удалить пустые строки, то есть хотите ли вы удалить строки 2, 3, 5, 6, ... для всех столбцов?
Creidhne

Ответы:

2

Используя данные из Sheet1,

Лист1 - Данные

создать новый лист как Sheet2

Для строки 1 в ячейке A1 вставьте

     =Sheet1!A1 & CHAR(10) & Sheet1!A2 & CHAR(10) & Sheet1!A3

Использование CHAR (10) эквивалентно нажатию Alt + Enter

Лист2 ячейка А1

Для строки 2 ячейки A2

=INDIRECT("Sheet1!A"&(INT(ROW(A1))*3+1)) & CHAR(10) & INDIRECT("Sheet1!A"&(INT(ROW(A1))*3+2)) & CHAR(10) & INDIRECT("Sheet1!A"&(INT(ROW(Sheet1!A1))*3+3))

где INT (ROW (A1)) * 3 + 1 возвращает целое число номера строки A1, умноженное на 3, чтобы дать вам каждые три строки с +1, чтобы дать номер начальной строки. например, строки 4, 7, 10, 13 и т. д., а функция «Косвенный» позволяет создавать ссылку на ячейку из текста и формулы.

Лист2 А2

Не забудьте отформатировать ваши ячейки в столбце A как «Обтекание текстом».

Выберите тип ячейки B1 =Sheet1!B1и используйте ручку для перемещения по ней, чтобы заполнить строку 1

Выберите ячейку B2

=INDIRECT("Sheet1!B"&(INT(ROW(Sheet1!B1))*3+1))

и используйте маркер для перемещения по строке 2, теперь вам нужно будет редактировать столбцы CD, поскольку ссылка на косвенные столбцы будет неправильной, так как ссылка является текстовой. Замените «Sheet1! B» & ... на «Sheet1! C» & ... для столбца C и «Sheet1! D» & ... для столбца D.

Выберите от A2 до D2 и перетащите заполнить необходимое количество строк

Лист2 Д3

Antony
источник
Очень умное мышление с использованием только встроенных функций Excel! Я не думал, что это возможно без использования макроса.
Миштхан