메인 컨텐츠로 가기

Excel에서 두 날짜 사이의 모든 날짜를 나열하는 방법은 무엇입니까?

작가: 썬 최종 수정 날짜: 2020-05-22

경우에 따라 특정 시작 날짜와 종료 날짜가있는 경우 Excel에서 지정된 두 날짜 사이의 모든 날짜를 나열해야 할 수 있습니다. 이제이 자습서에서는 Excel에서 두 날짜 사이의 모든 날짜를 나열하는 방법에 대해 설명합니다.

두 날짜 사이의 모든 날짜를 수식으로 나열

VBA별로 두 날짜 사이의 모든 날짜 나열

Excel 용 Kutools로 두 날짜 사이의 모든 날짜 나열 좋은 생각 3


여기에서는 Excel에서 주어진 두 날짜 사이의 모든 날짜를 빠르게 나열 할 수있는 수식을 소개합니다.

1. 시작일과 종료일을 두 개의 셀에 입력합니다. 여기서는 A1과 A2 셀에 입력합니다. 스크린 샷보기 :
doc-list-all-dates- between-two-dates-1

2. 그런 다음 C1 셀로 이동하여이 수식을 입력합니다. = A1 + 1 그것을 클릭 한 다음 엔터 버튼 키. 스크린 샷보기 :
doc-list-all-dates- between-two-dates-2

3. 그런 다음 C2 셀에 다음 수식을 입력합니다. =IF($A$1+ROW(A1)>=$A$2-1,"",C1+1) 그런 다음 빈 셀이 나타날 때까지 자동 채우기 핸들을 셀 아래로 끕니다. 스크린 샷보기 :

doc-list-all-dates- between-two-dates-3       doc-list-all-dates- between-two-dates-4

그러면 주어진 두 날짜 사이의 모든 날짜가 열에 나열되는 것을 볼 수 있습니다.
doc-list-all-dates- between-two-dates-5

참고 :

위의 수식에서 A1은 시작 날짜, A2는 종료 날짜, C1은 날짜 범위 중 첫 번째 날짜입니다.


매크로 코드에 관심이 있다면 아래 VBA를 사용하여 Excel에서 주어진 두 날짜 사이의 모든 날짜를 나열 할 수 있습니다.

1. 시작 날짜와 종료 날짜를 두 개의 셀에 입력합니다. 여기에 A1과 B1 셀에 입력합니다. 스크린 샷보기 :
doc-list-all-dates- between-two-dates-6

2. 프레스 Alt + F11 여는 열쇠 응용 프로그램 용 Microsoft Visual Basic 창.

3. 그런 다음 끼워 넣다 > 모듈 VBA 코드 아래에 복사하여 붙여 넣습니다. 모듈 창.

VBA : 두 날짜 사이의 모든 날짜를 나열합니다.

Sub WriteDates()
	'Updateby20150305
	Dim rng As Range
	Dim StartRng As Range
	Dim EndRng As Range
	Dim OutRng As Range
	Dim StartValue As Variant
	Dim EndValue As Variant
	xTitleId     = "KutoolsforExcel"
	Set StartRng = Application.Selection
	Set StartRng = Application.InputBox("Start Range (single cell):", xTitleId, StartRng.Address, Type: = 8)
	Set EndRng   = Application.InputBox("End Range (single cell):", xTitleId, Type: = 8)
	Set OutRng   = Application.InputBox("Out put to (single cell):", xTitleId, Type: = 8)
	Set OutRng   = OutRng.Range("A1")
	StartValue   = StartRng.Range("A1").Value
	EndValue     = EndRng.Range("A1").Value
	If EndValue - StartValue <= 0 Then
		Exit Sub
		End If
		ColIndex = 0
		For i = StartValue To EndValue
			OutRng.Offset(ColIndex, 0) = i
			ColIndex = ColIndex + 1
		Next
	End Sub

4. 클릭 달리기 or F5 VBA를 실행하려면 시작 날짜를 선택할 수있는 대화 상자가 나타납니다. OK을 클릭 한 다음 두 번째 팝업 대화 상자에서 종료 날짜를 선택하십시오. 스크린 샷보기 :

doc-list-all-dates- between-two-dates-7          doc-list-all-dates- between-two-dates-8

5. 클릭 OK을 클릭 한 다음 날짜를 입력 할 셀을 선택한 다음 OK. 이제 두 날짜 사이의 모든 날짜가 나열되는 것을 볼 수 있습니다. 스크린 샷보기 :

doc-list-all-dates- between-two-dates-9         doc-list-all-dates- between-two-dates-10

주의 사항:이 VBA에서 생성 된 목록에는 시작 날짜와 종료 날짜가 포함됩니다.


실제로 설치했다면 Excel 용 Kutools – 편리한 추가 도구입니다. 임의 데이터 삽입 이 문제를 해결합니다.

Excel 용 Kutools, 이상과 300 편리한 Excel 기능, 작업 효율성 향상 및 작업 시간 절약.

무료 설치 Excel 용 Kutools는 다음과 같이하십시오.

1. 두 날짜 사이의 날짜를 나열 할 열을 선택하고 쿠툴 > 끼워 넣다 > 임의 데이터 삽입. 스크린 샷보기 :
문서 임의 데이터 삽입 1

2. 그런 다음 임의 데이터 삽입 대화 상자에서 날짜 탭에서 시작 및 종료 날짜를 선택하십시오. ~To 목록을 확인한 다음 작업 일, 주말고유 한 가치 체크 박스. 스크린 샷보기 :
doc-list-all-dates- between-two-dates-12

