Excel сцепить ячейки с сохранением форматирования
Ребята, подскажите пожалуйста, можно ли, не прибегая к макросу, сцепить ячейки следующим образом:
в таблице 2 решающих столбца:
в первом - артикула (значения повторяются),
во втором - размеры.
Я создаю таблицу, сделав выборку только уникальных значений по столбцу 1 (артикула). И в столбец 2 нужно подтянуть значения из первой таблицы, сцепив между собой значения всех ячеек, соответствующих этому артикулу.
артикул размер
123_____2
123_____4
124_____2
124_____3
124_____5
В итоге надо получить таблицу вида:
артикул размер
123_____2 4
124_____2 3 5
Возможно ли реализовать такое с помощью формул?
Если нет - то подскажите - как использовать макросы?
Я с ними не дружна, однако нашла такой вот текст:
Однако я не умею ни вставлять в макросы (к стыду своему - даже не нашла, где открыть редактор в 2010 экселе - только запуск самого макроса), ни запускать их корректно по отношению к нужному диапазону.
Ребят, буду благодарна любому совету! Пожалуйста, поделитесь своими соображениями=) __________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
Сцепить ячейки по условию
Доброго времени суток, Находил похожее, но у меня совсем другое условие.
Сцепить ячейки по условию с разделителем
Здравствуйте. Очень нужна помощь в написании макроса, который будет сцеплять ячейки (вставляя.
Сцепить ячейки с сохранением формата текста
Добрый вечер. В первой ячейке текст с подчёркнутыми словами. Во второй формула. Как сцепить.
Сложить ячейки в столбце отвечающие определенному цвету с учетом определенной иерархии
Друзья помогите пожалуйста в решении следующей задачи: 1. есть повторяющаяся цветовая иерархия;.
Где создавать новую таблицу - на другом листе? или в процессе формирования удалять дублирующиеся строки?
В образце: 123_____2 4
цифра 4 где должна стоять в соседней ячейке или в той же, что и "2", но через какой-нибуть разделитель?
Diskretor,
1. Где - не важно. Но удобнее на новом листе.
Вообще - я уже поместила на новый лист эту таблицу (без значений размеров) отфильтрованную по уникальным строкам. и вот хорошо бы в пустой столбец "Размер" новой (отфильтрованной по уникальности) таблицы поместить сцепленные значения из первой - неотфильтрованной
2. В той же ячейке через любой разделитель (пробел - оптимально). Дело в том, что для каждого артикула идет разное количество размеров - от 1ого до 20 - и плодить такое количество столбцов очень не комфортно!
Данные будут браться с листа № 1, начиная с ячейки A2 и записываться на лист № 2.
Открываем Excel. Нажимаем левый ALT+F8 набираем любое слово, нажимаем .
В появившемся окошке выделяем все, удаляем. В это же окошко копируем приведенный выше код (без цифровой нумерации).
Закрываем окно редактора, сохраняемся.
Для запуска макроса нажмите левый Alt+F8, .
Также для запуска можете создать кнопку и повесить ее прямо на лист, либо на панель инструментов.
Также может возникнуть проблема, если у Вас отключены макросы с целью безопасности.
Главное Меню (крайнее левое на ленте)-Параметры Excel-Центр управления безопасностью-Параметры центра управления безопасностью-Параметры макросов->уровень безопасности "Низкий" (офис 2007).
Стоит добавить, что перед выполнением макроса фильтрации необходимо заранее отсортировать колонку "А" (Данные -> Сортировка).
Если же это недопустимо, можно воспользоваться кодом на основе словаря:
В общем, мы применяем функцию СЦЕПИТЬ для объединения ячеек из одного листа. Но иногда вам может потребоваться объединить ячейки из разных листов в Excel, как это легко решить? В этой статье показаны два метода, которые помогут вам сделать это легко.
Объедините ячейки из разных листов с помощью формулы
Обычно мы можем применить функцию СЦЕПИТЬ и указать ячейки из разных листов одну за другой, чтобы объединить их в Excel.
Выберите пустую ячейку, в которую вы поместите результат конкатенации, и введите формулу = CONCATENATE (Чай! A1, "", Кофе! A1, "", 'Безалкогольный напиток'! A1, "", Молоко! A1, "", Вода! A1) (A1 - это ячейка, содержимое которой вы объедините, Чай / Кофе / Безалкогольные напитки / Молоко / Вода - это имена листов, содержащие конкретную ячейку, которую вам нужно объединить) в нее и нажмите Enter ключ.
И тогда вы увидите, что содержимое указанных ячеек с разных листов объединено в одну ячейку. Смотрите скриншот:
Объедините ячейки из разных листов с помощью Kutools for Excel
Если существует множество листов, ячейки которых необходимо объединить в одну, приведенная выше формула может быть довольно утомительной. Здесь мы рекомендуем Kutools for Excel's Динамически обращаться к рабочим листам Утилита для упрощения работы с конкатенацией в Excel.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Бесплатная пробная версия сейчас!
1. Создайте новый лист в Excel, и на новом листе выберите ячейку с тем же адресом ячейки, что и те ячейки, которые вы объедините из других листов, говорит Ячейка A1, и нажмите Kutools > Еще > Динамически обращаться к рабочим листам. Смотрите скриншот:
2. В открывшемся диалоговом окне Fill Worksheets References,
(1) Выберите Заполнить горизонтально ячейку за ячейкой из Заполнить заказ раскрывающийся список;
(2) Укажите рабочие листы, ячейки которых вы объедините в Список рабочих листов раздел
(3) Щелкните значок Диапазон заполнения и закройте диалоговое окно "Заполнить ссылки на листы". Смотрите скриншот:
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
И теперь все содержимое ячейки A1 указанных листов извлекается и перечисляется в новом листе.
3. Выберите пустую ячейку, в которую вы поместите результат конкатенации, и введите формулу = СЦЕПИТЬ (A1: E1 & "") (A1: E1 - это диапазон с содержимым ячеек, извлеченным из других листов), выделите в нем A1: E1 & "" в формуле и нажмите F9 key, затем удалите фигурные скобки в формуле, наконец, нажмите Enter ключ. Смотрите скриншот:
И тогда вы увидите, что все ячейки из указанных листов сразу объединены в одну ячейку.
Копирование с сохранением форматирования
Есть код, With GetObject("c:\temp\mydoc.docx") 'путь к файлу myVar = .Range.Text 'текст файла.
Объединение столбцов в Excel по порядку с сохранением форматирования ячеек
Здравствуйте! Данный код объединяет несколько столбцов с данными 1 2 3 1 2 3 2 3 .
Копирование данных с сохранением формата исходных ячеек
Доброго времени суток. Совсем не разбираюсь в написании макросов, пользуюсь похожими. .
Вставка в таблицу строк с сохранением форматирования
Доброе время суток. Подскажите пожалуйста как при помощи макроса возможно вставить в таблицу.
Ответте только на один вопрос как мне через связь передать цвет ячейки!?
(Я думаю при просмотре вы увидите Столбец индикатор так вот из него мне нужно передавать цвета в главную)
Не могу скинуть файл ограничение по одьему. Можно или засунуть файл в архив. Либо выхватить из файла фрагмент, отражающий суть, так чтобы утрированный пример отражал проблему. В крайнем случае положите на файлообменник и дайте ссылку. Через связь думаю цвет вы не передадите. Напишите макрос, который будет смотреть цвет на нужном листе и окрашивать ячейку на общем. Цвет можно передать копированием ячейки. Но если нужно именно через связь, тогда VBA вам в помощь. Я и прошу помоши в ВБА.Я не понимаю как передать.
ЕСть способ передать цвет не открывая файлы которые через связь контактируют и хранятся в другом месте??
Свыше 30 МБ в zip, мой трафик на работе не позволит, извините. Что до передачи цвета по связям без открытия файлов - это невозможно (на мой взгляд), а макрос работает только с открытым файлом.
Моя идея для макроса в общих чертах: в сводном файле перечислить коллекцию внешних связей в цикле; на каждом шаге открывать файл по связи, затем находить с водной диапазон ссылок на этот файл и по ссылкам получать ячейку (src.Cells(i,j)), на которую идет ссылка и из этой ячейки брать значение цвета заливки (src.Cells(i,j).Interior.ColorIndex) и подставлять эти значения в соотв. ячейку сводной таблицы. Как-то так.
Но если подходить так, то по ходу надо попросту избавляться от внешних ссылок при помощи списка файлов и алгоритма в макросе делать периодическое копирование значений с учетом форматирования (цвета заливки ячеек).
Используйте функцию СЦЕПИТЬ, относящуюся к текстовым функциям, для объединения двух или нескольких текстовых строк в одну.
Важно: В Excel 2016, Excel Mobile и Excel в Интернете эта функция была заменена функцией СКАЙТ. Функция СЦЕПИТЬ пока еще доступна для обратной совместимости, однако рекомендуем использовать вместо нее функцию СЦЕП. В последующих версиях Excel функция СЦЕПИТЬ может быть недоступна.
Синтаксис: СЦЕПИТЬ(текст1;[текст2];…)
Ниже приведены примеры.
=СЦЕПИТЬ("Популяция рек для ";A2;" ";A3;" составляет ";A4;" на километр.")
Имя аргумента
текст1 (обязательный)
Первый элемент для объединения. Это может быть текстовое значение, число или ссылка на ячейку.
текст2. (необязательные)
Дополнительные текстовые элементы для объединения. Можно указать до 255 элементов и до 8 192 символов.
Примеры
Чтобы использовать эти примеры в Excel, скопируйте данные из приведенной ниже таблицы и вставьте их на новый лист в ячейку A1.
=СЦЕПИТЬ("Популяция рек для ";A2;" ";A3;" составляет ";A4;" на километр.")
Создает предложение, объединяя данные в столбце А с остальным текстом. Результат: "Популяция рек для вида речная форель составляет 32 на километр".
Объединяет строку в ячейке В2, пробел и значение в ячейке С2. Результат: "Виталий Токарев".
Объединяет текст в ячейке C2, строку, состоящую из запятой и пробела, и значение в ячейке B2. Результат: "Виталий Токарев".
Объединяет строку в ячейке B3, строку, состоящую из пробела, амперсанда и еще одного пробела, и значение в ячейке C3. Результат: Fourth & Pine.
Объединяет те же элементы, что и в предыдущем примере, но с помощью оператора & (амперсанд) вместо функции СЦЕПИТЬ. Результат: Fourth & Pine.
Распространенные неполадки
Кавычки отображаются в строке результата.
Используйте точку с запятой для разделения текстовых элементов. Например: Excel отобразит результат функции =СЦЕПИТЬ ("Привет, ""мир!") как "Привет,"мир!" с лишней кавычкой, так как пропущена точка с запятой между текстовыми аргументами.
Числа не нужно заключать в кавычки.
Слова расположены впритык друг к другу.
Если не поместить пробелы между текстовыми элементами, в строке результата они будут отображаться слитно. Добавьте пробелы в формулу с функцией СЦЕПИТЬ. Это можно сделать двумя способами.
Добавьте двойные кавычки с пробелом между ними (" "). Например: =СЦЕПИТЬ("Привет,"; " "; "мир!").
Добавьте пробел после текстового аргумента. Например: =СЦЕПИТЬ("Привет, "; "мир!"). К строке "Привет," добавлен пробел.
Рекомендации
Необходимые действия
Вместо функции СЦЕПИТЬ используйте знак & (амперсанд).
С помощью оператора & можно объединять текстовые элементы, не прибегая к функции.
Например, =A1 & B1 возвращает то же значение, что и =С CONCATENATE(A1;B1). Во многих случаях воспользоваться оператором амперсанда проще и быстрее, чем создавать строки с помощью функции СЦЕПИТЬ.
Для объединения и форматирования строк используйте функцию ТЕКСТ.
Функция ТЕКСТ преобразует числовое значение в текст и объединяет числа с текстом или символами.
Предположим, что ячейка A1 содержит число 23,5. Чтобы отформатировать число как сумму в рублях, можно использовать следующую формулу:
Дополнительные сведения
Для объединения и форматирования строк используйте функцию ТЕКСТ.
Ознакомьтесь с дополнительными сведениями об использовании операторов вычислений.
Читайте также: