반응형

날짜 17

두 개의 표를 날짜에 따라 맞춰서 표시하기(1) - 개요

1. 문제 두 개의 표가 있는데 날짜의 개수가 다릅니다. 이 경우 날짜별로 짝을 맞춰서 오른쪽과 같이 표현하려고 합니다. 다시 말해, 왼쪽에는 1/11이 8개 있고, 오른쪽에는 1/11이 5개이므로 오른쪽 표에서 3개는 공란이 되어야 합니다. 2. 해결 방법 엑셀 함수로 하기에는 너무 어려울 듯합니다. 날짜별로 개수를 세서 한쪽이 부족할 때는 공란으로 채워야 하는데, 날짜도 무작위이고, 개수도 달라질 수 있으므로 VBA로 작성하는 것이 답일 듯합니다. 가. 날짜를 Dictionary에 저장 날짜를 배열에 담을 건지 여부를 판단해야 하는데, 고윳값을 저장하는 것은 Dictionary에 담는 것이 좋습니다. 나. 날짜 데이터 정렬 위 예제에서는 날짜를 정렬할 필요는 없지만, 어떤 경우가 생길지 모르니 날짜를..

EXCEL - VBA 2024.01.23

자료 형태가 다른 것 VLookup으로 검색하기

좌우 데이터가 좀 달라야 하는데 동일하게 만들었습니다. 다른 점은 형식이 왼쪽은 주계좌 및 서브계좌에 -이 있고, 오른쪽의 날짜가 날짜 형식이 아니라 문자로 되어 있어 변환이 필요한 상황입니다. 데이터 건수가 17951로 매우 큽니다. 1. 서브계좌 구하기 이와 같은 경우에 사용하는 함수가 VLookup입니다. 주계좌의 형식이 다르기 때문에 형식을 통일해야 하는데, 오른쪽 검색 범위는 바꿀 수 없으니 왼쪽 것을 Substitute 함수를 이용해 바꾸면 =substitute(a4,"-","")이 됩니다. 다시 말해 하이픈(-)을 공백으로 바꾸는 것입니다. 이제 Vlookup 함수와 결합하면 =vlookup(substitute(a4,"-",""),$a$4:$i$17951,2,0)이 됩니다. 그런데, 이상하게..

EXCEL - VBA 2023.11.20

계산 오류 원인 2 - 날짜를 문자로 입력

아래와 같이 근속 개월수 및 근속 연수를 계산하는데 같은 수식인데도 E3셀 등은 제대로 계산되는데, E5셀 등은 값이 #VALUE!로 표시됩니다. 그렇다면 수식에는 문제가 없는 것이고, 데이터의 문제입니다. 1. F9키로 문자인지 확인하기F9키를 누르면 셀 또는 수식의 결과를 알 수 있기 때문에 수식 입력줄에서 B5셀을 마우스로 끌어서 선택하고, F9키를 누르면 B5셀의 값이 큰 따옴표 안에 둘러 싸여져 있어 날짜가 아니라 문자임을 알 수 있습니다. 원래대로 돌리기 위해 Esc키를 누릅니다. 2. 문자를 숫자로 돌리기 위한 방법 1문자를 숫자로 변환하기 위한 방법은 두 가지를 생각할 수 있습니다. 가. F2키를 누른 다음 엔터 키 누르기B5셀을 마우스로 클릭해서 선택한 다음 F2키를 누르면 셀에 커서가 ..

Excel 2023.11.01

열이 다른 테이블(표)의 쿼리 추가

열이 동일한 경우의 병합에 대해서는 http://lsw3210.tistory.com/entry/%EC%BF%BC%EB%A6%AC-%EC%B6%94%EA%B0%80Vstack-%EA%B8%B0%EB%8A%A5%EC%99%80-%EB%B3%91%ED%95%A9Hstack-%EA%B8%B0%EB%8A%A5 쿼리 추가(Vstack 기능)와 병합(Hstack 기능) 파워 쿼리에는 표를 쿼리로 만들어 두 개 이상의 표를 결합, 다시 말해 열을 기준으로 아래에 데이터를 추가하거나, 행을 기준으로 오른쪽으로 데이터를 병합하는 기능이 있습니다. 1. 쿼리 추가 lsw3210.tistory.com 에서 다뤘는데, 이번에는 열 이름이 다른 표를 추가하는 것을 해보겠습니다. 아래 파일은 쿼리 추가와 병합에만 집중할 수 있도록..

Unique 함수와 데이터 유효성 검사의 문제점

1. 데이터 유효성 검사 - 날짜 목록아래와 같이 날짜별 지점별 판매량 데이터가 있을 경우 E2셀을 클릭하고, 데이터 탭, 데이터 도구 그룹, 데이터 유효성 검사 명령을 누른 후 제한 대상으로 목록을 선택하고, 원본에 커서를 넣고, A열을 클릭해서 A열 모두로 지정하고 확인 버튼을 누르면, 유효한 데이터만 표시되고, 아래에 공백이 없습니다. 날짜가 모두 표시되지 않으므로 E열 오른쪽의 경계선을 오른쪽으로 끌어서 너비를 조절합니다. 이때 열 너비를 자동 조절하기 위해 E열과 F열의 경계선을 더블 클릭하면 오히려 선택된 값에 맞게 좁아져서 안됩니다. 이때 홈 탭, 표시 형식 그룹에서 표시 형식을 숫자에서 간단한 날짜로 변경하면 열 너비가 자동 조절됩니다. 2. Unique 함수를 사용해 목록을 만들 경우 문..

