EXCEL pre 1900 date problem: Does anyone have a formula to drag down an EXCEL column "Sunday, January 1, 1900" in descending order?

Joined
Oct 8, 2020
Messages
5
Office Version
  1. 2013
Platform
  1. Windows
  2. MacOS
Does anyone have a formula to drag down an EXCEL column "Sunday, January 1, 1900" in descending order? As most know, one cannot format cells with "Number" "Date Category" prior to 1900. I am trying to list pre 1900 dates in a column in descending order like the following:
Monday, January 2, 1900
Sunday, January 1, 1900
Saturday, December 31, 1899
Friday, December 30, 1899
Thursday, December 29, 1899

Thanks in advance for any help on the matter,
Cake Guy
 

Excel Facts

Workdays for a market open Mon, Wed, Friday?
Yes! Use "0101011" for the weekend argument in NETWORKDAYS.INTL or WORKDAY.INTL. The 7 digits start on Monday. 1 means it is a weekend.
I don't have a formula for you, but if all you want is " to list pre 1900 dates in a column in descending order " you can try the macro below. According to several sources I found, 1/2/1900 was a Tuesday. If that's correct then the macro below lists long dates starting with 1/2/1900 and descending at 1 day intervals starting at A1 of the active sheet.
VBA Code:
Sub Pre1900Dates()
Const HowManyDays As Long = 20 ' how many days of descending dates to list
Dim Arr() As String, Dte As Variant
Dte = #1/2/1900#       'change start date to suit
Application.ScreenUpdating = False
Range("A:A").ClearContents
ReDim Arr(1 To HowManyDays)
'Arr(1) = CStr(Format(Dte, "[$-x-sysdate]dddd, mmmm dd, yyyy"))
For i = 1 To UBound(Arr)
    Arr(i) = CStr(Format(DateAdd("d", -i + 1, Dte), "[$-x-sysdate]dddd, mmmm dd, yyyy"))
Next i
With Range("A1:A" & HowManyDays)
    .Value = Application.Transpose(Arr)
    .EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
 
Upvote 0
Just so you know, January 1, 1900 was actually a Monday, not Sunday. Excel incorrectly considers 1900 to be a Leap Year... it wasn't. Given that, do you want the actual day names or the one's Excel reports even though it is not the correct day name? If I am not mistaken, everything straightens out on March 1, 1900 (before that date, the day names are off by one).
 
Last edited:
Upvote 0
I don't have a formula for you, but if all you want is " to list pre 1900 dates in a column in descending order " you can try the macro below. According to several sources I found, 1/2/1900 was a Tuesday. If that's correct then the macro below lists long dates starting with 1/2/1900 and descending at 1 day intervals starting at A1 of the active sheet.
VBA Code:
Sub Pre1900Dates()
Const HowManyDays As Long = 20 ' how many days of descending dates to list
Dim Arr() As String, Dte As Variant
Dte = #1/2/1900#       'change start date to suit
Application.ScreenUpdating = False
Range("A:A").ClearContents
ReDim Arr(1 To HowManyDays)
'Arr(1) = CStr(Format(Dte, "[$-x-sysdate]dddd, mmmm dd, yyyy"))
For i = 1 To UBound(Arr)
    Arr(i) = CStr(Format(DateAdd("d", -i + 1, Dte), "[$-x-sysdate]dddd, mmmm dd, yyyy"))
Next i
With Range("A1:A" & HowManyDays)
    .Value = Application.Transpose(Arr)
    .EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
Thanks JoeMo for the macro, I'll have to play with it and give it a try.
 
Upvote 0
Just so you know, January 1, 1900 was actually a Monday, not Sunday. Excel incorrectly considers 1900 to be a Leap Year... it wasn't. Given that, do you want the actual day names or the one's Excel reports even though it is not the correct day name? If I am not mistaken, everything straightens out on March 1, 1900 (before that date, the day names are off by one).
Thanks Rick for the tip on the year 1900 incorrect days of the week (partial year) due to a non-leap year. I will have to go in there and straighten that out.
 
Upvote 0
I do not know what you intend to do with the "dates".
If text information is sufficient, consider some modification of the following.

Enter Dates in Column A
Use Text Formula in Column B
Convert to Values
Use Find and Replace change 1905 to 1899
N.B. I left the formulas in row 2

T202010a.xlsm
AB
2Mon 01 Jan 1906Mon Jan 01, 1906
3Sun 31 Dec 1905Sun Dec 31, 1899
4Sat 30 Dec 1905Sat Dec 30, 1899
5Fri 29 Dec 1905Fri Dec 29, 1899
6Thu 28 Dec 1905Thu Dec 28, 1899
7Wed 27 Dec 1905Wed Dec 27, 1899
8Tue 26 Dec 1905Tue Dec 26, 1899
9Mon 25 Dec 1905Mon Dec 25, 1899
10Sun 24 Dec 1905Sun Dec 24, 1899
11Sat 23 Dec 1905Sat Dec 23, 1899
12Fri 22 Dec 1905Fri Dec 22, 1899
13Thu 21 Dec 1905Thu Dec 21, 1899
14Wed 20 Dec 1905Wed Dec 20, 1899
15Tue 19 Dec 1905Tue Dec 19, 1899
16Mon 18 Dec 1905Mon Dec 18, 1899
17Sun 17 Dec 1905Sun Dec 17, 1899
18Sat 16 Dec 1905Sat Dec 16, 1899
19Fri 15 Dec 1905Fri Dec 15, 1899
20Thu 14 Dec 1905Thu Dec 14, 1899
2e
Cell Formulas
RangeFormula
B2B2=TEXT(A2,"ddd mmm dd, yyy")
A3A3=A2-1
 
Upvote 0
I do not know what you intend to do with the "dates".
If text information is sufficient, consider some modification of the following.

Enter Dates in Column A
Use Text Formula in Column B
Convert to Values
Use Find and Replace change 1905 to 1899
N.B. I left the formulas in row 2

T202010a.xlsm
AB
2Mon 01 Jan 1906Mon Jan 01, 1906
3Sun 31 Dec 1905Sun Dec 31, 1899
4Sat 30 Dec 1905Sat Dec 30, 1899
5Fri 29 Dec 1905Fri Dec 29, 1899
6Thu 28 Dec 1905Thu Dec 28, 1899
7Wed 27 Dec 1905Wed Dec 27, 1899
8Tue 26 Dec 1905Tue Dec 26, 1899
9Mon 25 Dec 1905Mon Dec 25, 1899
10Sun 24 Dec 1905Sun Dec 24, 1899
11Sat 23 Dec 1905Sat Dec 23, 1899
12Fri 22 Dec 1905Fri Dec 22, 1899
13Thu 21 Dec 1905Thu Dec 21, 1899
14Wed 20 Dec 1905Wed Dec 20, 1899
15Tue 19 Dec 1905Tue Dec 19, 1899
16Mon 18 Dec 1905Mon Dec 18, 1899
17Sun 17 Dec 1905Sun Dec 17, 1899
18Sat 16 Dec 1905Sat Dec 16, 1899
19Fri 15 Dec 1905Fri Dec 15, 1899
20Thu 14 Dec 1905Thu Dec 14, 1899
2e
Cell Formulas
RangeFormula
B2B2=TEXT(A2,"ddd mmm dd, yyy")
A3A3=A2-1
 
Upvote 0
I originally did something similar in my spreadsheet, Dave. I typed in the seven days of the week and dragged it down and typed in the month in another column and dragged it down and finally dragged in the date and dragged it down. And then I checked it against the online "Calendar Home" program to make minor adjustments for leap years etc. This date information that I have in column A is just a reference to the other cells in the columns to the left. The other column/cells don't need to be physically tied to the date via formulas or agents or anything like that. I think I am good to go now, with the information that I have at this time. I am able to make it work for what I am trying to do. So thanks again to all of you for your help and suggestions.
Cake Guy
 
Upvote 0

Forum statistics

Threads
1,215,066
Messages
6,122,948
Members
449,095
Latest member
nmaske

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top