엑셀 -> 엑세스 연동할때 날짜 필드 공백이 있으면 오류가 납니다.

VBA
작성자
아옹옹
작성일
2022-11-07 18:13
조회
98
엑셀버전 : 엑셀2019

운영체제 : 윈도우10

질문 요약 : 엑셀 엑세스 연동, 날짜/시간 필드 공란일 때 오류

엑셀 표 데이터를 엑세스 DB로 옮기는 구문을 작성하고 있는데요.

엑세스 필드값이 날짜/시간으로 정의된 필드열에 공란이 있는 경우에

에러가 뜹니다.

여기서, StrTable에는 테이블명이,

TblColStr에는 필드 아이디들이,

TblCont(i,j)에는 표의 각 행열 내용들이 들어갑니다.

최악의 경우에는 연동할 때 엑세스 필드 형식을 숫자로 해버리면 되겠지만, 후처리가 복잡해져서

가급적 엑세스 필드 형식을 날짜/시간으로 하고 싶어요.

해결 방법이 없나요?

 

For i = 1 To TblRowLen '입력SQL 구문 : Insert into [ 테이블명 ] (필드 아이디1, 아이디2, ...) values ('필드값1', '필드값2')

StrSQL = "Insert into [" & StrTable & "]" & TblColStr & "values ("

For j = 1 To TblColLen

StrSQL = StrSQL & "'" & TblCont(i, j) & "',"

Next j

StrSQL = Left(StrSQL, Len(StrSQL) - 1) + ")" '마지막 콤마 제거

AdoCon.Execute StrSQL

Next i

스크랩
공유
회원등급 : 3레벨
포인트 : 85 EP
총질문 : 2 개 (마감율 : 100%)
채택답변 : 0 개
전체 7

  • 2022-11-07 22:19

    @아옹옹 님 엑세스에 날짜관련 CRUD를 할 때는 #2022-11-07 22:18:23# 이런식으로 "#"이 있어야 합니다. 날짜는 포맷의 형태로 저장되는 것이 아니라 숫자로 저장됩니다.


    • 2022-11-08 06:55

      @dra**** 님 답변 정말 감사드립니다! 제가 구체적으로 설명 못해놓아서 죄송하네요 ㅠㅠ 엑세스 상에서 제가 미리 테이블도 만들고 데이터 형식도 정의해 놓았습니다.  이상태에서 예를들어 "엑세스  표"에 데이터를 입력할 때 날짜에 공란을 놔둬도 오류 발생이 없는데, 저렇게 VBA로 "엑셀 표"의 날짜 필드 자리에 공란을 넣게 되면 VBA 수행 시 즉, "엑셀 표" -> "엑세스 표"로 넘길 때 공란이 있을 시 오류가 나는 상황입니다 ㅠㅠ. 그리고 Table value 자리에 강제로 "#" & "#"으로 둘러싸게 IF문으로 추가도 해보았는데 공란 자체가 안되는거 같네요 ㅠㅠ


      • 2022-11-08 09:20
        채택된 답변

        @아옹옹 님 날짜가 들어 있는 셀에 데이터가 없는데, 이를 INSERT문의 데이터로 집어 넣은 것 처럼 보입인다. 그런 경우 ... VALUES (..., Null, ..)을 집어 넣도록 설계를 해보시는 것이 어떨까요?

        필드 설계시, 아래 그림의 빨간색 부분도 체크해 보시고요

        공란인 경우 "##" 이렇게 넣으면 당연히 에러 납니다.

         

        위의 코드 실행 결과로 만들어진 SQL문 올리시면 빠른 답변을 구하실 수 있을 겁니다.


        • 2022-11-08 22:43

          @dra**** 님 정말 감사합니다. IF문으로 공란을 다 "Null"로 만드니 해결되었습니다. 복받으세요!!


        • 2022-11-09 18:08

          @dra**** 님 날짜는 null 처리 해줘야 하는군요 좋은 내용 공유해주셔서 잘 배웠습니다


  • 2022-11-07 22:18

    @아옹옹 님 필드 형식은 입력하는 단계가 아닌 테이블 생성단계에서 적용해야 됩니다

    https://learn.microsoft.com/en-us/office/vba/access/concepts/structured-query-language/modify-a-table-s-design-using-access-sql

    ALTER TABLE 테이블 ALTER COLUMN 필드 DATE

    위 시퀄문 사용해보시고 기존 데이터에 날짜형식이 아닌게 있을경우, 당연하겠지만 오류가 발생합니다.


    • 2022-11-08 06:58

      @고양이냐옹 님 답글 감사드립니다 ㅠㅠ. 제가 자세히 설명을 못드려서 죄송하네요.. 일단 제가 미리 ACCDB를 만들어 놓은 상태라 물론, 필드 형식이 다 엑세스 테이블에서는 적용되어 있는 상황입니다. 이상한게, 엑세스 표에서 필드값을 입력하면 날짜에 공란이 허용되는데, 엑셀 표에서 날짜에 공란을 입력한 후에, 위의 vba를 돌리면 값 에러가 나서요...


전체 8,690
번호 카테고리 제목 작성자 작성일 추천 조회
알림
🎉 오피스 분야 30주 연속 1위! - 「 진짜쓰는 실무엑셀 」 전자책이 출간되었습니다! (37)
오빠두엑셀 | 2022.09.28 | 추천 9 | 조회 3292
오빠두엑셀 2022.09.28 9 3292
공지사항 공지사항
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐ (110)
오빠두엑셀 | 2021.10.28 | 추천 137 | 조회 8819
오빠두엑셀 2021.10.28 137 8819
45457 함수/공식
New 두 셀 문자를 한셀로 가져오면서 줄바꿈과 괄호가 삽입되게 할 수 있을까요? 엑셀파일첨부파일 (2) 답변완료
초코우유 | 2022.12.09 | 추천 0 | 조회 31
초코우유 2022.12.09 - 31
45456 피벗테이블
New 피벗테이블 설문조사 문항별로 모든 사람의 5점척도 응답값들을 가져오고 싶습니다. 엑셀파일 (2) 답변완료
dissim**** | 2022.12.09 | 추천 0 | 조회 17
dissim**** 2022.12.09 - 17
45452 함수/공식
New 자동으로 조건별 정렬이 되도록 보고싶어요 엑셀파일첨부파일 (6)
짱구는옷말려 | 2022.12.09 | 추천 0 | 조회 41
짱구는옷말려 2022.12.09 - 41
45451
New 매크로 파일 버튼이 작동을 안합니다. 첨부파일 (1)
강홍구 | 2022.12.09 | 추천 0 | 조회 25
강홍구 2022.12.09 - 25
45449 VBA
New 엑셀(EXCEL) Worksheet_SelectionChange VBA관련 엑셀파일첨부파일
woooooo.m | 2022.12.09 | 추천 0 | 조회 32
woooooo.m 2022.12.09 - 32
45448 VBA
New VBA 에서 Call Shell로 링크를 끌어오려하는데 현재 Month -1 에 해당하는 데이터를 불러오고 싶어요
Taee | 2022.12.09 | 추천 0 | 조회 20
Taee 2022.12.09 - 20
45447 VBA
New 값을 찾아올때, 음영색깔도 그대로 가져오기 엑셀파일 (1)
RED HERO | 2022.12.09 | 추천 0 | 조회 34
RED HERO 2022.12.09 - 34
45446 함수/공식
New 2개의 조건과 일치하는 대상자들의 중앙값구하기 엑셀파일 (2) 답변완료
willow**** | 2022.12.09 | 추천 0 | 조회 28
willow**** 2022.12.09 - 28
45445 함수/공식
New QR코드함수 관련 한글깨짐 현상 엑셀파일첨부파일 (2)
쿠키바삭 | 2022.12.09 | 추천 0 | 조회 21
쿠키바삭 2022.12.09 - 21
45437 함수/공식
New 특정단어 입력시 시트2에 표기법 엑셀파일 (3)
자유 | 2022.12.09 | 추천 0 | 조회 34
자유 2022.12.09 - 34
45436 함수/공식
New 조건에 따른 평가점수의 중앙값을 구하는 방법을 알고싶어요 엑셀파일 (2) 답변완료
willow**** | 2022.12.09 | 추천 1 | 조회 19
willow**** 2022.12.09 1 19
45435 함수/공식
New 엑셀 속도 관련 질문입니다. (용량이 큰 엑셀파일을 어떻게 관리해야할까요?) (2)
정지훈 | 2022.12.09 | 추천 0 | 조회 29
정지훈 2022.12.09 - 29
45433 기능/도구
New 체크박스와 필터링 문제 엑셀파일첨부파일 (1)
꽃받침 | 2022.12.09 | 추천 0 | 조회 29
꽃받침 2022.12.09 - 29
45432 함수/공식
New 월별 매출액 자동 합산 엑셀파일 (3) 답변완료
더데빌 | 2022.12.09 | 추천 0 | 조회 27
더데빌 2022.12.09 - 27
45429 파워쿼리/피벗
New 네이버 메일 열기 첨부파일 (2)
옥산이 | 2022.12.09 | 추천 0 | 조회 23
옥산이 2022.12.09 - 23
45422 함수/공식
New SUMPRODUCT 행열 조건식 덧셈 사용시 #VALUE 문제 엑셀파일 (4) 답변완료
김동연 | 2022.12.09 | 추천 0 | 조회 23
김동연 2022.12.09 - 23
45421 함수/공식
New 공백제외하고 셀의 내용을 합치는 함수 알고싶습니다.(두줄당하나로) 첨부파일 (3)
고독한술한잔 | 2022.12.09 | 추천 0 | 조회 28
고독한술한잔 2022.12.09 - 28
45418 함수/공식
New 일자별로 합계구하고싶어요 엑셀파일첨부파일 (2)
엑셀잘할래요 | 2022.12.09 | 추천 0 | 조회 33
엑셀잘할래요 2022.12.09 - 33
45416 함수/공식
New sumifs와 sumproduct 사용법 질문입니다. 첨부파일
PQDL | 2022.12.09 | 추천 0 | 조회 22
PQDL 2022.12.09 - 22
45413 VBA
New 매크로 기능을 사용하면 매크로 파일(XLSM)이 갑자기 켜집니다 (1)
바네 | 2022.12.09 | 추천 0 | 조회 28
바네 2022.12.09 - 28
45412 함수/공식
New 절대값 음수 시간 합계 표시 질문입니다. 엑셀파일첨부파일 (7)
힙합매냐 | 2022.12.09 | 추천 0 | 조회 32
힙합매냐 2022.12.09 - 32
45410 함수/공식
New indirect 함수 상대참조 엑셀파일첨부파일 (1)
마마마 | 2022.12.08 | 추천 0 | 조회 27
마마마 2022.12.08 - 27
45409 함수/공식
New 다중조건 첨부파일 (1)
김미영 | 2022.12.08 | 추천 0 | 조회 30
김미영 2022.12.08 - 30
45399 함수/공식
New 제시간에 퇴근하고싶어요 엑셀파일 (2)
taegshin kim | 2022.12.08 | 추천 0 | 조회 63
taegshin kim 2022.12.08 - 63
45398 기능/도구
New 목록명이 다른 데이터 통합방법 첨부파일 (2)
will12**** | 2022.12.08 | 추천 0 | 조회 32
will12**** 2022.12.08 - 32
45397 함수/공식
New 산출식이 들어 있는 값으로 표시 엑셀파일첨부파일 (2)
바른나무 | 2022.12.08 | 추천 0 | 조회 31
바른나무 2022.12.08 - 31
45394 함수/공식
New 여러수식의 범위값을 연동해서 변경하는 방법 있을까요 (4) 답변완료
하이롭 | 2022.12.08 | 추천 0 | 조회 37
하이롭 2022.12.08 - 37
45390 함수/공식
New 조건에 맞는 값 구하기 첨부파일
노갈 | 2022.12.08 | 추천 0 | 조회 45
노갈 2022.12.08 - 45
45389 문서서식
New 기존에 인쇄 되어있는 용지를 넣고 출력할때 원하는 위치에 글씨 입력하는 방법 (1)
willow123 | 2022.12.08 | 추천 0 | 조회 21
willow123 2022.12.08 - 21
45388 함수/공식
New 여러가지 조건 함수 첨부파일 (7)
지니 | 2022.12.08 | 추천 0 | 조회 40
지니 2022.12.08 - 40