실기만 눈앞에 두고 있는데 혼자 독학을 해서 그런지
다소 헷갈리는게 있습니다.
엑셀, 엑세스를 공부하다보면 프로그래밍을 하는 문제가 많이 나오는데
이때 프로그래밍별 문법사용이 헛갈립니다.
1. select case, for each, for each aa ~~~, 등등 다양한 함수에 대한 이해를 하고 싶습니다.
(링크도 괜찮은데 부디 들어가면 바로 내용이 나오게 해주셨으면 합니다.)
특히 select case문이 사용자 지정함수(모듈) 때랑, vba언어 작성할때 다르던데 정확히 어떨때 다른건지 알고 싶습니다.(둘 다 vba같은데..)
2. 프로시저 = vba인가요?
3. 이게 정말 궁금한데요. SQL문에서는 필드와 컨트롤을 변수선언으로 취급해서 특별히 작은따옴표나 대괄호를 씌워주지 않는다고 배웠습니다. 필드는 그냥 냅둬도 엔터누르면 자동으로 바뀌는데 컨트롤상자가 문제입니다.. 언제는 문자열 취급해서 '" & txt이름 & "'"처럼 만들고 언제는 그냥 txt이름으로 쓰는데 정확히 언제 그렇게 만드는지 알고 싶습니다.
+
컨트롤을 프로시저에서만 사용하면 좋을텐데 쿼리작성할때 조건으로 쓰거나 레코드원본으로 컨트롤을 써서 문자열로 바꿔야하는지 그냥 쓰는게 맞는지 헷갈립니다.
제가 알고 있는 지식
조회쿼리(recordsource, filter, bookmark, ado개체일때는 컨트롤을 문자열취급)
데이터베이스 함수에서 컨트롤 사용시 문자열취급('" & txt이름 & "'")
자세한답변 부탁드립니다!!
안녕하세요.
1. 시험에서는 제한된 영역에서 출제되는 편이니 책을 활용해서 공부하시는 것이 효율적일 것 같습니다.
엑셀 함수는 부록의 함수 사전을 이용해 주시구요,
액세스는 책 p.106~p.109에 간략하게 정리되어 있습니다.
참고해 주세요.
함수는 결국 연습을 통해 익숙해 지셔야 할 것 같아요.
2. 프로시저는 한 개 이상의 기능을 수행하기 위한 명령문의 집합입니다. 엑셀의 프로시저를 VBA를 이용해서 작성하는 것이구요.
3. 필드명을 입력할 때는 대괄호([ ])로 묶고, 단순 텍스트를 입력할 때, 그리고 DSUM, DAVG 같은 도메인 함수에서 필드명을 입력할 때는 큰따옴표(“ ”)로 묶 어서 입력합니다.
프로시저에서의 컨트롤 분리는 액세스 책 p.181쪽에 자세히 설명되어 있습니다.
요약하자면...아래와 같습니다.
- 우선 분리하지 않고 상품코드=txt상품코드 와 같이 사용하는 경우는
Docmd를 이용하는 RunSQL이 있습니다.
Docmd.RunSQL "Delete * from 상품 where 상품코드 = txt상품코드" 와 같이 사용됩니다.
- 상품코드="' & txt상품코드 "'" 처럼 반드시 분리하여 연결하는 경우는 3가지가 있습니다.
-> Docmd를 이용한 RunSQL문이지만, 폼의 컨트롤이 아닌 프로시저에서 선언한 변수를 사용한 경우
(프로시저에서 선언한 변수는 Docmd.RunSQL을 사용하기 전에 필요에 의해 만들어진 변수를 의미합니다.)
-> Me.Filter를 사용하여 조회문을 입력할 경우
-> RecordSource, RowSource에 SQL문을 입력할 경우
많은 도움 못 드린 것 같네요. 힘내시고 좋은 하루 보내세요.
-
*2018-08-05 21:17:51
안녕하세요.
1. 시험에서는 제한된 영역에서 출제되는 편이니 책을 활용해서 공부하시는 것이 효율적일 것 같습니다.
엑셀 함수는 부록의 함수 사전을 이용해 주시구요,
액세스는 책 p.106~p.109에 간략하게 정리되어 있습니다.
참고해 주세요.
함수는 결국 연습을 통해 익숙해 지셔야 할 것 같아요.2. 프로시저는 한 개 이상의 기능을 수행하기 위한 명령문의 집합입니다. 엑셀의 프로시저를 VBA를 이용해서 작성하는 것이구요.
3. 필드명을 입력할 때는 대괄호([ ])로 묶고, 단순 텍스트를 입력할 때, 그리고 DSUM, DAVG 같은 도메인 함수에서 필드명을 입력할 때는 큰따옴표(“ ”)로 묶 어서 입력합니다.
프로시저에서의 컨트롤 분리는 액세스 책 p.181쪽에 자세히 설명되어 있습니다.요약하자면...아래와 같습니다.
- 우선 분리하지 않고 상품코드=txt상품코드 와 같이 사용하는 경우는
Docmd를 이용하는 RunSQL이 있습니다.
Docmd.RunSQL "Delete * from 상품 where 상품코드 = txt상품코드" 와 같이 사용됩니다.
- 상품코드="' & txt상품코드 "'" 처럼 반드시 분리하여 연결하는 경우는 3가지가 있습니다.-> Docmd를 이용한 RunSQL문이지만, 폼의 컨트롤이 아닌 프로시저에서 선언한 변수를 사용한 경우
(프로시저에서 선언한 변수는 Docmd.RunSQL을 사용하기 전에 필요에 의해 만들어진 변수를 의미합니다.)
-> Me.Filter를 사용하여 조회문을 입력할 경우
-> RecordSource, RowSource에 SQL문을 입력할 경우
많은 도움 못 드린 것 같네요. 힘내시고 좋은 하루 보내세요.