거의 모든 프로그래밍 언어에서 가장 일반적으로 사용되는 문 중 하나는 IF 문입니다. 따라서 Google 스프레드시트(Google Sheets) 에서 IF 및 중첩 IF 문을 사용하는 것이 매우 인기 있고 매우 유용하다는 것은 놀라운 일이 아닙니다.
Google 스프레드시트(Google Sheets) 의 IF 문을 사용하면 다른 셀의 조건을 기반으로 셀에 다른 함수를 삽입할 수 있습니다. IF 문을 중첩하면 데이터를 기반으로 한 고급 분석을 생성할 수 있습니다. 이 기사에서는 이 작업을 수행하는 방법과 몇 가지 예를 볼 것입니다.
Google 스프레드시트 에서 IF 문(IF Statement) 사용
IF 문 중첩을 시작하기 전에 먼저 간단한 IF 문이 Google 스프레드시트(Google Sheets) 에서 작동하는 방식을 이해해야 합니다 .
이것을 이해하는 가장 쉬운 방법은 예를 들어보는 것입니다. 첫 번째 예에서, 하이킹을 생각하고 있는 산의 목록을 인터넷에서 고도와 함께 가져왔다고 상상해 보십시오.
당신은 고도가 3000피트가 넘는 하이킹 산에만 관심이 있습니다. 따라서 "3000피트 이상"이라는 다른 열을 만듭니다. IF 문은 이 필드를 채우는 가장 쉬운 방법입니다.
IF 문이 작동하는 방식은 다음과 같습니다.
IF(논리식, 값_if_true, 값_if_false)(IF(logical_expression, value_if_true, value_if_false))
IF 문의 매개변수는 다음과 같이 작동합니다.
- Logical_expression : <, > 또는 =와 같은 연산자를 사용하는 조건문입니다.
- Value_if_true : 논리식이 TRUE 인 경우 셀에 원하는 값을 입력합니다 .
- Value_if_false : 논리식이 FALSE 인 경우 셀에 원하는 값을 입력합니다 .
이 예에서는 첫 번째 행에서 시작하여 C2 셀에 커서를 놓습니다. 그런 다음 다음 수식을 입력합니다.
=IF(B2>3000,”YES”,”NO”)
이 IF 문은 셀 B2의 산 높이가 3000보다 크면 셀 C2에 YES 를 표시하고 그렇지 않으면 NO를 표시함을 의미합니다.(YES)
Enter 키(Enter) 를 누르면 C2 셀에 올바른 결과( YES )가 표시됩니다.(YES)
이 셀 아래의 나머지 셀을 자동 완성하라는 Google 스프레드시트(Google Sheets) 제안이 표시될 수도 있습니다 . 계속해서 이 동일한 기능으로 나머지 셀을 자동 채우려면 확인 표시를 선택하십시오. 참조는 해당 산 높이에 대한 올바른 셀로 자동 업데이트됩니다.
이 제안이 표시되지 않으면 키보드에서 Shift 키를 누른 상태에서 첫 번째 수식을 입력한 셀의 오른쪽 하단 모서리에 있는 작은 사각형을 두 번 클릭할 수 있습니다.
Google 스프레드시트 에서 중첩 IF 문 사용(Statements)
이제 Google 스프레드시트(Google Sheets) 에서 중첩 IF 문을 만드는 예를 살펴보겠습니다 .
위와 같은 예를 사용하여 목록에서 고도가 3,000피트를 넘지 않는 첫 번째 산을 찾아서 다음 "쉬운" 하이킹으로 선택한다고 가정해 보겠습니다. 조건과 일치하는 다음 항목을 열에서 위에서 아래로 검색하려면 중첩된 IF 문이 필요합니다.
결과를 표시할 셀에 커서를 놓습니다. 그런 다음 다음 수식을 입력합니다.
=IF(B2<3000,A2,IF(B3<3000,A3,IF(B4<3000,A4,IF(B5<3000,A5,IF(B6<3000,A6,IF(B7<3000,A7,IF(B8<3000,A8,IF(B9<3000,A9,IF(B10<3000,A10,IF(B11<3000,A11,IF(B12<3000,A12,IF(B13<3000,A13,IF(B14<3000,A14,IF(B15<3000,A15,”None”))))))))))))))
좀 미친 것 같죠? 예, 중첩된 IF 문은 복잡해질 수 있습니다. 좀 더 이해가 잘 되도록 이것을 분해해 보겠습니다.
문의 첫 번째 부분( =IF(B2<3000 )은 열의 첫 번째 셀이 3000 미만인지 확인합니다. 그렇다면 3000 미만의 목록에서 첫 번째 산이므로 A2( ,A2) 를 반환합니다. ) 그 IF 문이 참이기 때문입니다.
거짓이면 다음 열을 확인하기 위해 다른 IF 문을 중첩해야 합니다( ,IF(B3<3000 ). 이것이 참이면 A3( ,A3 ) 을 반환합니다.
A15 까지 내려갈 때까지 이 IF 문의 중첩을 반복 한 다음 반복되는 ")" 문자로 모든 if 문을 닫습니다.
중첩된 IF 문의 마지막 "false" 매개변수가 "None" 임을 알 수 있습니다. A15 가 3000피트 미만이 아니라면 어떤 산도 3000피트 미만 이 아니기 때문 입니다.
이 예에서 결과는 D2 셀에서 어떻게 보일지입니다.
전문가 팁(Pro-tip) : 이를 수행하는 더 간단한 방법은 INDEX , MATCH 및 VLOOKUP 함수(VLOOKUP functions) 를 사용하는 것 입니다.
가장 높은 수(Highest Number) 를 찾기 위한 중첩 IF 문(IF Statement)
이전 예에서 IF 문은 그 앞의 IF 문 내부에 FALSE 매개변수로 중첩되었습니다. IF 문을 중첩하는 반대의 예는 TRUE 매개변수로 중첩하는 것입니다.
이 접근 방식을 사용하여 목록에서 가장 높은 숫자를 찾을 수 있습니다. 예를 들어 학생 목록과 시험 성적이 있다고 가정해 보겠습니다. 중첩된 IF 문을 사용하여 최고 등급을 찾으려고 합니다.
결과를 배치할 셀에 커서를 놓고 다음 수식을 입력합니다.
=IF(B2>B3,IF(B2>B4,B2,IF(B4>B3,B4,B3)),B3)
문의 첫 번째 부분( =IF(B2>B3 )은 열의 첫 번째 셀이 두 번째 셀보다 큰지 확인합니다. 그렇다면 해당 셀(B2)이 가장 클 수 있지만 여전히 확인해야 합니다. 따라서 TRUE 매개변수 대신 B2를 B4에 대해 검사하는 또 다른 IF 문을 중첩합니다.
- B2가 여전히 B4보다 큰 경우 가장 큰 숫자이며 B2를 다음 TRUE 매개변수로 반환할 수 있습니다.
- 그렇지 않은 경우 B4가 가장 큰 숫자가 될 수 있습니다. 따라서 FALSE 매개변수는 B3에 대해 B4를 확인해야 합니다. 더 크면 가장 큰 숫자이며 이 최종 IF 문은 TRUE 매개변수에서 B4를 반환합니다.
- 그렇지 않은 경우 B3이 가장 크며 최종 FALSE(FALSE) 매개변수 로 반환되어야 합니다 .
- 마지막으로 두 번째 검사(B2>B4)가 거짓이면 첫 번째 IF 문(B2>B3)이 이미 거짓이므로 B3이 가장 크므로 B3을 이 FALSE 매개변수로 반환할 수 있습니다.
결과는 다음과 같습니다.
아직 혼란스러우신가요?
당신은 혼자가 아닙니다. 이와 같은 용도로 중첩 IF 문을 사용하는 것은 매우 복잡합니다. 그리고 목록에 더 많은 숫자를 추가하면 훨씬 더 복잡해집니다.
그렇기 때문에 Google 스프레드시트(Google Sheets) 에는 실제로 셀 범위(이 경우 열)를 전달하기만 하면 최대 수를 반환 하는 MAX 함수가 있습니다. (MAX)최소값 을 반환 하는 MIN 함수 도 있습니다 .
현실적인 중첩 IF Google 스프레드시트(Realistic Nested IF Google Sheets Example) 의 예
앞의 두 예는 중첩된 IF 문을 사용하면 안 되는 상황에서 사용하면 엉망이 되기가 얼마나 쉬운지 보여주기 위한 것입니다. 들어가기 쉬운 함정입니다. 하려는 일을 달성하기 위해 항상 더 간단하고 단일한 Google 스프레드시트 기능을 찾으세요.(Google Sheets)
예를 들어 회사를 소유하고 있고 4명의 직원에 대한 피드백을 받았다고 가정해 보겠습니다. 피드백을 받은 네 가지 특성을 기반으로 각 직원이 승진 자료인지 판단해야 합니다.
각 특성에 대한 답을 조사한 다음 결과 열에 결정을 제공하는 중첩된 IF 문을 작성할 수 있습니다.
직원이 아닌 경우:
- 시간 엄수(Punctual) : 당신은 너무 걱정하지 않지만, 당신은 승진하지 않을 수도 있습니다 (어쩌면 그렇지 않을 수도 있습니다).
- 효율적(Efficient) : 당신은 너무 걱정하지 않으며 여전히 홍보할 수 있습니다(아마도).
- 리더십 품질(Leadership Quality) : 피드백에 동의하면 승진하지 않을 수 있습니다(안 될 수도 있음).
- 신뢰할 수(Trustworthy) 있음 : 당신은 확실히 승진하고 싶지 않습니다 (확실히하지 않습니다).
이러한 결정을 중첩된 IF 문에 프로그래밍할 수 있습니다. 결과를 원하는 셀에 커서를 놓고 다음 수식을 입력합니다.
=IF(B2=”YES”,IF(C2=”YES”,IF(D2=”YES”,IF(E2=”YES”,”Definitely”,”Maybe Not”),”Maybe”),”Maybe Not”),”Definitely Not”)
이것은 모든 응답이 "예"이면 "확실히"를 반환하지만 개별 셀 중 하나가 "아니요"인지 여부에 따라 다른 응답을 반환하는 간단한 중첩 IF 문입니다.
이것은 중첩된 IF 문이 좋은 선택이 될 수 있는 몇 안 되는 예 중 하나입니다. 그러나 위에서 언급했듯이 훨씬 더 복잡한 작업을 수행해야 하는 경우 동일한 목표를 훨씬 쉽게 달성할 수 있는 기존 Google 스프레드시트 기능을 찾는 것이 훨씬 좋습니다.(Google Sheets)
뛰어난 고급 "IF" 함수의 몇 가지 예에는 SUMIF , COUNTIFS, SUMIFS 및 AVERAGEIFS가(COUNTIFS, SUMIFS, and AVERAGEIFS) 있습니다.
How to Use If and Nested If in Google Sheets
One of the most commonly used statements in nearly every programming language is the IF statement. So it should come as no surprise that using IF and neѕted IF statеments in Google Sheets iѕ very popular and νery useful.
The IF statement in Google Sheets lets you insert different functions into a cell-based on conditions from other cells. When you nest IF statements, you can create more advanced analytics based on data. In this article, you’ll learn how to do this as well as see a few examples.
Using the IF Statement in Google Sheets
Before you can get fancy and start nesting IF statements, you need to understand how a simple IF statement works in Google Sheets first.
The easiest way to understand this is with an example. For our first example, imagine you pulled a list of mountains you’re thinking of hiking from the internet, along with their altitude.
You’re only interested in hiking mountains that are higher than 3000 feet in altitude. So you create another column called “Over 3000 Feet”. An IF statement is the easiest way to fill out this field.
Here’s how an IF statement works:
IF(logical_expression, value_if_true, value_if_false)
The parameters in the IF statement work as follows:
- Logical_expression: This is a conditional statement using operators like <, >, or =.
- Value_if_true: Enter what you want in the cell if the logical expression is TRUE.
- Value_if_false: Enter what you want in the cell if the logical expression is FALSE.
In this example, start with the first row and place the cursor in cell C2. Then, type the following formula:
=IF(B2>3000,”YES”,”NO”)
This IF statement means if the height of the mountain in cell B2 is greater than 3000, then display YES in cell C2, otherwise display NO.
Press Enter and you’ll see the correct result (YES) in cell C2.
You may also see a Google Sheets suggestion to autofill the rest of the cells below this one. Select the checkmark if you’d like to go ahead and autofill the rest of the cells with this same function. The references will automatically update to the correct cells for those mountain heights.
If you don’t see this suggestion, you can hold the Shift key on your keyboard and double-click the small square at the lower right corner of the cell where you entered the first formula.
Using Nested IF Statements in Google Sheets
Now let’s look at an example of creating a nested IF statement in Google Sheets.
Using the same example as above, let’s say you want to find the first mountain in the list that isn’t over 3,000 feet in altitude so you choose it as your next “easy” hike. To search from top to bottom in a column for the next item that matches a condition requires a nested IF statement.
Place the cursor in the cell where you’d like the result to go. Then, type the following formula:
=IF(B2<3000,A2,IF(B3<3000,A3,IF(B4<3000,A4,IF(B5<3000,A5,IF(B6<3000,A6,IF(B7<3000,A7,IF(B8<3000,A8,IF(B9<3000,A9,IF(B10<3000,A10,IF(B11<3000,A11,IF(B12<3000,A12,IF(B13<3000,A13,IF(B14<3000,A14,IF(B15<3000,A15,”None”))))))))))))))
Looks a bit crazy, doesn’t it? Yes, nested IF statements can get complicated. Let’s break this one down so it makes more sense.
The first part of the statement (=IF(B2<3000) checks if the first cell in the column is less than 3000. If it is, then that’s the first mountain on the list under 3000 and so it will return A2 (,A2) since that IF statement is true.
If it’s false, then you need to nest another IF statement to check the next column (,IF(B3<3000). If this is true, return A3 (,A3)
You repeat this nesting of IF statements until you get all the way down to A15, and then close out all of the if statements with the repeated “)” character.
You’ll notice the last “false” parameter in the nested IF statement is “None”. This is because if A15 isn’t under 3000 feet either, then none of the mountains are under 3000 feet.
In this example, here’s what the result will look like in cell D2.
Pro-tip: A simpler way to do this is to use the INDEX, MATCH, and VLOOKUP functions.
Nested IF Statement to Find the Highest Number
In the previous example, the IF statements were nested as FALSE parameters inside the IF statement before it. An opposite example of nesting IF statements is nesting them as TRUE parameters.
You may use this approach to find the highest number in a list. For example, let’s say you have a list of students and their test grades. You want to use nested IF statements to find the highest grade.
Place the cursor in the cell where you want to place the result and type the following formula:
=IF(B2>B3,IF(B2>B4,B2,IF(B4>B3,B4,B3)),B3)
The first part of the statement (=IF(B2>B3) checks if the first cell in the column is greater than the second. If it is, then that cell (B2) may be the largest, but you still need to check the rest. So in place of the TRUE parameter, you’ll nest another IF statement checking B2 against B4.
- If B2 is still larger than B4, it’s the largest number and you can return B2 as the next TRUE parameter.
- If it isn’t, B4 could be the largest number. So the FALSE parameter needs to check B4 against B3. If it is larger, then it’s the largest number and this final IF statement will return B4 in the TRUE parameter.
- If it isn’t, then B3 is the largest and should be returned as the final FALSE parameter.
- Finally, if the second check (B2>B4) is false, then B3 is the largest because the first IF statement (B2>B3) is already false, so B3 can be returned as this FALSE parameter.
Here’s what the result looks like:
Confused yet?
You’re not alone. Using nested IF statements for something like this is pretty complicated. And once you add even more numbers to the list, it gets even more complex.
That’s why Google Sheets actually has a MAX function where you simply pass it the range of cells (in this case the column), and it’ll return the maximum number. There’s also a MIN function that will return the minimum value.
A Realistic Nested IF Google Sheets Example
The previous two examples were intended to show you how easy it is to get into a mess if you use nested IF statements when you really shouldn’t. That’s an easy trap to get into. Always look for a simpler, single Google Sheets function to accomplish what you’re trying to do.
For example, let’s say you own a company and you’ve received feedback about four employees. Based on the four characteristics that you received feedback on, you need to determine if each employee is promotion material.
You can write a nested IF statement that’ll examine the answer for each characteristic and then provide a decision in the result column.
If the employee wasn’t:
- Punctual: You’re not too concerned, but you may not promote (maybe not).
- Efficient: You’re not too concerned, and may still promote (maybe).
- Leadership Quality: You may not promote if you agree with the feedback (maybe not).
- Trustworthy: You definitely don’t want to promote (definitely not).
You can program these decisions into the nested IF statement. Place the cursor into the cell where you want the results and type the following formula:
=IF(B2=”YES”,IF(C2=”YES”,IF(D2=”YES”,IF(E2=”YES”,”Definitely”,”Maybe Not”),”Maybe”),”Maybe Not”),”Definitely Not”)
This is a simple nested IF statement that returns “Definitely” if all responses are “YES”, but then returns different answers depending on whether any of the individual cells are “NO”.
This is one of the few examples where a nested IF statement would be a good choice. But as mentioned above, if you need to do anything much more complex, you’re much better off looking for an existing Google Sheets function that accomplishes the same goal much easier.
Some examples of great advanced “IF” functions include SUMIF, COUNTIFS, SUMIFS, and AVERAGEIFS.