3

У меня есть таблица, которая выглядит примерно так:

   ABCDE ...
1 | 1 0 0 1 0
2 | 0 1 0 0 1
3 | 0 0 0 1 0
4 | 1 0 0 0 0

Я хотел бы объединить строку 1 в столбце F, чтобы он возвращал: 10010

Но ввод =concatenate(A1:E1) возвращает ошибку # #VALUE! и использование формулы массива ({=concatenate(A1:E1)}) возвращает только 1.

Этот метод приближает меня, но он удаляет формулу, поэтому я не могу перетащить и объединить все строки.

Почему Excel делает сложную конкатенацию? Есть ли другой способ сделать это без использования VBA?

2 ответа2

4

В F1 введите:

=A1 & B1 & C1 & D1 & E1

и скопировать вниз.

EDIT # 1:

Если вы хотите прикусить пулю и использовать VBA, тогда подумайте об этом крошечном UDF

Public Function KonKatenate(rIN As Range) As String
    Dim r As Range
    For Each r In rIN
        KonKatenate = KonKatenate & r.Text
    Next r
End Function

Пользовательские функции (UDF) очень просты в установке и использовании:

  1. ALT-F11 открывает окно VBE
  2. ALT-I ALT-M открывает новый модуль
  3. вставьте материал и закройте окно VBE

Если вы сохраните книгу, UDF будет сохранен вместе с ней. Если вы используете версию Excel более поздней, чем в 2003 году, вы должны сохранить файл как .xlsm, а не .xlsx

Чтобы удалить UDF:

  1. откройте окно VBE, как указано выше
  2. очистить код
  3. закройте окно VBE

Чтобы использовать UDF из Excel:

=KonKatenate(A1:Z1)

Чтобы узнать больше о макросах в целом, смотрите:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

а также

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

а подробности о UDF смотрите в:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

Макросы должны быть включены, чтобы это работало!

2

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

=CONCATENATE(A1,B1,C1,D1,E1)

Извините, это лучшее, что я могу предложить без VBA. Я надеюсь, что у вас нет тонны столбцов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .