Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Hãy tưởng tượng bạn đang ở trong một tình huống mà bạn cần xây dựng một bảng được sắp xếp theo ngày tháng. Chẳng hạn, bạn đang lập lịch trình và cần chỉ định danh sách các hoạt động được sắp xếp theo ngày theo thứ tự phù hợp. Bạn sẽ yêu cầu một danh sách các ngày trong trường hợp điều này xảy ra

Không có thứ gọi là danh sách vô hạn, vì vậy lý do là danh sách của bạn sẽ có ngày bắt đầu và ngày kết thúc. Trong một số trường hợp nhất định, nếu bạn đã biết ngày bạn muốn bắt đầu và ngày bạn muốn kết thúc, bạn có thể cần sử dụng Excel để tạo danh sách tất cả các ngày nằm giữa hai ngày được chỉ định này

Liệt kê tất cả các ngày bằng Công thức

Hãy hiểu từng bước thông qua một ví dụ

Bước 1

Trong ví dụ của chúng tôi, chúng tôi có Ngày bắt đầu và Ngày kết thúc trong một trang tính Excel. Chúng tôi sẽ tạo một danh sách các ngày ở giữa ngày bắt đầu và ngày kết thúc. Xem hình ảnh sau

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Bước 2

Sau đó nhập công thức đã cho bên dưới vào ô C2 và nhấn enter. Công thức là =A2+1 trong đó A2 là ô chứa ngày bắt đầu. Sau khi nhấn Enter, bạn sẽ thấy ngày tiếp theo của ngày bắt đầu. Xem hình ảnh sau

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Bước 3

Sau đó, chọn ô C3 và nhập công thức đã cho bên dưới vào thanh công thức và nhấn enter

=IF($A$2+ROW(A2)>=$B$2,"",C2+1)

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Bước 4

Nhấp vào dấu "+" xuất hiện ở góc dưới bên phải của ô C3, kích hoạt chức năng tự động điền và sau đó kéo xuống để phản ánh trong các ô khác

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Khó khăn trong việc xác định cú pháp hoặc sửa đổi công thức này là nhược điểm chính khi sử dụng nó. Thêm vào đó, ngày không hoàn toàn theo đúng thứ tự

Liệt kê tất cả các ngày bằng VBA

Nếu bạn quan tâm đến mã macro, Visual Basic for Applications (VBA) sau đây có thể được sử dụng trong Excel để liệt kê bất kỳ ngày nào nằm giữa hai ngày đã chỉ định

Thực hiện theo các bước được đưa ra dưới đây -

Bước 1

Nhập Ngày bắt đầu và Ngày kết thúc vào các ô riêng biệt

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Bước 2

Để mở cửa sổ Microsoft Visual Basic for Applications, nhấn đồng thời các phím "Alt + F11"

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Bước 3

Sau đó nhấp vào Chèn > Mô-đun và cửa sổ Mô-đun bật lên sẽ mở ra

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Đây là trình soạn thảo VBA

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Bước 4

Trong cửa sổ Mô-đun, nhập mã VBA sau

Sub DatesBetween()
    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 = "VBOutput"
    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("A2").Value
    EndValue = EndRng.Range("A2").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

Bước 5

Bấm Run hoặc F5 để chạy VBA, một cửa sổ hiện ra bạn chọn ngày bắt đầu, bấm OK, cửa sổ tiếp theo chọn Ngày kết thúc, bấm OK

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Sau đó một cửa sổ khác hiện lên yêu cầu Xuất ra, nhập ô xuất và nhấn OK

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Trong ví dụ của chúng tôi, giá trị ô của Ngày bắt đầu là A2, vì vậy chúng tôi viết nó theo cách này. "AA2"

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Trong ví dụ của chúng tôi, giá trị ô của Ngày kết thúc là B2, vì vậy chúng tôi viết nó theo cách này. "BB2"

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Trong ví dụ của chúng tôi, giá trị ô của Ngày đầu ra là C2, vì vậy chúng tôi viết nó theo cách này. "CC2"

Sau khi nhấp vào OK, hãy đóng cửa sổ VBA và bạn sẽ nhận được ngày giữa ngày bắt đầu và ngày kết thúc, bao gồm cả ngày bắt đầu và ngày kết thúc, như minh họa trong hình dưới đây

Làm cách nào để tạo tất cả các ngày giữa hai ngày trong python?

Sự kết luận

Trong hướng dẫn này, chúng tôi đã chỉ ra hai cách khác nhau (Công thức và VBA) mà bạn có thể sử dụng để liệt kê tất cả các ngày giữa hai ngày đã cho trong Excel