하나의 셀에 여러 선택 항목이 있는 IF 함수

하나의 셀에 여러 선택 항목이 있는 IF 함수

내 질문 양식 중 하나에 대한 답변인 일부 데이터가 있습니다.

일부 질문에는 여러 답변이 있을 수 있습니다. 예를 들어:

당신의 취미는 무엇입니까?

  1. 여행
  2. 촬영 중
  3. 스포츠
  4. 댄스

각 답변에는 고유한 번호가 있습니다(위에 표시된 대로).

즉 1개는 여행용, 2개는 촬영용 등입니다.

일부 셀에는 여러 답변이 있습니다.

예: A3 셀에는 내부에 1,3,4가 있습니다. 숫자는 쉼표로 구분됩니다.

다른 Excel 시트에는 숫자가 아닌 이름(단어)으로 표시되는 답변이 포함된 표를 작성하고 있습니다. 단일 답변을 사용하면 함수 IF로 쉽게 만들 수 있습니다.

IF(A1=1,"Traveling",IF(A1=2,"Filming",IF(A1=3,"Sport",IF(A1=4,"Dancing","Error"))))

그러나 답변이 여러 개인 경우 문제가 있습니다. 셀 A3에는 여행(1), 스포츠(3) 및 춤(4)의 3가지 답변이 있음을 Excel에서 이해할 수 있도록 숫자를 구분하는 방법은 무엇입니까?

답변1

1,3,4다음은 셀에 문자열을 포함하는 간단한 솔루션입니다.A1필요에 따라 다음 수식은 를 반환합니다 Travelling,Sport,Dancing.

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,1,"Travelling"),2,"Filming"),3,"Sport"),4,"Dancing")

참고: 이 방법은 SUBSTITUTE최대 9번까지 반복할 수 있습니다. 하지만 이 방법은 다소 읽을 수 없게 되므로 권장하지 않습니다.

답변2

사용해 보세요찾다IF(SEARCH("1",A1),"Traveling")대신에 좋아요 IF(A1=1,"Traveling")등 (예 IF(SEARCH("3",A1),"Sport"): )

답변3

다음을 시도해 보세요사용자 정의 함수(UDF):

Public Function MultiReturns(sIN As String) As String
    Dim i As Long

    nums = Array("1", "2", "3", "4")
    lets = Array("Traveling", "Filming", "Sport", "Dancing")

    MultiReturns = ""
    If sIN = "" Then Exit Function

    ary = Split(Replace(sIN, " ", ""), ",")

    For Each a In ary
        For i = LBound(nums) To UBound(nums)
            If a = nums(i) Then MultiReturns = MultiReturns & "," & lets(i)
        Next i
    Next a

    MultiReturns = Mid(MultiReturns, 2)
End Function

여기에 이미지 설명을 입력하세요

사용자 정의 함수(UDF)는 설치 및 사용이 매우 쉽습니다.

  1. ALT-F11은 VBE 창을 불러옵니다
  2. ALT-I ALT-M은 새로운 모듈을 엽니다
  3. 내용을 붙여넣고 VBE 창을 닫습니다.

통합 문서를 저장하면 UDF도 함께 저장됩니다. 2003 이후 버전의 Excel을 사용하는 경우 파일을 다음 형식으로 저장해야 합니다..xlsm오히려.xlsx.

UDF를 제거하려면:

  1. 위와 같이 VBE 창을 불러옵니다
  2. 코드를 지워라
  3. VBE 창을 닫습니다

Excel에서 UDF를 사용하려면:

=MultiReturns(A1)

일반적인 매크로에 대해 자세히 알아보려면 다음을 참조하세요.

http://www.mvps.org/dmcritchie/excel/getstarted.htm

그리고

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

UDF에 대한 자세한 내용은 다음을 참조하세요.

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

이 작업을 수행하려면 매크로를 활성화해야 합니다!

관련 정보