달력

12

« 2014/12 »

반응형
728x90
반응형

 

 

 

[ 엑셀VBA 12 ] 불량관리 프로그램 만들기 - SQL 함수에 대하여

 

오늘은 SQL함수에 대하여 알아보고자 한다. 갑자기 이 시점에서 왜? SQL이냐면 엑셀을 DB로

해서 많은 용량의 데이터를 검색해서 조건을 추려 골라내고 계산을 하려면 DB전용 함수인

SQL 함수 + VBA가 필요하기 때문이다.

 

 

SQL이란 무엇인가?

SQL이란 구조화 질의어(Structured Query Language)의 줄임말이며, SQL은 DDL(데이터 정의 언어)과 DML(데이터 조작 언어) 명령으로 크게 나누어 볼 수 있다. DDL은 데이터베이스 개체 자체를 다루는 것으로, 새 데이터베이스를 만들거나, 필드 인데스를 작성하고 정의, 또는 삭제할 수 있으며 DML 명령을 사용해서 질의를 구성해 데이터베이스에서 우리가 원하는 데이터를 추출하거나 정렬하거나 삭제 또는 수정할 수 있다.

즉, SQL이란 데이터를 정의하거나 조작하는 데 사용하는 언어를 말하는 것이다.

 

SQL 절(절은 SQL 언어의 구성 요소)

절은 선택하거나 수정 또는 편집할 데이터를 정의할 때 사용하는 조건을 부여할 때 사용한다.

FROM : 데이터의 위치를 말하며 엑셀 고급필터에서 데이터가 들어 있는 목록 범위를 지정하는 것과 같다.

WHERE : 레코드가 선택되기 위해서 충족해야 하는 조건을 지정할 때 사용하며,  일반적으로 엑셀의 고급필터에서 조건 범위를 부여하는 것과 같다.

GROUP BY : 선택한 레코드를 특정 그룹으로 묶을때 사용한다.

HAVING : 그룹별로 만족될 조건을 지정할 때 사용

ORDER BY : 지정된 순서에 따라 선택된 레코드들을 오름차순 혹은 내림차순으로 정렬할 때 사용

 

SQL 명령(명령은 SQL 언어의 구성요소)

SQL 언어는 아주 단순한 몇 개의 명령으로 구성되어 있으며, 아래의 7가지가 가장 중요하다.

 

DDL 문

CREATE : 데이터베이스에서 새로운 무엇인가를 만들고 싶을 때 CREATE 문을 이용함.

DROP   : 데이터베이스에서 테이블이나 인덱스 등 무엇인가를 삭제할 때 DROP 문을 사용함.

ALTER   : 필드를 추가하거나 필드 정의를 변경할 때 사용함.


DML 문

SELECT : 특정 조건을 만족하는 데이터를 찾기 위해 데이터베이스에 질의할 때 사용함.

INSERT : 데이터를 데이터베이스에 한꺼번에 추가하려고 할 때 사용함.

UPDATE : 특정 레코드와 필드의 값을 변경할 때 사용함.

DELETE : 데이터베이스에서 레코드를 삭제할 때 사용함.

 

SQL 계산 함수(계산 함수는 SQL의 구성 요소 )

계산 함수는 레코드 그룹에 적용되는 단일 값을 반환하기 위해 레코드 그룹의 SELECT 절 안에서 사용함.

AVG : 평균을 구할 때 사용함.

COUNT : 레코드의 수를 구할 때 사용함.

SUM  : 특정필드의 모든 값의 합계를 구할 때 사용함.

MAX : 특정필드에서 가장 큰 값(최대값)을 구할 때 사용함.

MIN : 특정필드에서 가장 작은 값(최소값)을 구할 때 사용함.

 

 

SQL 연산자 (연산자는 SQL 언어의 한 구성 요소)

SQL 연산자는 크게 논리 연산자와 비교 연산자의 두 종류로 나눌 수 있다.

 

논리 연산자 : 이 논리 연산자는 WHERE 절 안에서 식을 연결할 때 사용함.

AND : 두 가지 조건이 모두 만족할 때 참을 반환하며,아닌경우는 거짓을 반환한다.

OR   : 두 가지 조건 가운데 어느 하나라도 만족하면 참을, 둘 다 만족하지 못하면 거짓을 반환한다.

NOT : 어떤 조건이 부정일 경우에만 참을 반환한다.

 

비교 연산자 : 비교연산자는 어떤 작업을 해야할 것인지 결정하기 위해 두 식의 상대 값을 비교할 때 사용함.

< 작다(미만)
<= 작거나 같다(이하)
> 크다(초과)
>= 크거나 같다(이상)
= 같다
<> 같지 않다
BETWEEN 두 범위 사이의 값
LIKE 패턴 매칭에 사용함.
IN  데이터베이스의 레코드를 지정할 때 사용함.

 

 


자 인제 위의 조건을 기본으로하여 엑셀 VBA을 활용한 불량관리 프로그램을 만들어 보도록 할 것이다.

 

불량율관리 프로그램 만들기 시리즈

 

