2014-06-26 2 views
-1

Извините, если заголовок вводит в заблуждение.Ввод номера в столбец B, а затем поиск номера в столбце A

Я работаю над файлом Excel, который немного сложнее.

В принципе мне нужно, чтобы он поместил номер в столбец B и попросил макрос найти тот же номер в столбце A, а затем скопировать все (включая этот номер) над ним.

Я попытался с помощью соответствующей кнопки, но я не могу показаться, чтобы сделать это автоматически найти номер, указанный в столбце B по отношению к колонке А.

Это код, который я пытался до сих пор:

Range("D1").Select 
Cells.Find(What:="12", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _ 
    xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _ 
    , SearchFormat:=False).Activate 
Range("A58").Select 
Range(Selection, Cells(1)).Select 
Selection.Copy 
+0

Два быстрых вещи: (1) Являются ли записи в столбце Уникальные? Или возможно, что в столбце A будет несколько записей, которые будут соответствовать значению, введенному в B? и (2) Можете ли вы показать нам некоторые фрагменты кода, который вы уже пробовали? –

+0

Извините, что долго ждать, была loooong неделя. Столбец A в значительной степени является шаблоном, все то же самое, за исключением номера. 'код' Range ("D1") Выберите Cells.Find (Что:. = "12", после того как: = ActiveCell, Lookin: = xlFormulas, LookAt: = _ xlPart, SearchOrder: = xlByRows, SearchDirection: = xlNext, MatchCase: = False _ , SearchFormat: = False) .Activate Range ("A58") Выберите Range (Выделение клеток (1).) Выберите Selection.Copy 'код' – Forbidden

+0

Что я. hoping for - это макрос, который позволяет пользователю вводить число, и он находит это число и копирует все выше этого числа. Я не могу понять, как позволить пользователю вводить число, а затем искать его – Forbidden

ответ

0

Хорошо, поэтому я понял это по-своему. Колонка A имеет рисунок, но изменение части это число примерно так:

tim 
car 
1 
tim 
car 
2 

и так далее. В столбце B я сделал формулу = IF (A3 = C1, "COPY", "") C1 будет иметь номер ввода от пользователя. Затем я сделал макросъемку «КОПИЯ» в столбце B, а затем смещал его влево и сделал копию целиком до верхней части столбца.

Это выглядело так:

Sub Copy_1() 

Application.ScreenUpdating = False 
Range("B:B").Select 
Selection.Find(What:="COPY", After:=ActiveCell, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True, SearchFormat:=False).Activate 
ActiveCell.Offset(0, -1).Activate 
Range(Selection, Selection.End(xlUp)).Select 
Selection.Copy 
Application.ScreenUpdating = True 

End Sub 
Смежные вопросы