DB구축 7. 필드 - 매크로 작성기

InPutBox형태로 입력받아 처리하는 것

: 원래대로라면 파일 경로 쓰게끔 되어있는 '출력파일' 란에 아래를 쓸 것.

= inputbox("저장할 파일이름을 쓰시오" & chr(13) & "C:\학생테이블.xlsx로 저장하시오")


= inputbox("들어갈 텍스트")

이 때 chr(13)은 한줄 아래로 띄는 것



입력수정 3. iif쓰는거

순차대로 하는게 답인데

=IIf([평균]>=80,"A",IIf([평균]<70,"C","B")) 도 결과는 같음


(질문) 시험장에서 오답처리 되려나?



입력수정 4. 필드 - 컨트롤 원본

=Format(Count(*),"총원 0명") 이라고 썼는데 채점기가 틀렸다고 함. (답은 #명)



처리기능 1. SQL문 이용하는 것


DoCmd.RunSQL "delete * from 학과 where 학과코드 = txt_학과코드"


-> DoCmd.RunSQL "delete * from 학과 where 학과코드 = 'txt_학과코드'"

    (txt학과코드의 컨트롤원본은 <학과>테이블의 [학과코드]인데, 여기 데이터형식이 '텍스트'로 되어있으므로 작은 따옴표 해주기)


-> DoCmd.RunSQL "delete * from 학과 where 학과코드 = '" & txt_학과코드 & "'"



처리기능 2. 불일치쿼리 만들기



방법1) Not in (Select 필드명 from 테이블명)


방법2) 조인속성 설정한 후,  Is Null 이용







<SQL문>


SQL문의 유형 (시작단어)

 설명

 쿼리종류

 select

 조건에 맞는 데이터 선택

 선택 쿼리

 insert

 새로운 데이터 삽입

 추가 쿼리

 update

 기존 데이터 수정

 업데이트 쿼리

 delete

 기존 데이터 삭제

 삭제 쿼리



SQL 직접 입력하기

: select 필드명 from 테이블명 [where 검색조건 group by 필드명 order by 정렬기준필드명 asc/descㅈ


* 필드명이나 정렬기준필드명을 여러개 입력하려면 쉼표(,) 로 구분한다


* 다른 필드에서 제시값을 가져와야 할 때는 sql문 이용 (select 필드명 from 테이블명)

이 때에는 기호에 =, <> 대신 In(), Not in() 사용

불일치쿼리 만들 때 in, not in 사용함








 

posted by 삼토




(주의)

왜 1번이 틀렸나 했는데 정렬이 안되어있다.

분명히 눌렀다고 생각했는데.

쉽다고 너무 빨리 넘기지 말 것.


계산작업5

배열수식의 문법을 헷갈린듯.

MAX((조건)*구할범위)



분석작업1

피벗테이블 또 틀림.

다 맞게 한듯한데?

해당 파일 가져가서 2007로 다시 돌려볼 것.



기타작업4

도형스타일 어디서 바꾸는지 이제야 알았다.

위쪽 리본메뉴임.

[차트도구]-[서식]-[도형스타일]




기타작업6 (맞음) --- 따라서 간당간당 합격.ㅋ












posted by 삼토




기본작업2 (채점오류)

A26셀에는 아무거나 해도 상관없음.

꺄 그럼 81점




계산작업1 (채점기가 잡아내지 못했으나 틀림)

도로 75점

이건 내가 임의로 표2를 오름차순으로 조정해서 결과는 맞게 나옴.


사이값이 있으니까 유사일치로 해야하고,

유사일치는 오름차순에 적용되어야 하는데

내림차순으로 되어있네? 바꿔야지! --> 그래서 틀림.


함정은 사이값 없는데 빨리 풀려다가 잘못 봄.

VLOOKUP, HLOOKUP에서 사이값 없을 때는 정확일치 사용하면 됨.




분석작업1

: 전체에 대한 비율이면 새로 만들지 말고 있는 필드를 한번 더 잡아 끌어두자.


(주의) 수식을 이용해서 필드이름을 '가격비율'로 명명했더니

합계: 가격비율 로만 표기됨. 이렇게 하는거 아님.


(질문) 엑셀2016버전으로 했더니 위에 레이블 자리에 '값'이라는 표시가 안나타남.



분석작업2

매크로 두번째 세번째 만들어서 틀릴줄 알았는데 맞게 처리됨. ?? 어리둥절







기타작업2

차트제목에 셀 연결하기

: 텍스트상자가 아니라 수식입력줄에 = 입력







기타작업4

눈금선을 삭제하라고 했는데,

눈금선 서식에 가서 '선없음'을 선택해서 틀림.

선만 안보이게 하라는게 아니라 눈금선 삭제하라고 했으니까 지울 것!!!




기타작업6

셀에서 가져오라고 했음.






posted by 삼토




계산작업1

IF함수의 False 뿐 아니라, True 값 자리에도 복IF함수 들어갈 수 있다.


계산작업2

- VLOOKUP함수 사용할 때 범위지정 실수

- 마지막 인수 입력할 때, 표에 '5이상'이라는 항목이 있으므로 오름차순으로 찾는 '1'을 써줘야했음. 0이 아니라.

 


계산작업5

조제날짜를 지정해야하는데 생년월일 지정. 정신빠져서


피벗테이블1

피벗테이블에서 하나 나가면 답없다

그런데 은근히 어려운 것 한두개씩 넣는듯하다


새로운 계산필드를 추가하려면

: [피벗테이블도구]-[옵션]-도구-수식-계산필드



차트-X축제목 깜빡하고 안씀



프로시저는 시간 모자라서 하나만 맞춤

* 답지대로 "opt건강보험" 이라고 쓰면 틀림.

문제와는 달리 컨트롤명이 "opt건강" 이라고 되어있음.  -_-









posted by 삼토






계산작업 5

병원비의 30번째 백분위수를 어떻게 지정함??

: 개념을 사분위수와 헷갈리면 안됨.

백분위수는 % 의미하니깐 30% 라고 생각하고 0.3 지정할 것.



분석작업1

'피보험자와의 관계'라는 이름 대신 '열레이블'이라고 표시되려면?

: 반대로 열레이블 대신 '피보험자와의 관계'를 표시하고 싶으면 레이아웃 손보면 됨.

즉, 레이아웃 건들지 말아야 하는데 건드렸다.



분석작업2

통합 시 표가 분리되어 있으면 어떻게 함?

: 참조눌러 추가하고, 또 참조눌러 추가한다.

표 개수만큼 리스트상자에 추가되어 있도록 한다



기타작업6

기타작업7

- 각 목록의 첫번째 항목이 선택되도록 지정하는 것

: lst공제액.List(0, 0) = True (X) ----> lst공제액 = lst공제액.List(0, 0) (O)

        cmb보험분류 (콤보상자)에도 이런 식으로 List 쓰니까 적용됨. 따라서 사용가능함.


- 병원비를 입력하지 않았거나 입력한 값이 0이면 메시지 박스 표시

: cells(행,5) 뿐 아니라 나머지 cells들도 IF문 안에 포섭시켜야 함.

  왜??




기타작업8

posted by 삼토





계산작업 3. 서두르다가 IFERROR 깜빡하고 안써줌

계산작업 4. SELECT CASE문이 숙지되지 않았다

계산작업 5. 문제 잘 안 읽어서 다른 열로 입력. 맞을 문제였는데 아까비


기타작업 6. select문을 숙지하지 못함 + change이벤트라는 말을 못알아들었음


기타작업 7. 어차피 윗문제를 못풀어서 포기.


기타작업 8.







[질문] (기타작업7)

case문 쓸 때 원래는 case "과학"인데

case is = "과학"이라고 써도 답은 제대로 나옴.

그런데 채점하면 틀리는지




[질문](기타작업 8)

1) [F2] = Date 와 unload me  순서 바꿔도 상관없는지? (답은 순서바꿔도 상관없이 잘 나옴)


2) [F2] 대신 cells(2,6) 썼는데 괜찮은지












posted by 삼토

<최신기출문제3회>


기본작업2. 고급필터


[질문]

조건부 서식이었다면 

$F3>=AVERAGE($F$3:$F$29)이어야 함.

그런데 고급필터는 

F3>=AVERAGE($F$3:$F$29) 만 해도 답이 나옴.

그러면서도 전체범위(F3:F29)만큼은 절대참조해줘야 함.

왜??ㅇㅅㅇ


** 어쨌든, 조건부 서식에서는 절대참조 꼭 주의하자





계산작업3. 


If 회원리뷰수 >= 80 And 판매량 >= 6000 Then


    fn비고 = "추천"

    

ElseIf 회원리뷰수 >= 80 And 판매량 < 6000 Then


    fn비고 = "관심도서"

    

ElseIf 회원리뷰수 < 80 And 판매량 >= 6000 Then

    

    fn비고 = "인기도서"

    

Else


    fn비고 = ""

    

End If


에서 굳이 And 판매량 < 6000  부분과,

회원리뷰수 < 80 And 부분을 써줄 필요 없음.

이미 앞에서 둘다 80이상, 6000이상인 경우를 가정했고

Else를 썼으므로 >=80하나만 써도 

>=80 이면서 >=6000인 경우는 아예 배제된다.




분석작업2. 매크로


매크로 작성시 기록 삭제하고 다시 시작해도 감점 안되는지





기타작업 2. 

LIstindex : 목록상자에서 선택한 값의 위치 값을 숫자로 반환

List(행,열) : 목록상자의 해당 위치의 값을 반환


* currentregion 등을 쓰란 말은 없었지만 쓸수 있음


도서분류를 선택하지 않은 경우

: if lst도서분류 = isnull  (x)


 if IsNull(lst도서분류)

posted by 삼토


티스토리 툴바