Перенести значение из одного листа в другой с условием - VBA

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

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

Приветствую! Возникла нужда в сортировке данных. Дело такое. Мне нужно чтобы значения ячеек из столбца А листа 2 записывались через запятую в ячейки столбца А листа 1 только там, где значение ячейки столбца В листа 1 СОДЕРЖИТСЯ в значении ячейки столбца В листа 2. Вроде правильно написал)

Решение задачи: «Перенести значение из одного листа в другой с условием»

textual
Листинг программы
  1. Function MergeIf(nRange As Range, sRange As Range, tRange As Range, Delimiter As String) As String
  2.     If nRange = Empty Then Exit Function
  3.     Dim Arr(), x(), y()
  4.     x = sRange.Value: y = tRange.Value
  5.     If UBound(x) <> UBound(y) Then Exit Function
  6.     For i = 1 To UBound(x)
  7.         If InStr(x(i, 1), nRange.Value) Then
  8.             ReDim Preserve Arr(1 To 1, 0 To n)
  9.             Arr(1, n) = y(i, 1): n = n + 1
  10.         End If
  11.     Next i
  12.     If n = Empty Then Exit Function
  13.     MergeIf = Join(Application.Transpose(Application.Transpose(Arr)), Delimiter)
  14. End Function

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


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

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

8   голосов , оценка 4.375 из 5

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

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

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