#1
|
|||
|
|||
Power Query to get a list of folders (not files) in a location?
I'm looking to get a list of all folders on a particular drive, whether or not they have contents. So far I've been using PowerShell, but it's clunky and takes a bit of time.
I tried PowerQuery on a folder, and I get a resulting list of files. I can remove duplicates on the folder path column, but as far as I can tell it won't yield any folders that don't already have files in them. Am I missing a way? Thanks, Ann |
#2
|
||||
|
||||
Does this help?:
Get the List of FOLDERS only in Power BI using Power Query - RADACAD Get the List of FOLDERS only in Power BI using Power Query - RADACAD |
#3
|
|||
|
|||
Quote:
What I'd been using thus far is a Powershell command Code:
dir -n > dirlist.txt |
#4
|
||||
|
||||
No need for PowerBI, Power Query is built in to Excel since Excel 2016 and Excel 2013 can be persuaded to use it.
It's under the Data tab, Get & Transform Data. Get Data, From File, From Folder. |
#5
|
||||
|
||||
The attached has such a query. Currently it's looking at C:\Users\Public, you'll need to adjust that to your base folder. Thereafter you'll need do nothing except refresh the query to update the results. You refresh the table in the same way as you refresh a pivot table: eg. right-click the table and choose Refresh.
To change the base folder, alter the first line of the query: 2023-02-17_180603.png or we could put the base folder in a cell and have the query look at that cell, and that cell could be updated with a tiny macro to let you browse for that base folder. At the moment I've opted to show only unhidden directories (folders), but that can be much more finely tuned. |
#6
|
|||
|
|||
Ah, OK, I didn't realize that if it would work in Power BI it would also work in Excel.
I did open your workbook and change the directory. It does give me a nifty listing of just the main project folders on the drive. My wrinkle is that I actually need the subfolders for invoices in each of the project folders. I am able to do that in Power Query, except for the few Invoices files that don't yet have invoices in them. I'm also able to add a column that trims the long folder just down to the project number, which gives me exactly what I need except for those few empty ones. I have tinkered around with the setup you shared, and I can only get it to list the main folders on the drive. What I do to get the subfolders is get a list of everything, then filter for where the folder path ends in "Invoices", then filter to uniques. Then I duplicate the folder path column and trim to just the project number, giving me the XLOOKUP info that I need to do the "auto-filing" VBA that Paul helped me figure out here (https://www.msofficeforums.com/excel...using-vba.html) If I'm missing something and there's a way to get into subfolders, I'll keep trying. Thanks! Ann |
#7
|
||||
|
||||
Quote:
Are we talking only one level down of subfolders? Otherwise I'll have an explore in the coming days. |
#8
|
|||
|
|||
Quote:
You're right, I think I just grabbed the wrong Powershell command line that I keep in Outlook Notes. That's the one I used to get the names of all the PDFs of the invoices, which I have changed to doing by PQ. The Powershell command that yields literally everything in the main folder (recursive) is: Code:
dir -n -r > dirlist.txt I suppose the other thing I could do is search out the few ...\Invoices\ subfolders that are empty and place a small dummy file in them? I think I'm like 90% there, so I'm not that worried about it. |
#9
|
||||
|
||||
In the attached cell A1 is a named range FPath. Adjust it to your path, refresh the table below. Empty folders included.
Instead of using a named range, the path could be hard-coded into the query. Stolen from Power Query How to list folder names only NOT files | Page 2 | MrExcel Message Board |
#10
|
|||
|
|||
Thank you so much for your determination and your help! I've changed that path in A1, and it's been "refreshing" for about 40 minutes. Granted, I had to open a couple of other workbooks and do other things in the meanwhile so I may be thinning the resources.
If I have to give up on it now, I may set it to refresh while I'm gone overnight and see if I get results. Update: trying again, and instead of just hitting 'Refresh" on the table, I went into the Query after changing the path in A1. It's still taking a very long time to load. I want to see if I can further filter after your results come through to show only the folder paths that end in *Invoices. I don't think there's a way to use a variable in the A1 path like \projects\*\*Invoices, is there? The first * would be the project folder file name, and the second * would be anything that came before Invoices, in some cases a folder number like "2. Invoices". |
#11
|
||||
|
||||
Quote:
Are we talking urls, sharepoint, or just the local hard drive? Maybe, just perhaps… see here: Credentials problem | Excelguru Forums Quote:
|
#12
|
|||
|
|||
Quote:
Quote:
|
#13
|
||||
|
||||
A macro instead?
|
#14
|
|||
|
|||
Yes, your method plus a macro or some simple manual filtering would get me mostly there. It's just odd that it processes so much more slowly. Granted, it is a lot of files.
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Excel power query help | ganesang | Excel Programming | 0 | 09-20-2021 01:50 AM |
Browse, search and copy files from one location to another based on the list given in excel sheet us | nmkhan3010 | Excel Programming | 2 | 09-07-2020 10:27 AM |
Do I need a power query for this one? | shabbaranks | Excel | 5 | 04-10-2019 03:29 AM |
Query and Power Query not working Excel 2016 | bl10 | Excel | 0 | 07-22-2016 06:25 PM |
list folders and files using .vbs file | josianne | Excel Programming | 3 | 08-18-2014 03:03 PM |