1. 매크로의 이해

2. 절대참조와 상대참조

3. 조건절 if

4. 반복문 for - next

 

5. 조건문 select case

6. 데이터베이스의 구성

7. 유효성검사를 통한 입력 규칙만들기

8. 이중유효성검사 적용

 

9. 엑셀 데이터베이스 사용설정 적용하기

10. 분석툴 만들기

11. 데이터입력 행삽입 모듈만들기

12. 대용량 DB사용을 위한 SQL함수 알아보기

13. SQL 합수 프로그램에 적용하기

 

728x90
반응형
:
Posted by mapagilove
2014. 12. 29. 11:08

로또 630회 당첨번호 일 상 이야기2014. 12. 29. 11:08

728x90
반응형

 

 

 

로또 630회 당첨번호

 

로또 생각만해도 두근거리는 이번주 당첨 번호는 8,17,21,24,27,31 + 보너스번호는 15번이다.

 

 

1등 당첨자는 3명으로 1인당 48억 3,630만 5,500원을,

2등은 48명으로, 1인당 당첨금은 5,037만 8,183원을,

3등은 1,631명으로, 당첨금은 1인당 148만 2,620원이다.

 

 

4등 당첨자는 8만 4,380명이며,

5등은 142만 745명이라고 한다.

 

로또 당첨금 지급기한은 지급개시일로부터 1년이다.

 

 

 

 

 

 

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

 

 

[ 결혼 이야기 ] 웨딩촬영 및 예식장 준비

 

 

결혼을 함에 앞서 우선 지난번에 처럼 상견례가 되고 나면 여러가지 일들이 발생하게 되는 데 우선

결혼 예물과 여행준비 등에 앞서 결혼이 성스럽고 가족이 되는 중요한 자리인 만큼 그동안 쌓아온

사랑을 웨딩앨범에 담아 전시하여 하객들에게 보여드리게 된다.

 

 

그리고, 예식을 진행하여 서로에게 깊은 추억과 많은 사람들이보는 가운데 언약을 하여 지속적으로

사랑해 갈것을 약속하기 위한 것이 바로 결혼식이다.

 

 

아래는 웨딩촬영 및 예식장 준비하는 방법에 대하여 포스팅 해본다.

 

웨딩촬영 스튜디오 선택 방법

1. 취향에 맞는 샘플 앨범을 확인한다.

2. 구성과 가격을 꼼꼼히 체크한다.

3. 앨범구성과 패키지를 확인한다.

4. 샘플앨범 분위기와 기법을 확인한다.

5. 스투디오의 인테리어나 소품을 확인한다.

6. 인터넷을 통해 사전에 후기등을 확인한다.

 

 

 

예식장 선택방법

예식장은 결정시 여러가지 사항을 잘 체크해야 하며 양가 어른들을의 손님을 위한 장소로써 선택

해야하며 아래 내용들을 꼼꼼히 확인하여 불편이 없도록 해야한다.

모든 사항의 준비는 신랑과 신부가 머리가 아프더라도 꼼꼼히 잘 체크하여

서로가 일생에 한번있는 결혼을 준비해가는 과정이므로

다투지 않고 잘해가기를 바라는 마음에 포스팅을 마감한다.

 

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

 

 

 

[ 엑셀VBA 11 ] 불량관리 프로그램 만들기 - 데이터베이스 입력 행삽입 모듈 만들기

 

데이터베이스를 만들때 가장 중요한 것은 똑 같은 포멧으로 같은 방식으로 일정한 모드나 불량을 입력해

야 비슷한 모드들을 쉽게 모아서 내용을 분석하거나 하는데 사용할 수 있다.

 

그래서, 데이터베이스를 만드는 것은 목적에 맞게 모드나 유형을 지속적으로 정의 하고 분류하고 정리해

나가는 것이 좋은 데이터 베이스를 만드는 것이라 하겠다.

 

아래는 전 시간에 만들었던 유효성 검사를 통하여 만들었던 데이터베이스를 입력항목별로 선택하여 붙

여넣기 매크로 및 셀 선택 매크로를 사용하여 새로 입력할 행을 삽입하는 매크로를 만들어 본다.

 

 

 

 

 

먼저 시트를 선택한 다음 우측마우스 버튼을 눌러 코드보기를 선택한다.

 

 

왼쪽 모듈을 선택 후 우측마우스 버튼을 눌러 모듈을 추가한다.

 

insertRows 프로시져를 만든 다음

 

 

r = ActiveCell.Row                                                       ' r을 선태된 행으로 지정
ActiveCell.EntireRow.Insert                                            ' 전체 행을 삽입

ActiveSheet.Range(Cells(r - 1, 1), Cells(r - 1, 12)).Copy  ' 이전행을 복사
ActiveSheet.Range(Cells(r, 1), Cells(r, 12)).PasteSpecial Paste:=xlPasteFormats

                                                                              '형식을 새로 삽입한 행에 붙어넣기

ActiveSheet.Range(Cells(r - 1, 6), Cells(r - 1, 6)).Copy    ' 이전행을 6열 복사
ActiveSheet.Range(Cells(r, 6), Cells(r, 6)).PasteSpecial Paste:=xlPasteFormulas '6열의 다음에 수식붙이기

ActiveSheet.Range(Cells(r, 4), Cells(r, 4)).Select              ' 4번셀 선택
Application.CutCopyMode = False  복사 붙여넣기 모드 종료

 

 

insert.txt

 

 

 

다음은 버튼을 만들어 볼텐데요... 개발도구에서 삽입을 누른다.

 

개발도구가 없는 경우는 도구 기능에서 개발기능을 삽입한다.

 

 

삽입을 누르면 아래와 같은 양식 컨트롤 창이 나타난다.

 

 

하기와 같이 버튼을 만들고 행삽입이라고 이름을 입력한다.

 

행삽입 버튼을 선택한다음 우측마우스 버튼을 눌러 매크로지정을 선택한다.

 

 

insertRows 매크로를 선택한다.

 

 

자 인제 위의 매크로를 기준으로 위의 9열을 선택한 다음 행삽입 버튼을 누르면

 

9열에 위에서 입력한 서식과 유효성검사 목록, 수식만 복사하여 새로운

 

데이터를 입력할 수 있게 된다.

 

자세한 내용은 아래 첨부된 엑셀파일을 다운받아 확인해 보시길....

 

 

다음 강좌는 SQL을 활용한 분석 데이터 집게에 대하여 강의을 포스팅 할 예정이다.

 

 

Q-분석_데이터베이스_2014.12.17.xlsm

 

 

불량율관리 프로그램 만들기 시리즈

 

1. 매크로의 이해

2. 절대참조와 상대참조

3. 조건절 if

4. 반복문 for - next

 

5. 조건문 select case

6. 데이터베이스의 구성

7. 유효성검사를 통한 입력 규칙만들기

8. 이중유효성검사 적용

 

9. 엑셀 데이터베이스 사용설정 적용하기

10. 분석툴 만들기

11. 데이터입력 행삽입 모듈만들기

12. 대용량 DB사용을 위한 SQL함수 알아보기

13. SQL 합수 프로그램에 적용하기

 

728x90
반응형
:
Posted by mapagilove
2014. 12. 29. 08:27

각 지역의 일출시간 보기 일 상 이야기2014. 12. 29. 08:27

728x90
반응형

 

 

 

각 지역의 일출시간 보기

 

인제 얼마 안있으면 한해가 가고 새로운 해가 오는데 모두들 각 지역의 일출시간이 궁금할 것

 

같아 일출 일몰 시간을 찾는 방법을 포스팅 해본다.

 

 

방법은 아주 간단한데 네이버에서 일출 시간 혹은 일몰 시간으로 검색을 하면 아래와 같이

 

일출 일몰 계산기를 찾을 수 있다.

 

 

 

아래 일출 일몰 계산기에서 지역과 날짜를 입력하면

 

 

 

아래와 같이 일출 일몰시간이 정확히 나온다.

 

 

새로오는 한해에도 일출 구경하고 하여 새로운 마음으로

 

이루길 원하는 모든일 잘 성취하시길 바란다.

 

 

 

728x90
반응형
:
Posted by mapagilove
2014. 12. 29. 08:20

계족산 해돋이 - 대전 해돋이 명 소 이야기2014. 12. 29. 08:20

728x90
반응형

 

 

계족산 해돋이 - 대전 해돋이

 

 

2014년이 저물어가고 새롭게 2015년이 밝아 온다.  한해 안좋았던 일들은 모두 털어버리고

새로이 시작하기 위해 많은 사람들이 해돋이를 계획한다.

 

 

우리가족들은 올해에는 계족산 정상에서 해돋이를 하기로 계획했다. 대덕구의 일출시간은

7시45분이다.

 

 

작년에는 계족산에 4,000명 넘게 해돋이를 보기위해 모여 많은 행사를 했었던 것으로 기억

난다. 추위를 무릎쓰고 새해에는 새로운 마음으로 새출발?을 하기 위해서 정상에 모여 해가

돋는 광경으로 보고 기운을 받아 새롭게 시작할 것으로 보인다.

 

 

작년에는 구청장과 함께 공연, 포토존, 가족사랑 메세지, 떡국 나누기 등을 했던 것으로 보

인다.

 

 

 

 

계족산의 사계절을 느껴보세요.

 

http://mapagilove.tistory.com/entry/신년-계족산-해돋이산행-후기

 

http://mapagilove.tistory.com/entry/계족산-봄에-취하다

 

http://mapagilove.tistory.com/entry/계족산-정상에서-본-대전

 

http://mapagilove.tistory.com/entry/가을-계족산-10월의-계족산

 

http://mapagilove.tistory.com/entry/11월의-계족산-둘레길

 

http://mapagilove.tistory.com/entry/맛집과-명소-12-계족산-둘레길

 

http://mapagilove.tistory.com/entry/눈오는-계족산-등산하기

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