달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
반응형
728x90
반응형

 

엑셀 - 중복된 데이터 입력되지 않게 하기

 주민등록번호나 사원번호와 같은 유일한 데이터는 중복해서 입력하지 않도록 하고자 합니다.

<1> 예제 파일을 다운로든 받은 후 Sample 파일을 열기합니다.

[예제파일 다운로드 받기]

<2> 주민등록번호가 입력될 범위를 충분히 선택합니다.

<3> 데이터 메뉴의 유효성 검사를 선택합니다.

<4> 설정 탭을 선택한 후 제한 대상을 사용자 지정으로 선택하고, 수식에 다음과 같이 입력합니다.

   =COUNTIF($C$2:$C$20,$C2)<2

[함수 설명 - COUNTIF]

COUNTIF (조건을 검사할 범위, 조건) : 조건에 맞는 경우에만 셀의 개수를 셉니다.

< 2 : 2보다 작게 되는 양의 정수는 0과 1이므로 이 경우에만 데이터가 입력되도록 합니다. 2가 되는 경우는 데이터 유효성에 위배됩니다.

$C2 : COUNTIF 함수의 2번째 인수인 조건에서는 열은 고정된 채 행 방향으로 셀의 범위가 변경되는 혼합참조로 지정합니다. 이렇게 지정해야 첫 셀부터 마지막 셀까지 모두 검사할 수 있습니다.

<5> 오류 메시지 탭에서 ‘스타일’을 ‘중지’로 선택하고, 제목과 오류 메세지를 아래 대화상자의 내용처럼 작성합니다. ‘스타일’을 ‘중지’로 선택하면 데이터 유효성에 맞지 않는 경우 데이터 입력을 제한합니다.

<6> 확인 버튼을 눌러 유효성 검사를 끝냅니다.

<7> 데이터를 입력해 봅니다. 주민등록번호의 경우 데이터 중복으로 입력하면 아래처럼 경고 대화상자가 나타나며 데이터 입력을 중지합니다.

 

728x90
반응형
:
Posted by mapagilove
728x90
반응형

 

엑셀 - 지정한 순위에 해당하는 팀 명 표시하기


아래와 같은 테이블이 있다고 가정하겠습니다.

<1> 다승을 기준으로 순위별 팀명을 표시하기 위해서 K16셀에 셀 포인터를 놓고 다음과 같이 수식을 작성합니다.

=INDEX($A$5:$A$12,MATCH(LARGE($B$5:$B$12,J16),$B$5:$B$12,0))

[해설]

1. LARGE($B$5:$B$12,J16)
LARGE 함수를 이용하여 B5:B12 범위 중 J16셀에 입력되어 있는 1(첫번째로) 큰 수인 82를 찾는다.

2. MATCH(82,$B$5:$B$12,0)
 MATCH 함수를 이용하여 B5:B12 영역에서 82가 입력되어 있는 위치를 구합니다. 82의 위치는 1이 됩니다.

3. INDEX($A$5:$A$12,1)
INDEX 함수를 이용하여 MATCH함수의 결과로 얻어진 1행의 위치에 해당하는 팀명을 A5:A12 범위에서 반환하므로 ‘삼성’이 표시됩니다.

<2> K16셀에 1위에 해당하는 ‘삼성’이 표시되면 K18셀까지 자동 채우기를 이용하여 수식을 복사하면 1위부터 3위까지의 팀을 확인할 수 있습니다.

[참고] 함수

