Этот макрос удаляет выбраннные данные из выпадающего списка ячейки C3 листа 1, источник которого ссылается на столбец A и прописывает в столбец B листа 2.
У меня в ячейке C3 формула, которая ссылается на данные другой книги, мне нужно, чтобы при обновлении формулы ячейки C3, значения которые в ней появляются прописывались в столбец A листа 2?
У меня в ячейке C3 формула, которая ссылается на данные другой книги, мне нужно, чтобы при обновлении формулы ячейки C3, значения которые в ней появляются прописывались в столбец A листа 2?
Код |
---|
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count = 1 Then If Not Intersect(Target, Range("C3")) Is Nothing Then If Target <> Empty Then Dim lr As Long, cell As Range, sh As Worksheet Dim ValidFormula As String ValidFormula = "=OFFSET(Лист2!$A$2:$A$1048576,0,0,COUNTA(Лист2!$A$2:$A$1048576))" Set sh = Worksheets("Лист2") Set cell = sh.Cells.Find(Target) Application.EnableEvents = False cell.Delete Shift:=xlUp lr = sh.Cells(Rows.Count, 2).End(xlUp).Row + 1 sh.Cells(lr, 2).Value = Target Application.EnableEvents = True With Range("C3").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=ValidFormula .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End If End If End If End Sub |