Excel слияния и форматирования - PullRequest
1 голос
/ 03 апреля 2009

Проще говоря, я ищу быстрый способ сделать следующее.
Я хотел бы отформатировать таблицу Excel ниже:

      A     B     C     D
    1 foo   bat   abe   test
    2 foo   bat   cat   test
    3 foo   bat   dog   test
    4 bar   moo   hat   girl
    5 bar   moo   bat   girl

чтобы выглядеть так:

      A     B     C               D
    1 foo   bat   abe, cat, dog   test
    2 bar   moo   hat, bat        girl

В столбцах A, B, D и т. Д. Будут повторяться одни и те же данные для каждого уникального ряда в каждой строке.
В каждом ряду столбец C всегда будет разным.
Столбец C необходимо будет объединить через запятую.

Любые предложения приветствуются.

1 Ответ

1 голос
/ 03 апреля 2009

Вы могли бы использовать VBA, но соответствует ли это вашему определению «легкий», я не уверен. Что-то вроде:

Range("C1").Select
Do Until Activecell.Formula = ""
   ''if my row matches the row below
   If  ActiveCell.Offset(0,-2).Value = ActiveCell.Offset(1,-2).Value _
   And ActiveCell.Offset(0,-1).Value = ActiveCell.Offset(1,-1).Value _
   And ActiveCell.Offset(0, 1).Value = ActiveCell.Offset(1, 1).Value Then
       ''merge and collapse
       Activecell.Formula = ActiveCell.Formula & ", " & _
                            ActiveCell.Offset(1,0).Formula
       ActiveCell.Offset(1,0).EntireRow.Delete
   Else
      ''Go down a row
       ActiveCell.Offset(1,0).Select
   End If
Loop

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...