함수명 설   명
LARGE 데이터 집합에서 k번째로 큰 값을 구합니다
[형식] LARGE(array,k)
Array: k번째 큰 값을 결정할 데이터 배열 또는 범위입니다.
K: 데이터의 배열이나 셀 범위에서 가장 큰 값과의 상대 순위입니다.
[예] LARGE($B$5:$B$12,J16)
입력: J16 => 1
결과: 82
해설: B5:B12 범위에서 1번째 큰 값을 구합니다.
* B5:B12 입력값은 본문 예제 사용
MATCH 지정된 값을 지정된 순서로 일치시키는 배열에서 항목의 상대 위치를 구합니다.
[형식] MATCH(lookup_value,lookup_array,match_type)
Lookup_value: 표에서 찾으려는 값입니다.
Lookup_array: 찾으려고 하는 값이 포함된 인접한 셀들의 범위입니다. Lookup_array는 배열 또는 배열 참조이어야 합니다.

Match_type: lookup_array에서 lookup_value를 찾는 방법을 지정하는 숫자로 -1, 0, 1 세 가지가 있습니다.
- match_type이 1이면 MATCH는 lookup_value보다 작거나 같은 값 중에서 최대값을 찾습니다.
- match_type이 0이면 MATCH는 lookup_value와 같은 첫째 값을 찾습니다.
- match_type이 -1이면 MATCH는 lookup_value보다 크거나 같은 값 중 가장 작은 값을 찾습니다.

[예] MATCH(82,$B$5:$B$12,0)
결과: 1
해설: B5:B12 범위에서 82와 같은 첫째 값을 찾으므로 1이 반환됩니다.
* B5:B12 입력값은 본문 예제 사용
INDEX 테이블 또는 범위에서 값 또는 값에 대한 참조를 반환합니다.
[형식] INDEX(array,row_num,column_num)
Array: 셀 범위나 배열 상수입니다.
row_num: 값을 반환할 배열의 행을 선택합니다. row_num이 생략되면 column_num이 필요합니다.
column_num: 값을 반환할 배열의 열을 선택합니다. column_num이 생략되면 row_num이 필요합니다.
[예] INDEX($A$5:$A$12,1)
결과: 삼성
해설: A5:A12 범위에서 1번째 행 값을 반환하므로 ‘삼성’이 표시됩니다.
* A5:A12 입력 값은 본문 예제 사용

 

 

728x90
반응형
:
Posted by mapagilove
2014. 11. 22. 14:26

엑셀 - 만년달력을 만드는 법 엑 셀 이야기2014. 11. 22. 14:26

728x90
반응형

 

 

엑셀 - 만년달력을 만드는 법

 

하기는 만년달력을 만드는 법을 포스팅 해본다.

자료를 읽으시는 분들에세 큰도움이 되시길~~~

 

<1> 아래의 그림처럼 B2:E2 범위에 [년월]을 입력할 수 있도록 만듭니다.

<2> A4셀에 수식을 =text(column(a1),"aaa") 입력하신 후 B4:G4까지 해당수식을 복사하면 아래의 그림처럼 해당 셀에 요일이 표시됩니다.

<3> A5셀에 아래와 같은 수식을 입력하세요.
=IF(OR((ROW(A1)-1)*7+COLUMN(A1)-WEEKDAY(DATE($B$2,$D$2,1),2)<=0,
(ROW(A1)-1)*7+COLUMN(A1)-WEEKDAY(DATE($B$2,$D$2,1),2)>DAY(DATE($B$2,$D$2+1,0))),"",
(ROW(A1)-1)*7+COLUMN(A1)-WEEKDAY(DATE($B$2,$D$2,1),2))

수식이 너무 길고 많이 복잡한 것처럼 보이지만 실제 모르는 함수는 없어 보이네요?

수식을 분리해서 해석해 보겠습니다.

1. IF 와 OR 함수를 사용하여 표시하려는 월에 해당되는 날짜를 표시하기 위한 조건입니다.
2. OR함수는 월의 1일 이전과 말일 이후의 날짜가 표시 되지 않도록 하기 위해 사용되었습니다.
3. (ROW(A1)-1)*7+COLUMN(A1): 행과 열의 값을 가져와서 첫 셀부터 순서대로 1,2,3,…값으로 됩니다.
4. WEEKDAY(DATE($B$2,$D$2,1),2) : 해당년 월의 1일에 해당하는 요일의 값을 구합니다.
WEEKDAY함수의 return_type 값을 2로 지정하였기 때문에 결과값은 1(월요일)~7(일요일)을 의미합니다.
5. DAY(DATE($B$2,$D$2+1,0)) : 해당월의 마지막 날짜의 값을 구합니다.
이렇게 분리되어 해석된 수식을 응용하여 사용하시면 됩니다.

간단하다고 했는데 수식 때문에 엄청 스트레스 받으시면 오늘은 그냥 수식을 복사하셔서 사용하시고 다음에 천천히 수식을 살펴보세요. ^^*

<4> A5셀에 입력한 수식을 A5:G10까지 복사하시고 원하시는 서식을 넣으시면 됩니다.

<5> 이제 만년달력이 만들어 졌네요. ^^* B2셀의 년도 또는 D2셀에 월을 변경해 보세요. 그러면 아래 달력의 날짜들이 알아서 변합니다.

728x90
반응형
:
Posted by mapagilove
728x90
반응형

 

 

엑셀 그 새로운 경험 - 오피스 튜터 / 우노21

 

회사 생활을 한지 어언 15년 이상 이제는 엑셀의 달인 수준이지만 예전엔 자료도

많이 없어서 이리저러 인터넷을 뒤지다가 찾은 달인이 될수 있는 엑셀/ 오피스 공부 사이트를

몇가지 소개 해보고자 한다.

 

오피스관련 모든 정보들이 공유되어 있고, 초급부터 고급 유저까지 모든 사람이 공부할 수 있는

오피스 튜터 사이트: http://www.officetutor.co.kr/index.asp

이 사이트의 경우 오피스 Tool관련한 많은 정보들이 있고 다양한 교육서비스가 있는 것이 특징이다.

주로 기본과 다양한 기능들을 알아가는 유저에게 필요한 곳이다.

 

엑셀,워드, 엑세스, 파워포인트 등 직장인들이 회사에서 필요한 오피스에 대한 모든 정보들이

다양하게 있고 묻고 답하기 등 모등 루트를 통해 답을 얻을 수 있다.

 

 

 

우노21의 오피스 강좌: http://www.uno21.com/

우노21의 경우 엑셀, 엑세스 등의 오피스 사용자 중 일반적인 툴과 고급 툴의 응용이 필요한 고급 유저

가 되고자 하는 사람에게 VBA 등과 고급 기능의 활용을 통하여 하이레벨 스킬러가 된다는 사실~~~

필요하다면 SQL의 활용을 통하여 엑셀/엑세스 데이터 기반으로 데이터베이스로 하여 대용량 데이터를

쉽게 분석할 수 있는 툴도 만들 수 있다.

 

일반 기업에서 사용하는 여러가지 프로그램들로 엑셀/ 엑세스로도 가능하다. 물론, 엑셀/ 엑세스 데이터

기반이 아니고 MS-SQL/ Oracle 데이터 기반으로 구현할 수 있다.

 

VBA 엑셀 프로그래밍의 활용 소개~~

어라, 안드로이드, 자바, 이클릴스에 대한 강좌도 있다.

 

자 여기는 등급별로 자료를 통하여 공부하고 이해할 수 있는 곳 - 본인도 여기서 초보때 부터 지금까지

많은 자료를 얻고 좀더 우수한 데이터 베이스 활용을 할 수 있는 팁을 얻은 곳이다.

오늘은 2가지 사이트를 소개해 본다. 엑셀과 오피스의 파워유저가 되고 싶어하는 분은 위 두가지 홈페

이지의정보만 활용하더라도 최고의 파워 유저가 될수 있음을 과감히 포스팅해 본다.

 

위 사이트를 이용하여 회사 생활에서 존경 받는 기술인? 이 되어 보시길~~~

 

 

728x90
반응형
:
Posted by mapagilove
반응형