Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/34: Рейтинг темы: голосов - 34, средняя оценка - 4.65
0 / 0 / 0
Регистрация: 19.12.2015
Сообщений: 3

Перенос данных при совпадении части текста ячеек

04.03.2016, 00:17. Показов 6944. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята, подскажите пожалуйста можно-ли средствами VBA провести следующую операцию. В таблице на листе 1 в первом столбце указана марка бетона нужно найти соответствующую марку во второй таблице в столбце 2 и перенести значения этой строки нат первый лист. Правда есть загвоздка: Марка бетона сравнивается не целиком а по первым пяти символам. Например В25П4 остальные цифры не важны. Т.е данные копировать при нахождении первого совпадения.Еще одна сложность: в названии бетона второго листа вставлены данные в скобках, которые мешают сравнению. Например В25(М350)П4. Можно ли их как нибудь убрать, потом провести сравнение и перенос данных на лист один, а затем вернуть оригинальное название.Для форума.xls
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.03.2016, 00:17
Ответы с готовыми решениями:

Перенос части данных из множества ячеек одного столбца в другой
Доброго времени суток всем! Есть прайс для магазина. В нем зачем то артикул перенесли в название товара. Нужно первую цифру (артикул) во...

Сложение ячеек в столбце при совпадении ячеек в двух соседних столбцах
Добрый вечер!Прошу помощи.Есть длинная таблица excel с тремя столбцами. Необходимо сложить данные в третьем столбце, если совпадают данные...

Объединение ячеек одного столбца при совпадении ячеек в другом
Здравствуйте, В таблице необходимо объединить все телефоны в одну ячейку, если совпадение по сайту или по названию+адрес Стороку с...

6
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
04.03.2016, 00:31
Макросом без проблем!
Уверен, что формулисты могут предложить и чисто формульный вариант.
Если до завтрашнего вечера никто не поможет - напишу макрос. Сегодня уже пас

Добавлено через 46 секунд
Или горит сегодня?
0
0 / 0 / 0
Регистрация: 19.12.2015
Сообщений: 3
04.03.2016, 00:40  [ТС]
Спасибо, не горит. До вчера подожду. А на счет формул - я пробовал ВПР приспособить. Не получилось. (
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
04.03.2016, 01:12
Stich30, такая формула работает кроме 7 строки
Code
1
=ВПР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ЛЕВСИМВ(A4;10)&"(*)"&ПСТР(A4;11;2)&"*");"B";"В");'2'!B:B;1;)
... потому что нет подходящего значения на 2м листе.
0
0 / 0 / 0
Регистрация: 19.12.2015
Сообщений: 3
04.03.2016, 09:41  [ТС]
Спасибо. Формула работает, только не так как нужно. Просто я видимо коряво объяснил. Мне нужно в столбец пц500/1м3 первой таблицы (поле помечено желтым)вставить формулу, которая сравнит название бетона из первого столбца первой таблицы с названием бетона во втором столбце второй таблицы ( лист два) и в случае совпадения первых букв "Бетон В25П4" подставит значение из столбца пц500 второй таблицы. А потом я эту формулу хочу применить к остальным столбцам ( песок, щебень и т. Д.).

Добавлено через 3 минуты
Поэтому мне кажется макрос должен быть проще. Сравнил совпадение названий в столбцах. Есть совпадение - копируй всю строку в первую таблицу. Только не знаю как(.
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
04.03.2016, 10:29
Stich30, удобно эту же строку поиска использовать в ПОИСКПОЗ в отдельном (скрытом) столбце, а потом значение этого столбца использовать в ИНДЕКС.
Номера столбцов для ИНДЕКС можно было бы находить тоже с помощью ПОИСКПОЗ, но у Вас не совпадают названия столбцов:
ПЦ500 д0(кг) - ПЦ500 д0
ЩЕБЕНЬ (кг.) - Щебень
и т.д. Щебень 5-10 вообще отсутствует.
В столбцах K,M,O,Q,S я оставил формулу с автоматическим номером столбца. Если наведете порядок с названием столбцов, эту формулу можно скопировать во все желтые ячейки.
Выбор марки бетона на первом листе лучше сделать из выпадающего списка, формируемого по ст. В на втором листе, чтобы избежать ошибок - сейчас при поиске приходится, как видите, удалять лишние пробелы и заменять латинскую B на русскую В (или наоборот - уже не помню). Формула поиска существенно упростится.

При переходе на VBA проблемы с несоответствием названий останутся.
Вложения
Тип файла: xls Для форума (6).xls (73.0 Кб, 36 просмотров)
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
04.03.2016, 11:15
При переходе на VBA проблемы останутся.
Ну, естественно, что если нет соответствия, то проблемы останутся.
И, в принципе, нет большой разницы макросом делать или UDF или стандартными формулами.
Просто иногда написать UDF бывает проще чем собрать нужный функционал из стандартных функций.
А макросы хороши при больших объёмах данных когда обилие формул начинает вызывать тормоза.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.03.2016, 11:15
Помогаю со студенческими работами здесь

Замена ячеек при совпадении других (Excel)
Доброго времени суток. Возникла такая проблема. Есть две таблицы с большим колличеством данных. Объеденил их в один файл, получилось...

Перенос части данных при определенном условии
Добрый день! Ситуация следующая: в одну таблицу вносятся все данные. Необходимо в другу таблицу дублировать вносимые данные при...

Перенос данных с одного листа на другой при заполнении ячеек
Здравствуйте. Данная тема уже обсуждалась, но у меня есть свои нюансы. Есть файл для ежемесячного расчета показателей, но нужно его...

Перенос данных с одного листа на другой при заполнении ячеек
Здравствуйте! я плохо разбираюсь в MS Office Exel и поэтому мне очень нужна ваша помощь. Я рассылаю бланк заказа товара, где...

При совпадении 4 условий значения ячеек суммировать из листа №1 в лист №2
В общем расклад такой: Нужно чтоб при совпадении четырех условий значения ячеек суммировались из листа №1 "выгрузка" в ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru