Create week number start with 1st July

%3CLINGO-SUB%20id%3D%22lingo-sub-3297343%22%20slang%3D%22en-US%22%3ECreate%20week%20number%20start%20with%201st%20July%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3297343%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20%2C%3CBR%20%2F%3EI%20am%20using%20Excel%20365%20%2C%20Power%20Query.%3CBR%20%2F%3E%3CBR%20%2F%3EI%20want%20to%20create%20a%20column%20that%20shows%20week%20starting%20from%201%2F7%2F2022%20to%2031%2F6%2F2023%20where%20week%201%20start%20from%201%2F7%2F2022.%3CBR%20%2F%3E%3CBR%20%2F%3EHow%20can%20I%20do%20it%3F%3CBR%20%2F%3E%3CBR%20%2F%3EThanks!%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-3297343%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EBI%20%26amp%3B%20Data%20Analysis%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EExcel%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-3297790%22%20slang%3D%22en-US%22%3ERe%3A%20Create%20week%20number%20start%20with%201st%20July%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3297790%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F1289411%22%20target%3D%22_blank%22%3E%40Imi_Jay%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3ETo%20play%20with%20variants%3C%2FP%3E%0A%3CP%3EPower%20Query%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-powerquery%22%3E%3CCODE%3Elet%0A%20%20%20%20Start%20%3D%20Number.From(%23date(2022%2C7%2C1))%2C%0A%20%20%20%20End%20%3D%20Number.From(%23date(2023%2C6%2C30))%2C%0A%20%20%20%20Date%20%3D%20Table.FromList(%7BStart..End%7D%2C%20Splitter.SplitByNothing()%2C%20%7B%22Date%22%7D%20)%2C%0A%20%20%20%20Week%20%3D%20Table.AddColumn(%0A%20%20%20%20%20%20%20%20Date%2C%0A%20%20%20%20%20%20%20%20%22Week%20%23%22%2C%0A%20%20%20%20%20%20%20%20each%20%22Week%20%22%20%26amp%3B%20Text.From(Number.IntegerDivide(%5BDate%5D%20-%20Start%2C%207)%20%2B1)%2C%0A%20%20%20%20%20%20%20%20type%20text)%2C%0A%20%20%20%20DateFormat%20%3D%20Table.TransformColumnTypes(Week%2C%7B%7B%22Date%22%2C%20type%20date%7D%7D)%0Ain%0A%20%20%20%20DateFormat%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3EDynamic%20array%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-excel-formula%22%3E%3CCODE%3E%3DLET(%0A%20%20%20start%2C%20%20%20DATE(2022%2C7%2C1)%2C%0A%20%20%20end%2C%20%20%20%20DATE(2023%2C6%2C30)%2C%0A%20%20%20date%2C%20%20%20SEQUENCE(%20end-start%2B1%2C%2Cstart)%2C%0A%20%20%20week%2C%20%22Week%20%22%20%26amp%3B%20INT((date-start)%2F7%20)%20%2B%201%2C%0A%20IF(%7B1%2C0%7D%2C%20date%2C%20week%20)%20)%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-3297399%22%20slang%3D%22en-US%22%3ERe%3A%20Create%20week%20number%20start%20with%201st%20July%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3297399%22%20slang%3D%22en-US%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F1289411%22%20target%3D%22_blank%22%3E%40Imi_Jay%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E(%3CSPAN%3E31%2F6%2F2023%20doesn't%20exist%2C%20adjusted%20to%2030%2F6%2F2023%20below).%20Not%20sure%20where%2Fhow%20you%20want%20to%20add%20that%20column%20so%20the%20following%20might%20not%20be%20exactly%20what%20you%20want...%20(%3CSTRONG%3EEdited%3C%2FSTRONG%3E)%3C%2FSPAN%3E%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-powerquery%22%3E%3CCODE%3Elet%0A%20%20%20%20StartDate%20%3D%20%23date(2022%2C7%2C1)%2C%0A%20%20%20%20EndDate%20%3D%20%23date(2023%2C6%2C30)%2C%0A%20%20%20%20Days%20%3D%20Duration.Days(EndDate%20-%20StartDate)%20%2B1%2C%0A%20%20%20%20Weeks%20%3D%20Number.RoundUp(Days%20%2F%207)%2C%0A%20%20%20%20Table%20%3D%20Table.FromColumns(%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20List.Dates(StartDate%2C%20Days%2C%20%23duration(1%2C0%2C0%2C0))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20List.FirstN(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20List.TransformMany(List.Numbers(1%2C%20Weeks)%2C%20each%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20List.Numbers(1%2C%207)%2C%20(w%2Cd)%3D%26gt%3B%20%22Week%20%22%20%26amp%3B%20Text.From(w)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20Days%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20type%20table%20%5BDate%3Ddate%2C%20Fiscal%20Week%3Dtext%5D%0A%20%20%20%20)%0Ain%0A%20%20%20%20Table%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThis%20creates%20a%20Table%20of%202%20columns%3A%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22_Screenshot.png%22%20style%3D%22width%3A%20204px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F367583iE024185EAD9392E2%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22_Screenshot.png%22%20alt%3D%22_Screenshot.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E
New Contributor

Hi ,
I am using Excel 365 , Power Query.

I want to create a column that shows week starting from 1/7/2022 to 31/6/2023 where week 1 start from 1/7/2022.

How can I do it?

Thanks!

2 Replies

Hi @Imi_Jay 

 

(31/6/2023 doesn't exist, adjusted to 30/6/2023 below). Not sure where/how you want to add that column so the following might not be exactly what you want... (Edited)

let
    StartDate = #date(2022,7,1),
    EndDate = #date(2023,6,30),
    Days = Duration.Days(EndDate - StartDate) +1,
    Weeks = Number.RoundUp(Days / 7),
    Table = Table.FromColumns(
        {
            List.Dates(StartDate, Days, #duration(1,0,0,0)),
            List.FirstN(
                List.TransformMany(List.Numbers(1, Weeks), each
                    List.Numbers(1, 7), (w,d)=> "Week " & Text.From(w)
                ),
                Days
            )
        },
        type table [Date=date, Fiscal Week=text]
    )
in
    Table

 

 

This creates a Table of 2 columns:

_Screenshot.png

@Imi_Jay 

To play with variants

Power Query

let
    Start = Number.From(#date(2022,7,1)),
    End = Number.From(#date(2023,6,30)),
    Date = Table.FromList({Start..End}, Splitter.SplitByNothing(), {"Date"} ),
    Week = Table.AddColumn(
        Date,
        "Week #",
        each "Week " & Text.From(Number.IntegerDivide([Date] - Start, 7) +1),
        type text),
    DateFormat = Table.TransformColumnTypes(Week,{{"Date", type date}})
in
    DateFormat

Dynamic array

=LET(
   start,   DATE(2022,7,1),
   end,    DATE(2023,6,30),
   date,   SEQUENCE( end-start+1,,start),
   week, "Week " & INT((date-start)/7 ) + 1,
 IF({1,0}, date, week ) )