3. 클릭 Ok 대화 상자를 닫고 다른 Excel 용 Kutools 대화 상자가 나타나면 클릭 만하면됩니다. 가능. 그러면 시작일과 종료일 사이의 날짜가 나열되는 것을 볼 수 있습니다. 스크린 샷보기 :

doc-list-all-dates- between-two-dates-13           doc-list-all-dates- between-two-dates-14

4. 이제 필요한 순서대로 날짜 목록을 정렬해야합니다. 딸깍 하는 소리 Data > 오래된 것부터 최신순으로 정렬. 그런 다음 날짜가 가장 오래된 날짜에서 최신 날짜로 정렬 된 것을 볼 수 있습니다. 스크린 샷보기 :

doc-list-all-dates- between-two-dates-15          doc-list-all-dates- between-two-dates-16

임의 데이터 삽입 유틸리티를 사용하면 임의의 정수, 임의의 문자열 및 임의의 시간을 삽입 할 수도 있습니다. 임의 데이터 삽입에 대한 자세한 내용을 보려면 여기를 클릭하십시오.


관련 기사 :


최고의 사무 생산성 도구

🤖 Kutools AI 보좌관: 다음을 기반으로 데이터 분석을 혁신합니다. 지능형 실행   |  코드 생성  |  사용자 정의 수식 만들기  |  데이터 분석 및 차트 생성  |  Kutools 기능 호출...
인기 기능: 중복 항목 찾기, 강조 표시 또는 식별   |  빈 행 삭제   |  데이터 손실 없이 열이나 셀 결합   |   수식없이 반올림 ...
슈퍼 조회: 다중 기준 VLookup    다중 값 VLookup  |   여러 시트에 걸친 VLookup   |   퍼지 조회 ....
고급 드롭다운 목록: 드롭다운 목록을 빠르게 생성   |  종속 드롭다운 목록   |  다중 선택 드롭 다운 목록 ....
열 관리자: 특정 개수의 열 추가  |  열 이동  |  Toggle 숨겨진 열의 가시성 상태  |  범위 및 열 비교 ...
특색 지어진 특징: 그리드 포커스   |  디자인보기   |   큰 수식 바    통합 문서 및 시트 관리자   |  자료실 (자동 텍스트)   |  날짜 선택기   |  워크 시트 결합   |  셀 암호화/해독    목록으로 이메일 보내기   |  슈퍼 필터   |   특수 필터 (굵게/기울임꼴/취소선 필터링...) ...
상위 15개 도구 세트12 본문 도구 (텍스트 추가, 문자 제거,...)   |   50+ 거래차트 유형 (Gantt 차트,...)   |   40+ 실용 방식 (생일을 기준으로 나이 계산,...)   |   19 삽입 도구 (QR 코드 삽입, 경로에서 그림 삽입,...)   |   12 매출 상승 도구 (숫자를 단어로, 환율,...)   |   7 병합 및 분할 도구 (고급 결합 행, 셀 분할,...)   |   ... 그리고 더

Excel용 Kutools로 Excel 기술을 강화하고 이전과는 전혀 다른 효율성을 경험해 보세요. Excel용 Kutools는 생산성을 높이고 시간을 절약하기 위해 300개 이상의 고급 기능을 제공합니다.  가장 필요한 기능을 얻으려면 여기를 클릭하십시오...

상품 설명


Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
Comments (9)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How to loop this vba code (1000 rows for example) ?
This comment was minimized by the moderator on the site
Sorry for reply such late, but I do not understand your question, the VBA only for listing dates between a date range, why need to loop the code?
This comment was minimized by the moderator on the site
Firat - did you solve your issue? I have exactly the same issue and I cannot get the result in the row instead of the column.
This comment was minimized by the moderator on the site
If you invert this line you can make it work :


OutRng.Offset(ColIndex, 0) = i to OutRng.Offset(0, ColIndex) = i
This comment was minimized by the moderator on the site
Why do not try to transpose the column result to row?
This comment was minimized by the moderator on the site
i tried the VBA code it worked.. Thanks for sharing. Similarly is it possible to pase it along columns/ horizontally?
This comment was minimized by the moderator on the site
Hello, if you want to list dates in a row horizontally, you just need to use the vba code to list the dates, and copy the results and paste transpose.
This comment was minimized by the moderator on the site
Hello, Thanks for sharing a great code. I would like to ask one question though. I am using this VBA code you shared. 1) Can I list all the other cells in the same row with the dates? 2) Can we define the starting date cell and ending date cell and the cell that the new information will be written? I am asking these questions because I have 30 rows. Each row has data for different people. Cell G is a starting date and Cell H is an ending date. Other cells contains some information. I would like this to be listed in a new cell as all the dates between these cells. For example (just showing demonstration, so only G and H cells written below-I is where the list appears): Row 2 Person A 28/05/2017 05/06/2017 28/05/2017 Row 3 Person A 28/05/2017 05/06/2017 29/05/2017 Row 4 Person A 28/05/2017 05/06/2017 30/05/2017 Row 5 Person A 28/05/2017 05/06/2017 31/05/2017 Row 6 Person A 28/05/2017 05/06/2017 01/06/2017 Row 7 Person A 28/05/2017 05/06/2017 02/06/2017 Row 8 Person A 28/05/2017 05/06/2017 03/06/2017 Row 9 Person A 28/05/2017 05/06/2017 04/06/2017 Row 10 Person A 28/05/2017 05/06/2017 05/06/2017 Row 11 Person B 23/05/2017 31/05/2017 23/05/2017 Row 12 Person B 23/05/2017 31/05/2017 24/05/2017 Row 13 Person B 23/05/2017 31/05/2017 25/05/2017 Row 14 Person B 23/05/2017 31/05/2017 26/05/2017 and so on...
This comment was minimized by the moderator on the site
Can we use text box instead of in box in macro
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations