Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Подтягивание данных из другого файла
 
Здравствуйте!

Ранее с вашей помощью - выполнила подтягивание данных в ячейку из исходного файла, но это неудобно оказалось - данных много, поэтому требуется сделать подтягивание из другого файла = каким образом изменить код подскажите пожалуйста.
Код
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("J3:J500")) Is Nothing Then
Dim MV As Range
Dim L As Variant
L = Target
Set MV = Worksheets("маты").Columns(1).Find(L, , , xlWhole)
    If Not MV Is Nothing Then
    k = MV.Value
    Debug.Print
    Target.Offset(0, -7) = MV.Offset(0, 1) & " " & MV.Offset(0, 2) & " " & MV.Offset(0, 3)
    Target.Offset(0, -6) = MV.Offset(0, 4)
    
  End If
End If
End Sub
 
Цитата
каким образом изменить код
Ну у вас поиск значения был в листе Worksheets("маты").Columns(1)
Замените на другую книгу (Новый файл, лист ,столбец такой-то)
Обе книги д.б. открыты
 
Добрый день!
Kuzmich, заменила - выдает ошибку - что не так?
Код
Set MV = Workbook("матывсе").Sheet(1).Columns(1).Find(L, , , xlWhole)

 
Цитата
что не так?
Код
Set MV = Workbooks("матывсе.xlsx").WorkSheets(1)
 
Kuzmich, здравствуйте
выдает ошибку на
Код
 Target.Offset(0, -7) = MV.Offset(0, 1) & " " & MV.Offset(0, 2) & " " & MV.Offset(0, 3)
 
Добрый день!
Товарищи! может кто-нибудь помочь? ошибка в коде...
 
Вы бы в файле показали...
 
vikttur,
Доброе утро!
прикладываю
 
Цитата
Лена11: выдает ошибку на
перед строкой, на которой выскакивает ошибка напишите
MsgBox Target.Address & " — " & MV.Address и скажите, что выдаст окно — т.к. Target у вас не может быть нигде, кроме как в 10 столбце, то Offset(,-7) не подведёт, а значит дело в MV

P.S.: зачем Debug.Print в 11 строке, если вы в него ничего не пишете?…
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MV As Range

If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("J3:J500")) Is Nothing Then Exit Sub
Set MV = Worksheets("маты").Columns(1).Find(Target.Value2, , , xlWhole)
If MV Is Nothing Then Exit Sub

msgbox mv.address

k = MV.Value
Target.Offset(0, -7) = MV.Offset(0, 1) & " " & MV.Offset(0, 2) & " " & MV.Offset(0, 3)
Target.Offset(0, -6) = MV.Offset(0, 4)
End Sub
Изменено: Jack Famous - 3 Июл 2020 10:27:43
Реквизиты для благодарностей — в профиле
 
В этой строке надо заменить
Код
Set MV = Worksheets("маты").Columns(1).Find(Target.Value2, , , xlWhole)

на
Код
Set MV = Worksheets("новый файл.xlsx").Worksheets(1).Columns(1).Find(Target.Value2, , , xlWhole)
Изменено: Kuzmich - 3 Июл 2020 11:21:04
Страницы: 1
Читают тему (гостей: 4)
Наверх