Excel 2023.05.17

DateValue, TimeValue : 텍스트 형식의 날짜, 시간을 정수 또는 소수로 변환

1. 구문 DATEVALUE(date_text) TIMEVALUE(time_text) 문자열로 되어 있는 날짜 또는 시간을 정수 또는 소수로 변환해서 날짜, 시간 표시형식으로 바꿀 수 있도록 하는 함수입니다. 날짜는 1900/1/1부터 9999/12/31까지 가능하고, 시간은 0:00:00부터 23:59:59까지 가능합니다. 그렇다면 24:00:00가 없으므로 다음 날 0:00:00으로 바꾸는 특별한 처리가 필요합니다. 2. 예제 가. 텍스트 날짜, 시간을 DateValue, TimeValue 함수 내에 입력 (1) DateValue 함수 직접 DateValue함수 내에 날짜를 큰따옴표 안에 넣어서 입력할 수 있습니다. 그러면 정수 45029가 반환되며, 홈 탭 > 표시 형식 그룹에서 일반을 간단한 날짜..

Excel 2023.04.13

영업일 기준 전후 날짜 구하기 - Workday, Workday.Intl 함수

Edate함수는 월을 기준으로 앞뒤 날짜를 구해주는데, 영업일을 제외하지 않습니다. 따라서, 영업일 기준으로 날짜를 구할 필요가 있습니다. 1. 구문 WORKDAY(start_date, days, [holidays]) WORKDAY.INTL(start_date, days, [weekend], [holidays]) WORKDAY와 WORKDAY.INTL의 다른 점은 WORKDAY.INTL은 국가별 특성을 고려할 수 있는 Weekend 인수가 있다는 점입니다. - start_date는 Edate와 같습니다. - days : 두 번째 인수가 days(일)로 months(월)를 인수로 하는 Edate함수와 대비됩니다. - holidays : 엑셀에서 사용하는 일반적이 휴일 이외에 추가로 휴일을 지정할 수 있습니..

Excel 2023.04.12

숫자로만 된 날짜+시간을 날짜, 시간 형식으로 바꾸기

아래와 같이 날짜 및 시간이 연속해서 연결되어 있는 경우 엑셀에서는 날짜, 시간으로 인식할 수 없으므로 엑셀에서 인식할 수 있는 yyyy-mm-dd hh:mm:ss로 바꿔줘야 합니다. A2셀의 숫자를 보면 20200725가 날짜이고, 14가 시간에 해당됩니다. 1. 날짜 변환을 위한 함수 날짜 변환을 위한 함수는 Date와 DateValue가 있습니다. Date와 DateSerial함수의 인수는 둘 다 year, month, day이고, DateValue의 인수 date_text, 다시 말해 날짜 형식의 텍스트입니다. 2. 시간 변환을 위한 함수 시간 변환을 위한 함수는 Time과 TimeValue가 있습니다. Time 함수의 인수는 hour, minute, second이고, TimeValue의 함수는 ..

Excel 2023.02.26

텍스트로 인식되는 날짜 데이터 피벗 만들기

아래와 같이 날짜가 텍스트로 인식되는 경우 피벗 테이블을 만들어 보겠습니다. 1. 날짜가 텍스트로 인식되는 경우 피벗 테이블 만들기 가. 기존 워크시트에 피벗 테이블 만들기 A1셀부터 D16셀까지 범위를 지정할 필요 없이 표 안에 어디든, 예를 들어 B2셀에 커서를 넣고 삽입 > 피벗 테이블을 누릅니다. 이때 피벗 테이블 아래 꺾기 부분을 누르면 테이블/범위에서와 외부 데이터 원본에서 란 옵션이 표시되는데 테이블/범위에서를 선택할 것이기 때문에 아래 꺾기 부분을 누르지 말고 윗부분을 누르는 것이 단계를 축소하므로 좋습니다. 그러면 '표 또는 범위의 피벗 테이블'창이 열리는데, 표/범위가 A1에서 D16으로 자동 지정되고, 아래에 피벗 테이블을 배치할 위치를 묻는데 '새 워크시트'와 '기존 워크시트'가 있..

Excel 2022.12.26

숫자와 날짜가 텍스트로 처리될 때

일반적으로는 숫자나 날짜를 입력하면 숫자나 날짜로 입력되고 처리되는 것이 맞는데 시스템으로 다운로드한 파일인 경우는 그게 잘 안 되는 경우가 있습니다. 숫자는 간단하기 때문에 날짜만 다뤄보겠습니다. 위 파일을 열어보면 B2셀의 값이 2014-11-06이고, 표시 형식 그룹을 보면 날짜로 제대로 설정되어 있습니다. 그러나, B2셀부터 마우스로 B4셀까지 끌면 합계는 표시되지 않고, 개수 : 3으로 표시됩니다. 위와 같이 날짜가 계산되지 않고 개수로 보이는 것은 날짜가 날짜처럼 보이지만 실제로는 텍스트이기 때문입니다. 따라서, 날짜를 먼저 숫자로 바꾸고 표시 형식을 다시 날짜로 바꾸면 됩니다. 1. Value 함수 이용하기 (방법 1) E2셀에 =value(b2)라고 입력하거나, (방법 2) =val까지 입..

Excel 2022.12.21
반응형