Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
joshua1990
Post Prodigy
Post Prodigy

Filter/ Source newest Excel File

Hello everyone!

I have a Sharepoint-Folder that contains for every week an Excel File.

This files have specific name like "SalesEDT202001012200"

Now I would like to extract/ source data just from the newest file.

How is this possible if there is always a new file with a new name?

 

Best Regards

 

1 ACCEPTED SOLUTION
ziying35
Impactful Individual
Impactful Individual

Hi, @joshua1990 

You can import from a folder, and then query the code like this:

 

let
    Source = Folder.Files("D:\temp"),
    splCol = Table.SplitColumn(
                 Source, 
                 "Name", 
                 each {_, DateTime.From(
                              Number.ToText(
                                  Number.From(Text.BetweenDelimiters(_,"SalesEDT",".xlsx")),
                                  "0000-00-00 00:00"
                              )
                          )
                       },
                {"Name", "DateTime"}
              ),
    filter = Table.SelectRows(splCol, let latest = List.Max(splCol[DateTime]) in each [DateTime] = latest)
in
    filter

I am following the example file name you provided to split the time text into real time values to form a new column, and finally by filtering the latest time to get the final file to be processed

 

If my code solves your problem, please mark it as a solution!

 

View solution in original post

3 REPLIES 3
ziying35
Impactful Individual
Impactful Individual

Hi, @joshua1990 

You can import from a folder, and then query the code like this:

 

let
    Source = Folder.Files("D:\temp"),
    splCol = Table.SplitColumn(
                 Source, 
                 "Name", 
                 each {_, DateTime.From(
                              Number.ToText(
                                  Number.From(Text.BetweenDelimiters(_,"SalesEDT",".xlsx")),
                                  "0000-00-00 00:00"
                              )
                          )
                       },
                {"Name", "DateTime"}
              ),
    filter = Table.SelectRows(splCol, let latest = List.Max(splCol[DateTime]) in each [DateTime] = latest)
in
    filter

I am following the example file name you provided to split the time text into real time values to form a new column, and finally by filtering the latest time to get the final file to be processed

 

If my code solves your problem, please mark it as a solution!

 

Fowmy
Super User
Super User

@joshua1990 

When you use GET DATA from Power Query, use Files From Folder. 
Apply the following filter to get the latest file like below.

image.png

________________________

Did I answer your question? Mark this post as a solution, this will help others!.

Click on the Thumbs-Up icon on the right if you like this reply 🙂

YouTube, LinkedIn

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors