programing

셀이 텍스트 문자열로 시작하는 경우...공식

telecom 2023. 5. 10. 20:14
반응형

셀이 텍스트 문자열로 시작하는 경우...공식

저는 셀이 텍스트 "A"로 시작하는지 확인하는 공식을 가지고 있습니다. "B" 픽업은 "Collect", C는 선불입니다.

하지만 제대로 작동하지 않는 것 같습니다.

A와 C 모두 선불을 반환합니다...

=LOOKUP(LEFT(A1),{"A","B","C"},{"Pick Up","Collect","Prepaid"})

인수가 여러 개 있기 때문에 조회가 이에 대한 올바른 공식인지 잘 모르겠습니다.hlookup 또는 vlookup일 수 있지만 이 경우 값 테이블이 필요합니다.표본 크기가 작은 경우에는 if의 단순 내포 열

해라=IF(A1="a","pickup",IF(A1="b","collect",IF(A1="c","prepaid","")))

이제 당신의 것을(를)left논쟁

=IF(LEFT(A1,1)="a","pickup",IF(LEFT(A1,1)="b","collect",IF(LEFT(A1,1)="c","prepaid","")))

또한 left를 사용하는 경우 인수에는 문자 수가 아니라 집합이 지정됩니다.


7/8/15 - 위에서 언급한 기능에 대한 Microsoft KB 문서.제 생각에는 아무 문제가 없는 것 같습니다.techonthenet공식적인 소식통을 연결해 보겠습니다

Excel 2019를 기준으로 당신은 이것을 할 수 있습니다.끝에 있는 "오류"가 기본값입니다.

SWITCH(LEFT(A1,1), "A", "Pick Up", "B", "Collect", "C", "Prepaid", "Error")

Microsoft Excel 스위치 설명서

저는 이것이 정말 오래된 게시물이라는 것을 알지만, 저는 같은 문제에 대한 해결책을 찾는 중에 그것을 발견했습니다.저는 중첩된 if-statement를 원하지 않으며 Switch는 제가 사용하는 Excel 버전보다 새 버전입니다.제 코드에 무슨 문제가 있는지 알아냈기 때문에 다른 사람에게 도움이 될 경우를 대비해 여기서 공유하기로 했습니다.

VLOOKUP가 작동하려면 소스 테이블을 알파벳/숫자 순으로 정렬해야 한다는 것을 기억했습니다.처음엔 이걸 하려고 했는데...

=LOOKUP(LOWER(LEFT($T$3, 1)),  {"s","l","m"}, {-1,1,0})

제가 이걸 했을 때부터 효과가 나타나기 시작했어요

=LOOKUP(LOWER(LEFT($T$3, 1)),  {"l","m","s"}, {1,0,-1})

처음에는 마지막 값이 기본값이 될 수도 있다고 생각했기 때문에 마지막 자리에 0이 있었으면 했습니다.어차피 그런 행동은 아닌 것 같아요. 그래서 가능한 한 일치하는 것들을 정리했고, 효과가 있었습니다.

편집: 최종 참고로, 원본 게시물의 예제에 알파벳 순서의 문자가 포함되어 있지만, 오류가 발생하고 있고 A, B, C 문자가 예시에 불과했다면 실제 사용 사례가 달랐을 수도 있다고 생각합니다.

언급URL : https://stackoverflow.com/questions/17845639/if-cell-starts-with-text-string-formula

반응형