Создать файл с актуальной информацией - VBA

Узнай цену своей работы

Формулировка задачи:

Добрый вечер! Имеется excel файл, напечатанного ниже формата: Столбец "B" - наименование товара; Столбец "C" - seo товара; Столбец "D" - наименование товара; Столбец "E" - seo товара. Напишите пожалуйста макрос который: Поочередно возьмёт ячейку столбца "B" - это наименование товара, который необходимо найти в массиве столбца "D", после найденного совпадения заменить значение seo в соседней ячейке искомого столбца "B" (в столбце "C"), на то, которое записано напротив найденного наименования столбца "D" (в столбце "E"). К примеру, исходник: "B2" - Трактор 1 | "C2" - Трактор Старый | "D6" - Трактор 1 | "E6" Трактор Красный К примеру, необходимый результат: "B2" - Трактор 1 | "C2" - Трактор Красный | "D6" - Трактор 1 | "E6" Трактор Красный P.S. Поменялось содержание ячейки "C2". При условии, что значение не найдено, необходимо оставить старое значение в столбце "C2". Прикрепляю в файле во вложении, excel файл с поддержкой макросов в котором прописана логика с формулами, напишите пожалуйста макрос. У меня меняется файл исходник и количество заполненных строк. Имеет смысл хранить макрос в библиотеке.

Решение задачи: «Создать файл с актуальной информацией»

textual
Листинг программы
  1. Sub cc()
  2.     Dim A, B, i&, j&
  3.     With ActiveSheet
  4.         A = .Range("b1", .Range("c:c").End(xlDown))
  5.         B = .Range("d1", .Range("e:e").End(xlDown))
  6.         For i = 2 To UBound(A, 1)
  7.             For j = 2 To UBound(B, 1)
  8.                 If A(i, 1) = B(j, 1) Then A(i, 2) = B(j, 2): Exit For
  9.             Next j
  10.         Next i
  11.         .Range("b1", .Range("c:c").End(xlDown)) = A
  12.     End With
  13. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы