한 셀 값을 세 번째 셀을 기반으로 하는 다른 값으로 변경하는 Excel 수식

한 셀 값을 세 번째 셀을 기반으로 하는 다른 값으로 변경하는 Excel 수식

이를 간단하게 만들기 위해 a1에는 변경 가능한 값이 있고 b1에는 a1 값을 테스트하는 공식이 있습니다. c1은 a1을 기반으로 선택한 값으로 재설정됩니다.

사람들이 값을 입력할 수 있는 테이블이 있습니다. a1에 '재설정'을 선택할 수 있는 목록 상자가 있습니다. 사람들이 새 값을 입력할 수 있도록 테이블 값을 0 으로 변경하여 테이블을 '지우고' 싶습니다.

위와 같이 단일 셀로 이것을 테스트하려고했습니다. 내가 b1에 넣은 공식

=if(a1="RESET",(c1=0),c1)

이것은 c1 값을 변경하지 않지만 if then의 테스트 부분에 c1=0을 포함합니다.

문제는 매크로나 VB 코드를 사용할 수 없다는 것입니다. 왜냐하면 매크로나 VB 코드가 저장되어 있기 때문에 수식을 사용해야 하기 때문입니다.

이 정도면 분명했지?

답변1

수식은 다른 대상을 변경할 수 없습니다. 두 가지 공식이 필요합니다

지하 1층 -=IF(A1="RESET",1,0)

C1 -=IF(B1>0,"woohoo",0)

연습의 요점이 사용자가 C1을 변경하여 수식을 제거할 수 있기 때문에 B1에 하나의 수식만 갖는 것이라면 이는 불가능합니다.

답변2

귀하의 설명에 따르면 어떤 셀이 다른 셀에 종속되어야 하는지 명확하지 않지만 요구 사항을 올바르게 이해하면 VBA 또는 추가 수동 단계 없이는 수행하려는 작업을 수행할 수 없습니다.

Raystafarian이 설명했듯이 다른 셀의 수식을 사용하여 한 셀을 변경할 수 없습니다. 그러나 셀에는 수식과 값이 모두 포함될 수 없습니다. B1 또는 C1에 수식이 있는 경우 거기에 값을 입력하면 수식이 손실되므로 한 번만 작동합니다.

0귀하의 수식은 입력이 B1에 표시되고 A1 이 A1="RESET"일 때 B1에 표시된 값을 변경하기 때문에 입력이 C1로 들어가기를 원한다는 것을 의미합니다 . VBA가 없다면 설명하는 내용에 가장 가까운 내용은 다음과 같을 것입니다.

  • C1에 새 값을 입력하여 이전에 있던 값을 바꿉니다.
  • B1에는 다음이 포함될 수 있습니다 =IF(A1="RESET",0,C1).

그러면 귀하의 공식이 설명하는 내용이 달성됩니다. B1은 테이블의 표시 위치 역할을 하며 새 값이 필요하지만 값은 C1에 있음을 나타냅니다.

그러나 A1이 변경되지 않는 한 계속 포함되므로 RESETC1의 값을 변경해도 B1에 새 값이 표시되지 않습니다. A1도 변경해야 하지만 이 요구 사항은 VBA 또는 수동 개입 없이 순환 참조를 생성합니다. 새 값의 입력을 감지하고 A1의 변경을 트리거하는 것이 필요합니다. 이러한 유형의 작업에는 VBA가 필요하거나 새 값이 B1에 표시될 준비가 된 후 사용자가 A1을 수동으로 변경해야 합니다.

관련 정보