커뮤니티
스포츠
토론장


새 잡담게시판으로 가기
(구)잡담게시판 [1] [2] [3] [4] [5] [6]
HOME > 커뮤니티 > 잡담 게시판
 
작성일 : 15-07-22 16:47
엑셀로 점수에 따라서 수우미양가 나오게 끔 하는 함수좀 알려주세요.
 글쓴이 : 돌아온드론
조회 : 3,326  

 
먼저 무식해서 죄송하다는 사죄를드립니다.
 
인터넷에서 찾을려면 찾을수 있겠지만 엄두가 안나서..ㅎㅎ
 
내용은 제목과 같이 함수를 이용하여  
 
점수가 50-69점인 사람은  c등급   70-89점이상은 b등급 90-100은 a등급 이렇게 나오게끔
 
    이름       수학점수        등급         
1. 드론        51                c
 
이렇게요.  수학점수 입력하면   등급란에 c가 자동으로 써지는 함수 부탁드립니다;;;                                                 
출처 : 해외 네티즌 반응 - 가생이닷컴https://www.gasengi.com
우리는 삶에 마땅히 의미가 있어야 한다고 말한다. 하지만 삶에는 우리가 부여하는 만큼의 의미만 있을 뿐이다.




가생이닷컴 운영원칙
알림:공격적인 댓글이나 욕설, 인종차별적인 글, 무분별한 특정국가 비난글등 절대 삼가 바랍니다.
archwave 15-07-22 16:56
   
=MID("수우미양가", xxxx, 1)
=char(code("A") -1 +xxxx)

위의 것은 한글 등급, 아래 것은 영문 등급
위에서 xxxx 는 등급 숫자 ( 1 부터 시작 )
뿡뿡이 15-07-22 17:00
   
배운게 새록새록 기억나네요
     
돌아온드론 15-07-22 17:24
   
지식을 새록새록 뱉어내세요.
archwave 15-07-22 17:00
   
등급 숫자도 조금 유별난 요구군요. 그 공식도 추가

= (5 - INT(( 점수 - 10)/20))

위에 리플에서 xxxx 자리에 바로 위 칸 것을 쓰시면 됨
archwave 15-07-22 17:02
   
에고 실수했다. 영문 등급도 그냥 mid 써야 하는구나. 최하가 E 가 아니라 F 니까..

= MID ( "ABCDF", xxxx, 1 )
     
돌아온드론 15-07-22 17:15
   
아;; 어렵네요..

점수(이하)        등급
0.4                      1
0.7                      2
1.0                      3
1.3                      4
1.5                      5
2.5                      6
실제론 이렇게 점수랑 등급을 나눌거거든요. 이런 등급을 여러게 해서 종합등급을 또 만들거구요..;;
          
돌아온드론 15-07-22 17:16
   
점수가 0.4점이하면 자동으로 숫자 1이 나오고
점수가 2.5점이하면  6이나오는거 만들려고 합니다.ㅠ
               
archwave 15-07-22 17:31
   
그렇게 불규칙한 기준이면 이런 방식 쓰세요.

=7-MATCH( 점수, {2.5,1.5,1.3,1,0.7,0.4}, -1)

위 공식에서 { } 로 싼 부분은 어레이 값인데요. 이걸 다른 셀 범위로 바꿔도 됩니다. 그럴 경우는 점수 기준을 다르게 수시로 변경하는 것도 간단하겠죠.

함수 사용법 잘 읽어보시고, 응용해보세요. 이걸로 A/S 끝.
               
archwave 15-07-22 17:35
   
한 가지 힌트 하나 더..

계산식 써서 하다보면 원하는 범위를 벗어나는 등급 나올 수 있을텐데

예를 들어 등급 6 이 최대인데 하다 보니 7 도 나온다 할 경우
그럴 때는 min ( 계산공식, 6 ) 이렇게 해주시면 됨.
archwave 15-07-22 17:04
   
그런데 30 점 아래라야 "가" 또는 "F" 나오는게 정상인건가. 학교 댕긴지 오래라 기준이 뭐였는지 가물가물하다.
     
돌아온드론 15-07-22 17:08
   
저건 예를 들어서 쓴거고 다른 수치 입력할거에요.ㅎㅎㅎ
길라잡이 15-07-22 17:29
   
등급별 수치가 균등한 것이 아니라 서로 다르다면 그냥 IF문 도배하세요.
아니면, 사용법 어렵지 않으니 사용자 정의함수 쓰셔도 됩니다. ^

저도 A/S 해드릴게요..-_-;;

ALT-F11  하시고  삽입(I)-모듈  실행 후 아래를 입력하세요..배점은 알아서 하시고요..

Public Function fnLevel(value)
 Select Case value
  Case Is >= 90: fnLevel = "A"
  Case Is >= 70:  fnLevel = "B"
  Case Is >= 50:  fnLevel = "C"
  Case Is >= 40:  fnLevel = "D"
  Case Is >= 30:  fnLevel = "E"
  Case Else:  fnLevel = "F"
 End Select
End Function

그 다음에 다시 ALT-F11 해서 나오세요..
=fnLevel(a1)  해보세요..
그린박스티 15-07-22 17:38
   
if나 조건 함수도 있지않나요??

조건 시트 정하시고 ㅇㅈㅇ; 조건함수쓰시면 될 듯합니다.. 물론 수식은;;; 인터넷 참조를..
Ragnarok 15-07-22 17:41
   
IF문 함수 도배가 편하지 않나요?
=IF(A1>89,A2="수",IF(AND(A1>79,A1<90),A2="우".....
이런식으로요.
archwave 15-07-22 18:12
   
if 로 도배하느니 함수 조합이 훨씬 좋습니다.

=7-MATCH( 점수, {2.5,1.5,1.3,1,0.7,0.4}, -1)
=6-MATCH( 점수, {100, 90, 80, 70, 60}, -1)

이런 식으로 하면 if 문 쓰는 것에 비해 깔끔하죠.
과목마다 점수 기준이 다를 경우나 자주 변경할 경우 점수 기준을 다른 셀 범위에 써놓고
= 6-match( 점수, $A$1:$A$5, -1)
이런 식으로 할 수도 있고요.

-----------------------------------------

결과를 한 글자로 하는게 아닐 경우

=INDEX({"bad","poor","normal","good","exellent"}, 등급 숫자)

이런 식으로 하면 되죠.

lookup, match, index 이 함수들은 꼭 공부해두시길..
길라잡이 15-07-22 19:32
   
아니면 제가 성적등의 범위가 확실할 때 쓰는 방법중에 하나인데요..
sheet2  1부터 100까지 점수를 입력하고요.. 왼쪽에 그 점수의 등급을 적습니다..
.    . 
.    .
90 A
89 B
.    .

그 다음에 vlookup 으로 등급을 표시합니다..  If 도배 보다 좋기는 한데 정수여야하는 것이 좀 그렇긴 하죠.
     
archwave 15-07-22 21:10
   
0 낙제
50 가
60 양
70 미
80 우
90 수
100 만점
=============
Sheet2 에다 위와 같이 기준점수와 등급을 적고요.

=OFFSET(Sheet2!$A$1,MATCH( 점수 ,Sheet2!$A$1:$A$7,1)-1,1)

이렇게 하면 더 간단합니다.

위에는 간단히 정수로 썼지만, 소수점 이하 점수 있어도 아무 문제없이 잘 됩니다.

점수 몇 이하 식으로 기준이 달라질 경우 Sheet2 에 들어가는 기준 점수를 내림차순으로 바꾸고 match 함수의 마지막 인수를 -1 로 바꾸면 됩니다.