Batch create folders based upon spreadsheet then move/copy associated files to folders, how?

Posted on 2003-11-21
Last Modified: 2010-04-17
Its amazing to us that no basic tool exists to create folders and copy files to folders based upon an association db.  Administration of document and image files seems still be in the "paper filing age" as we have no batch admin to create folders, and copy files to folders based upon a known list containing all of the needed data. Up until now its been a manual process... and it sucks.

We need to batch create folders based upon list in spreadsheet columns b-n, no dups and then move files associated in column A to those folders.  Thousands of files added daily to folders. New spreadsheets provided everyday.  Corrections discovered as files(images) reviewed over time... need for backout by date and re-apply to put in corrections. Master spreadsheet to track needed corrections to folder file associations.  

We find ourselves creating 1000 to 2500 folders per week in windows.  Looking at a spreadsheet that has the numerical sequence of images 2000 - 10,000 images in column A looking at the participants the images were taken of in columns B-N and copying manually all of the images manually to their specific folders.  This is a ton of work(hours) and in our opinion absolutely insane to not have automated the create and move process as well as apply corrections in batch.
The human error in doing this manually increases as the days and weeks go on. We need to automate this badly.  We've found nothing that does this. Only commands, Jscript that addresses a single create or move.

More detail and rehash:  I have a spreadsheet I get from a photographer in column A is his alpha/numeric image range could be 2-10 thousand images... in columns b-n are the numbers of the participants in the photos (who he has taken the images of)...  this could be a single individual (most of the time) but it could also be a pair or a group of people.  Note all images are always in sequence... Creating Column A is a no brainer, entering in all of the participants is data entry that has to be done.  Say the photographer is taking pics knows he is starting with image 2130 identifies the participant number as 1767 puts that in colmn b next to image # 2130 in column a and takes 12 images he has the next available starting image as 2142 enters the next participant in column B next to 2142 and so on. We see then that we can assume the range of images belonging to each rider is from the starting image in sequence until the next participant appears in Column B which is the next associated range.

Folders would be created for each participant as needed... the range of images contained in an "all" images folder belonging to a specific participant(s) would then be copied to a specific participant folder.

The photographers helpers supply the list/spreadsheet at the end of each day then we create the folders and copy the photos to those folders as quickly as we can get them there so we can lookup and display images for the participants to buy.  Galleries are greated based upon images in each folder.  Images are added daily as the event goes on for usually a week.

As we get corrections we make those in the spreadsheet (images in the wrong folder or wrong participant numbers)  It would be good know which images were for what day and be able to back out the batch job for that date and apply the corrections in batch at the end of each day as needed. ( Its prohibative to review images individually at the end of each day to minimize errors, manually applying ther corrections is also time consuming so being able to back out the folder create and file copy and then to reapply the corrected associations so image and participant match is correct is preffered.

We are also adding cameras so there may be more than one image range and participants may appear later in a single days shoot in the same image range or in another cameras range. Image numbers(file names) would always be unique for the entire week.

All images are put in a specific image folder.

This seems straight forward enough and have bits and pieces of jscript etc for folder create file move etc. But frankly to get this done "right" we are looking for a best approach and someone to assist us with this.  Our thoughts are to use Access as the database give the simplicity of the app with simple forms to log the coreections in and an administrative "console" to launch jobs from.

Assistance on this would be greatly appreciated.  I'm not a programmer and think tackling this myself might be an effort in futility but I may have to try if I cant find coding assistance. Thanks for reading.

Specific detaild questions or inquiry welcome.
Question by:rayrich01
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2

Accepted Solution

yleviel earned 250 total points
ID: 9800736
its one thing to ask for a bit of coding advice, but when you're asking for someone to do all the work for some 250 points, you'll be lucky to recieve a response.  If someone has already contacted you, then all the best, if not, consider making a more palatable offer to the group.


Author Comment

ID: 9800932
I understand your point but providing advisement and direction .. would be good response. Would it not?

Expert Comment

ID: 9804990
Okay, here's my take on it.

It all depends on how you'd like to complete the task at hand and what tools are you willing to use/pay for. If it came down to my decision, I would choose to use VB.Net, since the framework and most of teh programming tasks are done for you.  If you know even simple VB you can probably rush out a program in no time.

Start out small, and as you finish each section move on adding newer and better features.  
Create a form and on it request a number of parameters that would be filled in by the user:

1.) How many folders to create?
2.) Should the folders be named A... B... C... or A1... B1... C1... make the goal clear and easy to predict.
3.) find which directory to place the folders into... either a default one which is common to your practice or one a user can choose from.

let the second version take in an input file (excel, etc.) and parse it.  That will take you a bit more time to complete, so let the first project complete, without any bugs and push it into your company for immediate use.  As you get to program better and more efficiently, you'll see the screw-ups and learn to be a better programmer overall.

Set goals and expected time-to-complete for each task.  If you encounter problems, ask for help... people on this site are dedicated to exerting their ego and some are genuinely looking to help you become a better programmer or at bare minimum looking to help you resolve your problem.

Then again, you're time may be more valuable then that and you may want to outsource the project.  If you choose to do so, the look carefully at whom you choose and request a basic estimate.  Don't add on new requirements unless absolutly necessary and make sure you get to keep all source code in case you want to make future changes.

Finnally either way you go:
Those 5 paragraphs are confusing and should be bulleted down to the most essential algorithm.


1.) Input File
2.) Process Input File
2. a.) Failure => Alert User, Abort
2. b.) Success => Create requested folders

This is of course over-simplified as I take it you want multiple ways of creating batch folders.

Consider getting published in an op-ed section of a newspaper with a 5 page essay... no one will bother reading it and no newspaper will accept it.  Leave yourself at under 500 words and strait to the point, and your bound to be included or at least recognized.  If you state the requirements in steps and ask for help from that point on, I'm sure more people will read the post and help you on your way.

Author Comment

ID: 9806411
Thanks for the insight

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
ejb entity bean example 2 39
Restore Windows 7 Snipping Tool function to Windows 10 10 94
asp Google Map 2 65
How to delete text box content on subform 1 23
This article will show, step by step, how to integrate R code into a R Sweave document
Does the idea of dealing with bits scare or confuse you? Does it seem like a waste of time in an age where we all have terabytes of storage? If so, you're missing out on one of the core tools in every professional programmer's toolbox. Learn how to …
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…
With the power of JIRA, there's an unlimited number of ways you can customize it, use it and benefit from it. With that in mind, there's bound to be things that I wasn't able to cover in this course. With this summary we'll look at some places to go…

696 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question