Удалить число из колонки "A" в случае если число равно числу в этой же строке в колонке "B" *Осложняется тем что: 1) В колонке "B" число уже в адекватном виде(без пробела, цифры идут в подряд) а в колонке "А" число с пробелом внутри самого числа 2) В колонке "A" также число может быть указанно слитно к основной информации колонке 3) В основной информации колонки могут быть другие числа в том числе на конце строки
Пример данных:
Монако и Франция: еда, путешествия, ПМЖ, кредиты, яхты, недвижимость 1 448 781 1448781 Мир путешествий и активного отдыха24 781 621 781621 Туризм Путешествия Отдых Визы Отели Авиабилеты Travel Tourism Hotels Visas 709 414 709414 Красота и здоровье 626 141 626141 Красота и здоровье 249 469 249469 Мое здоровье 241 510 241510 МЕДИЦИНА ПРОРОКА I Medicine Of The Prophet (صلى الله عليه و سلم) 186 179 186179 Туризм Грузии 138 653 138653 Экзотические путешествия 125 564 125564 ЭТА УДИВИТЕЛЬНАЯ ПЛАНЕТА. ПУТЕШЕСТВИЯ ПО МИРУ. 125 303 125303 Вокруг света | туризм 113 205 113205
бился над этим очень долго - не получается - не хватает знаний и опыта.. Заранее Благодарю за помощь)
добрый день,вариант макроса,кнопки test и повтор или используйте макрос test1,если нужны пробелы( второй приложенный файл)
Код
Sub test1()
Dim z, i&, t$: z = Range("A2:B" & Range("A" & Rows.Count).End(xlUp).Row).Value
With CreateObject("VBScript.RegExp"):
For i = 1 To UBound(z) : .Pattern = "(\d)(\s)": .Global = True
If .test(z(i, 1)) Then z(i, 1) = .Replace(z(i, 1), "$1")
.Pattern = z(i, 2)
If .test(z(i, 1)) Then z(i, 1) = .Replace(z(i, 1), "")
Next
End With
Range("A2").Resize(UBound(z), 2).Value = z
End Sub
Код
Sub test()
Dim z, i&, t$: z = Range("A2:B" & Range("A" & Rows.Count).End(xlUp).Row).Value
With CreateObject("VBScript.RegExp"):
For i = UBound(z) To 1 Step -1: .Pattern = " ": .Global = True
If .test(z(i, 1)) Then z(i, 1) = .Replace(z(i, 1), "")
.Pattern = z(i, 2)
If .test(z(i, 1)) Then z(i, 1) = .Replace(z(i, 1), "")
Next
End With
Range("A2").Resize(UBound(z), 2).Value = z
End Sub