Как в Excel транспонировать и объединять ячейки в один столбец с разделителем?
Русские Блоги
Иногда нам нужно использовать Excel для обработки большого количества данных. В настоящее время это будет немного медленнее, если вы по-прежнему используете диапазон для ссылки на содержимое ячейки. В настоящее время, если вы используете массив, скорость будет намного быстрее. Конечно, скорость должна быть при относительно большом объеме данных. Я вижу это внизу.
Теперь давайте узнаем, как использовать массивы.
1. Объявление массива
- Одномерный стол
- Двумерная матрица
- Динамичный набор
2. Более легкое создание массива
- Используйте функцию массива, чтобы создать фиксированный массив
- Для создания массива можно использовать функцию divide
- Присвоение массиву значений из диапазона ячеек
3. Размерность массива:
Двумерный массив состоит из строк и столбцов. Например, ARR (3,2) представляет элемент в третьей строке и втором столбце массива. Одномерный массив имеет только один элемент, например, ARR (4) представляет четвертый элемент в массиве.
4. Пример объявления динамического массива:
5. Объединение массивов и разделение строк (объединение и разделение):
- Слияние нескольких символов и регулярный интервал между строками — обычное дело, например
В массиве A-REW-E-RWC-2-RWC разбивается на шесть символов на основе разделителя.
Массив чисел имеет вид (23,45,7,1,76). Строка, соединенная с разделителем, — это то, что я ищу.
В двух вышеуказанных случаях VBA предлагает несколько возможностей, а именно:
Разделение и объединение можно выполнять только для одномерных массивов. Как работать с ячейкой или массивом двух измерений? Для преобразования в одномерный массив воспользуйтесь следующим методом:
7. Функция Filter реализует фильтрацию массива:
Фильтрация массива включает в себя фильтрацию квалифицированных значений из массива в соответствии с определенными условиями для получения нового массива. Функция VBA для фильтрации массива:
Функции фильтрации
Примечание. К сожалению, он способен выполнять только нечеткую фильтрацию и не может предложить точное соответствие.
8. Применение массива VBA для различных функций Excel.
Помимо алгоритмов, которые можно использовать в VBA, широкий набор функций Excel также может быть использован в VBA для разложения, запроса и анализа массива. Вычисление цикла можно сэкономить, вызывая функции рабочего листа. А затем повысить эффективность.
- Максимальное значение в матрице
- Статистика и суммирование матриц
- Запросы и разбивка Правления
1. Маховая доска с запросами
Функция Match используется для запроса позиции определенного значения в наборе чисел, а также может быть использована для запроса массивов VBA. Например
2. Индекс разбивает массив
Разделение массивов — сложная проблема в VBA. Если вы разбиваете массивы по строкам, вы можете использовать только функции API для их завершения в дополнение к циклам. К счастью, мы можем позаимствовать индекс функции рабочего листа, чтобы разделить массив по столбцам, то есть массив, состоящий из нескольких столбцов.Вы можете разделить столбец по желанию, чтобы сформировать новый массив. Метод: Application.Index (массив ,, количество столбцов), например:
В-четвертых, преобразование размеров массива
Транспонировать: транспонировать массив на листе для преобразования строк и столбцов. Эффект преобразования также может быть достигнут в VBA.
1) От одномерного к двухмерному.
2. Двумерный массив может быть преобразован в одномерный.
Пять, порядковый номер массива
Используйте функцию ubound, чтобы найти максимальный порядковый номер массива
Используйте функцию lbound, чтобы найти минимальный порядковый номер массива.
Найти число элементов, содержащихся в массиве
Примечание: при транспонировании только массив с 1 столбцом и N строками можно напрямую транспонировать в одномерный массив.
Вопросы. Я хочу соединить содержимое в a1: c1 с помощью «-», почему я дважды использую транспонирование в следующем коде?
Excel: объединить несколько строк с
Мой проект требует переформатирования большого набора данных с результатами лабораторных исследований. Каждый лабораторный тест теперь имеет идентификатор участника, по одной строке на тест. Мне нужно переформатировать данные так, чтобы у каждого участника была только одна строка и один столбец для каждого из 26 тестов.
Возможно ли это сделать в Excel 2010? Спасибо за любую помощь, которую вы можете оказать.
2 ответа 2
Люди часто делают следующее с электронными таблицами:
- выберите ваши данные и вставьте сводную таблицу
- добавить идентификаторы как метки строк
- добавить тесты в качестве заголовков столбцов
- добавьте числа в тело сводной области, используйте сумму или среднее, поскольку у вас есть только один внешний элемент строки в исходных днях запроса, и оба будут одинаковыми
Использование сводных таблиц было бы очень рискованным. У меня было несколько очень плохих результатов, когда они не возвращали правильные значения, неправильно вычисляли сумму значений и т.д.
Это будет мое предложение о том, как справиться с этой проблемой, и оно подойдет для любой версии Excel.
Важно создать уникальный ключ, чтобы можно было найти значение в наборе данных. Поместите столбец перед идентификатором, а затем введите формулу =B2&C2 в ячейку A2. После этого у вас будет идентификатор, подобный ID001TEST1.
В качестве следующего шага назовите диапазон данных. Выберите весь набор данных от A1 до Dx, щелкните в маленьком поле над столбцом A и введите » Data «. Это даст имя вашему диапазону. Вот как теперь будут выглядеть ваши данные:
Теперь создайте новый лист и введите что-то вроде этого в заголовки столбцов и ID участника
Затем создайте следующую формулу и вставьте ее в формулу B2
С помощью первого аргумента вы можете создать уникальный ключ, объединив ID участника в столбце A с заголовками столбцов в строке 1. Знаки доллара фиксируют столбец A и строку 1 для второй части, так что при копировании и вставке формулы вы получите уникальный ключ, который хотите найти. После вставки этой формулы в тело таблицы вы должны увидеть все значения на своих правильных местах.
Во-вторых, необходимо указать имя ранее созданного набора данных. Преимущество использования имени заключается в том, что оно не нарушает ссылки на ячейки при копировании и вставке.
Третий аргумент, 4, представляет собой строку значений, и именно из нее функция извлекает данные, соответствующие поисковому ключу.
Последний аргумент, 0, указывает функции поиска вернуть # N/A, если для данного ключа не может быть найдено значение.
Окончательный результат будет выглядеть следующим образом:
Помните, что для сортировки или поиска в базе данных плоского файла необходим уникальный ключ данных. Хитрость заключается в том, что, объединив две, три или одну точку данных, вы обычно можете создать уникальный ключ, если у вас его еще нет. В этом и заключается волшебство, все остальное становится возможным после форматирования результатов.