Я пытаюсь написать сценарий VBA для еженедельной работы по дому.Вот мои данные:

Я запускаю макрос, который очищает значения столбца C. Затем я должен найти первое вхождение каждого уникального значения в столбце A. КогдаЯ нахожу первое вхождение, я пишу в той же строке столбца C "= столбец B" только для этой строки.По сути, я пытаюсь сказать: «A4 - это первое вхождение уникального значения, поэтому C4 = B4».Я не могу сделать простую функцию IF () и перетащить ее вниз, потому что остальная часть столбца C должна оставаться действительно пустой (на нее ссылается функция IF (NOT (ISBLANK))).
I 'Я новичок в VBA и, к сожалению, записывать то, что я сделал, не отражало мои реальные намерения.Это был макрос, который не выглядит эффективным:
Sub Macro1()
'
' Macro1 Macro
'
Range("C8").Select
Application.Left = 3591.25
Application.Top = 268
Windows("Copy of OPS_schedule_6.xlsm").Activate
Application.Left = 3451.75
Application.Top = 163
Windows("Book1").Activate
Range("A1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$B$9").AutoFilter Field:=1, Criteria1:="Alpha"
Range("C1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=RC[-1]"
Range("C2").Select
ActiveSheet.Range("$A$1:$B$9").AutoFilter Field:=1, Criteria1:="Bravo"
Range("C4").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=RC[-1]"
Range("C5").Select
ActiveSheet.Range("$A$1:$B$9").AutoFilter Field:=1, Criteria1:="Charlie"
Range("C8").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=RC[-1]"
Range("C9").Select
End Sub