2016-12-05 12 views
0

как перемещать ячейки, если критерии удовлетворяются, следуя также ячейкам, расположенным рядом с ним, используя цикл? сказать критерий является (Len = 43) < - Acct #VBA для копирования и вставки нескольких ячеек Если встречаются критерии

Column# |Date  | Country | Acct# | Fruit  | Price | Qty 
1  |11/02/16 | India  | 5002xxx | apple  | $9  | 5 
2  |12/02/16 | 5001xxx | Orange | $8  | 10  | 

Мне нужно, чтобы переместить столбец 2 учетного # для его правой колонки следующих столбцов рядом с ним. как использовать его с петлей и len? какой лучший подход? Спасибо и ура!

Update

Sub Findandcut2() 
    Dim row As Long 

    For row = 2 To 1000 

     If Range("M" & row).Value Like "*5027.1227000.0000.0000.000.0000.0000.0000*" Then 

      Range("N" & row).Value = Range("M" & row).Value 
      Range("M" & row).Value = "" 
     End If 
    Next 

End Sub 

так в колонке М, где Acct # сохраняется и следующие клетки прямо рядом с ним я должен компенсировать, но с кодом выше у меня просто вычеркивания значение - столбец N, а ячейки рядом с ним не перемещаются.

+1

переполнение стека не код для меня сайт. Если у вас есть код, который не работает, мы поможем справиться с конкретными проблемами. Пожалуйста, разместите свой текущий код в исходном сообщении и сообщите нам, что он делает, это неправильно. –

+1

oh yep. Прости. выше мой код, – Anne

ответ

0

вы можете изменить свой код вроде (с комментариями) следующий:

Sub Findandcut2() 
    Dim cell As Range 

    For Each cell In Range("M2", Cells(Rows.Count, "M").End(xlUp)) '<--| loop through all column "M" cell from row 2 down to last not empty row 
     If cell.Value Like "*5027.1227000.0000.0000.000.0000.0000.0000*" Then 
      With Range(cell, cell.End(xlToRight)) '<--| reference the range from current column M cell rightwards till the one preceeding first not empty one 
       .Offset(, 1).Value = .Value '<--| copy values 
      End With 
      cell.ClearContents '<--| need to clear the cell you started offset values from? 
     End If 

    Next cell 
End Sub 
+0

работает как шарм! Спасибо!!! – Anne

+0

приветствуются – user3598756