Подскажите пожалуйста как сделать вывод информации в столбце "N" и "O" c помощью макроса. Брать данные из таблицы хочу из диспетчера имен. Уникальное значение искомое в столбце "В"
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 r_ = Range("A" & Cells.Rows.Count).End(xlUp).Row If Not Intersect(Target, Range("B2:B" & r_)) Is Nothing Then For i = 2 To r_ If Range("A" & i) = Target.Offset(, -1) Then Range("B" & i) = Target Next End If Application.EnableEvents = 1 End Sub
[/vba]
Здравствуйте.
Подскажите пожалуйста как сделать вывод информации в столбце "N" и "O" c помощью макроса. Брать данные из таблицы хочу из диспетчера имен. Уникальное значение искомое в столбце "В"
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 r_ = Range("A" & Cells.Rows.Count).End(xlUp).Row If Not Intersect(Target, Range("B2:B" & r_)) Is Nothing Then For i = 2 To r_ If Range("A" & i) = Target.Offset(, -1) Then Range("B" & i) = Target Next End If Application.EnableEvents = 1 End Sub
Добрый день. Как-то по коду не очень понятно, чего нужно может так? [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 If Not Intersect(Target, Me.[B:B], Me.UsedRange) Is Nothing Then Target.Offset(, 12) = Application.VLookup(Target, [заказчики], 2, 0) End If Application.EnableEvents = 1 End Sub
[/vba]
Добрый день. Как-то по коду не очень понятно, чего нужно может так? [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 If Not Intersect(Target, Me.[B:B], Me.UsedRange) Is Nothing Then Target.Offset(, 12) = Application.VLookup(Target, [заказчики], 2, 0) End If Application.EnableEvents = 1 End Sub
krosav4ig, Код был из похожей темы. Но там не совсем то что мне надо было. Это на соседнем форуме Борода кому-то написал код в 2010 году. )
krosav4ig, Код был из похожей темы. Но там не совсем то что мне надо было. Это на соседнем форуме Борода кому-то написал код в 2010 году. )koyaanisqatsi
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 If Not Intersect(Target, Me.[B:B], Me.UsedRange) Is Nothing Then On Error Resume Next z_ = WorksheetFunction.VLookup(Target, [заказчики], 2, 0) Target.Offset(, 12) = z_ End If Application.EnableEvents = 1 End Sub
[/vba]
Чуть-чуть дописать нужно [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = 0 If Not Intersect(Target, Me.[B:B], Me.UsedRange) Is Nothing Then On Error Resume Next z_ = WorksheetFunction.VLookup(Target, [заказчики], 2, 0) Target.Offset(, 12) = z_ End If Application.EnableEvents = 1 End Sub
Private Sub Worksheet_Change(ByVal Target As Range) With Application .EnableEvents = 0 If Not Intersect(Target, Me.[B:B], Me.UsedRange) Is Nothing Then Target.Offset(, 12) = .IfError(.VLookup(Target, [заказчики], 2, 0), "") End If .EnableEvents = 1 End With End Sub
[/vba]
можно так еще [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) With Application .EnableEvents = 0 If Not Intersect(Target, Me.[B:B], Me.UsedRange) Is Nothing Then Target.Offset(, 12) = .IfError(.VLookup(Target, [заказчики], 2, 0), "") End If .EnableEvents = 1 End With End Sub