Страницы: 1
RSS
Поиск и замена значения по двум соответствующим ячейкам
 
Коллеги, здравствуйте! Не любитель создавать темы, но часы безуспешного поиска по форумам прошли впустую..
И так, к сути:
Сделал таблицу с поиском соответствующего значения двум соседним ячейкам.. Всё бы супер, но суть таблицы в редактировании основной части (диапазон A2:C13)

Примерный алгоритм попробую объяснить по картинке:
1) Вводим Имя и Число в G4 и H4
2) Получаем соответстующее значение I4 из диапазона C:C
3) Вводим либо в том же I4 или вспомогательной ячейке J4 значение, чтобы поменялось значение также в диапазоне C:C (Своего рода условная взаимосвязь)
Собственно вопрос к вам, как шарящим, можно ли это как-то реализовать? И если да, то может кто-то сможет помочь?) может я вообще время в пустую трачу..
Изменено: vikttur - 22.06.2021 16:13:33
 
Цитата
Михаил Васильев написал:
к вам, как шарящим, можно ли это как-то реализовать?
к вам как к не шарящему: что реализовать?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Реализовать возможность сначала искать значения в левой части таблицы (диапазон A2:C13), потом менять их через вспомогательные ячейки, как я описал.
 
Цитата
Михаил Васильев написал:
как я описал
покажите цитату как вы описали, я перечитаю ее еще раз (ткните меня носом в ваше описание)
Изменено: Ігор Гончаренко - 21.06.2021 21:45:22
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
2) Получаем соответстующее значение I4 из диапазона C:C
3) Вводим либо в том же I4 или вспомогательной ячейке J4 значение, чтобы поменялось значение также в диапазоне C:C (Своего рода условная взаимосвязь)
Со вторым пунктом вроде понятно, вот к третьему у меня и вопрос.
Могу постараться подробнее описать
 
Макрос в модуль Лист1, при изменении ячейки J4 срабатывает и меняет значение
Код
Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Target, Range("J4")) Is Nothing Then
    Application.EnableEvents = False
Dim FoundImja As Range
Dim FAdr As String
  Set FoundImja = Columns(1).Find(Range("G4"), , xlValues, xlWhole)
       If Not FoundImja Is Nothing Then
           FAdr = FoundImja.Address
         Do
           If FoundImja.Offset(, 1) = Range("H4") Then
              FoundImja.Offset(, 2) = Range("J4")
              Exit Do
           End If
           Set FoundImja = Columns(1).FindNext(FoundImja)
         Loop While FoundImja.Address <> FAdr
       End If
  End If
    Application.EnableEvents = True
End Sub
 
Спасибо огромное, работает как часы!  :)  
Изменено: vikttur - 22.06.2021 16:13:18
Страницы: 1
Наверх