Страницы: 1
RSS
Выборка в ячейки по не совсем одинаковым параметрам
 
Добрый день, помогите с задачей, нужно чтоб в ячейку добавлялось значение которое соответствует критерию в соседнем столбике. Смог бы сделать это с помощью ВПР, но критерии не совсем одинаково написаны, где то пробел лишний, где то ковычка, где-то вместе написано. Можно ли это как то сделать? Спасибо!
 
Если так рассуждать нужно убрать все кроме букв (кавычки тире пробелы и тд) и потом сравнивать. По другому никак
Изменено: skais675 - 29.04.2017 14:48:56
 
А если скопировать первый столбец во вторую таблицу, а уже потом ВПР?
Согласие есть продукт при полном непротивлении сторон
 
Sanja они ж там в разброс идут, о чем это Вы.
 
Цитата
skais675 написал: о чем это Вы
О том, что-бы заменить первый столбец второй таблицы первым столбцом первой таблицы
Согласие есть продукт при полном непротивлении сторон
 
Sanja они ж там в разброс идут (строки), так просто не заменишь.
 
Что Вам этот разброс дался? Я так понимаю нужно перенести Кон.остаток с первого листа в столбец Нач.остаток второго листа. Замените названия во втором листе названиями из первого листа, и тяните значения ВПР. Какая разница в каком они порядке будут? Хотя это лишь мое предложение.
Согласие есть продукт при полном непротивлении сторон
 
ЗАменить названия не получится, во второй таблице могут быть наименования которых нет в первой теблице
 
А, если привести к единому виду, исключив кавычки, <, > и пробелы
Макрос запускать при активном листе 2
Код
Sub Perenos()
Dim txt As String
Dim FoundFirma As Range
Dim i As Integer
Dim j As Integer
With Worksheets("Лист1")
      txt = "<> """
  For i = 3 To Cells(Rows.Count, "A").End(xlUp).Row
    For j = 1 To Len(Cells(i, "A"))
        Cells(i, "A") = Replace(Cells(i, "A"), Mid(txt, j, 1), "")
    Next
  Next
  For i = 4 To .Cells(.Rows.Count, "A").End(xlUp).Row
    For j = 1 To Len(Cells(i, "A"))
        .Cells(i, "A") = Replace(.Cells(i, "A"), Mid(txt, j, 1), "")
    Next
  Next
  For i = 3 To Cells(Rows.Count, "A").End(xlUp).Row
      Set FoundFirma = .Columns(1).Find(Cells(i, "A"), , xlValues)
      If Not FoundFirma Is Nothing Then
        .Range("B" & FoundFirma.Row & ":E" & FoundFirma.Row).Copy Cells(i, "B")
      End If
  Next
End With
End Sub
 
поищите на форуме "мягкий впр"
например http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=85907&TITLE_SEO=85907-myagkiy-vpr-primernyy-poisk-znacheniya-iz-spiska
Страницы: 1
Наверх