Поскольку примечания, введенные на листе карты проекта, являются только временными, вам придется использовать VBA для этого. И это немного сложно, потому что вы хотите сохранить заметку на листе базы данных даже после того, как заметка на карточке проекта исчезнет.
Для этого вам понадобится столбец "Примечания" на листе "Карточка проекта", заполненный VLOOKUP(), и другой столбец, например "Новая заметка", где пользователь может ввести или изменить существующую заметку.
Вот пример кода, который поможет вам начать. Это всего лишь несколько строк кода, и я включил комментарии, чтобы помочь вам адаптировать его к вашей ситуации.
Эта подпрограмма отслеживает любые изменения в столбце «Новая заметка» на листе «Карточка проекта» и копирует измененную ячейку в правильную строку номера проекта на листе «База данных».
Private Sub Worksheet_Change(ByVal Target As Range)
'Setup variables
'KeyCells contains the cells that will trigger the action when changed.
Dim KeyCells As Range
Dim ProjectNum As Integer
Dim DBProjectCell As Range
Set KeyCells = Range("E2:E8") 'Change "E2:E8" to your Project Card column where user enters a New Note.
ProjectNum = Range("A2").Value 'Change "A2" to your Project Card cell containing the Project Number.
'Check to see if anything changed in the New Note column
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
'Don't delete an existing Note when the Target goes blank
If Target.Value <> "" Then
'Get the Database worksheet cell containing this project number
'Change "A11:A21 to the Database column containing the project numbers
Set DBProjectCell = Worksheets("Database").Range("A11:A21").Find(What:=ProjectNum)
'Copy the new Note to the Database sheet.
'Change "J" to the Database column where the Notes will go:
Worksheets("Database").Range("J" & DBProjectCell.Row).Value = Target.Value
End If
End If
End Sub
Надеюсь это поможет. Если вы новичок в VBA, следуйте инструкциям на этой странице справки, чтобы скопировать код Excel VBA в: Модуль рабочего листа.