Я пытаюсь создать макрос с 2 полями ввода, через первое поле ввода пользователь выбирает диапазон, в котором он записан в каждой отдельной ячейке C или D (кредит или дебет)
Через второй ввод пользователь выбирает диапазон, в котором он записан в каждой отдельной ячейке соответствующее количество.
Что мне делать, это следующее:
если соответствующая ячейка в диапазоне Credit / Debit стоит «D», соответствующая ячейка (я имею в виду сумму, соответствующую этому дебету) остается положительной, в противном случае она изменяется на отрицательную.
Например, если пользователь выбирает диапазон C / D в столбце J, а затем пользователь выбирает через 2-е поле ввода всю соответствующую сумму в столбце B, я хотел бы, чтобы, если J1 = "D", чтобы вернуть положительное значение в B1, иначе вернуть отрицательное значение в B1 и так далее для всех остальных строк ...
Я пытаюсь выполнить свой макрос, но он не работает должным образом. Я получаю сообщение об ошибке #NAME?
...
Пожалуйста, найдите ниже 2 скриншота (до и после выполнения макроса), а также код VBA
Если бы кто-то мог мне помочь, это было бы супер.
Sub ReturncorrectsignofamountaccordingtoDorC()
Dim c As Range
Dim WorkRng2 As Range
Dim WorkRng As Range
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Please select the range D/C", xTitleId, WorkRng.Address, Type:=8)
Set WorkRng2 = Application.Selection
Set WorkRng2 = Application.InputBox("Please select the range of amounts", xTitleId, WorkRng.Address, Type:=8)
For Each c In WorkRng2
c.FormulaR1C1 = _
"=IF(c.WorkRng.value=""D"",c.WorkRng2.value= c.WorkRng2.value, c.WorkRng2.value= -c.WorkRng2.value)"
Next c
End Sub
![enter image description here](https://i.stack.imgur.com/BB34w.jpg)