How do I write a vb macro that copies everything from multiple files, including sheets within files, and puts them into one master file. Here's what I have so far. I used a script from gnaga that worked great but it didn't copy seperate sheets. If you can help me out, I would greatly appreciate it.
Sub MergeSheets() Dim SrcBook As Workbook Dim fso As Object, f As Object, ff As Object, f1 As Object
Application.ScreenUpdating = False Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.Getfolder("C:Temp") Set ff = f.Files
I have a workbook with multiple worksheets. Each worksheet is a set o data from a certain year. I want to create a macro that automatically copies the data from these worksheets into a master worksheet that can easily be used to make a pivot table.
I have approx 11 files in one folder and one master file with same format. 11 files are split user wise and user inuputting the remarks against the invoice in coloum Y and Z in their respective files. I want macro/forumul to collect all the remarks coloum from all users to master files against the respective invoice no.
I have a workbook "revision.xls" i have two excel workbooks "A.xls" and "B.xls" in a folder ( revision ) in my desktop. the location of this folder is " C:Documents and SettingskrishnaDesktop evision )
Both the excel files inside this folder ( "A.xls" and "B.xls" ) have columns B to F in each of them filled with some data.
The no.of rows upto which the data is filled in these two files can vary.
What i want is a macro which can open both these files automatically and can copy the contents in column B to L in both these excel files into revision.xls in such a way that the column B TO L of the excel file alphabetically first in the folder has to be copied to A to K column of revision.xls then after leaving one column blank i.e leaving L blank column ,the column B TO L of the excel file alphabetically 2nd in the folder has to be copied to M to W column of revision.xls.
I have about a thousand Excel timesheets that all contain 'hours worked' data in a column. Each row contains the area of the project they have worked on and therefore the amount of time they have spent on it. The timesheets also contain the person's name and a w/e date.
I want to sequentially work through each timesheet held locally in a single folder and copy the person's name, w/e date and the hours held in the column into a single new spreadsheet. I need to transpose the data so each amount of time spent on an activity ends up in a column.
I have attempted to record a macro for this but each time I try and run it after the intitial run, it moves to a completely different cell or set of cells to the ones I have directed it and consequently there is no data copied to the new sheet.
I believe this is the first problem..! The second is working through a high number of spreadsheets held in a single locattion but whilst browsing this site I saw the "Excel VBA Loop Through a Folder of Excel Workbooks" page and think this should work fine.
I have about 100 csv files of the same format that I would like to append into a single master file. Order is not important for appending (I can do a column sort later) I can do copying and pasting, but this will take a long time especially because I will creating more master files from completely different CSVs in the future. Is there a faster way to append CSV files?
I have a master page with A1 containing the names of staff members and then 5 columns indicating preference1 .... preference5. Each preference column will have one 4 digit site code i.e. 8156 entered. I will have 64 worksheets matching all potential 4 digit site codes that could be entered in the preferences columns.
SAMPLE - one staff member entering 5 site codes (A1 to A6)
Billy Bloggs - 8124 - 8456 - 8456 - 8123 - 8882
What I am looking for is a way to autocopy the persons name to the appropriate worksheet and into the correct preference column as I enter the 4 digit code against the staff members name on the master sheet.
I have a range of weekly data that I need to copy into another workbook, paste it below the data that already exists there and then delete the data from the original workbook. I would love to do this with vba but after hours of searching on how to do this my brain is frazzled.
I have 50 workbooks that I need to import weekly into one master sheet (Master.xlsm) but they need to be done individually after the weekly data has been checked. The master sheet will therefore have existing data and the new data needs to be appended at the bottom. Also column A will be blank in both workbooks so to find the last used row it will need to look in column B.
The number of rows in the weekly sheet will also vary rather than be a fixed range so I guess the last used row will also need to be found there too.
The attached file is a cut down version of my working file showing where the data starts on Row 14, I won't need to copy the headings.
I have a csv file. When I open it by double clicking, all the finance figures appear as currency with the currency symbol. I can use the SUM function on these and it's perfect.
However, when I open this file using a macro, these same numbers look the same, except that they are now left justified and are text because the SUM function no longer works. If I select a range, I get the count of the number of items selected showing at the bottom of the screen but not the sum.
I have tried opening the file using the OpenText function which has several ways of setting a date format to the fields but nothing for numbers.
I have even tried, in the macro, selecting a cell with numeric 1 and then selecting the range and pasting the 1 as a multiply function but this doesn't work either.
My project requires working with 3 different files, in my example here: Delivery Status, Warehouse, and Clients. Delivery Status is the master file where the information is gathered at first. Then when the product arrives, from the column "AI" I choose the Destination which it could be a warehouse or client. So far the code that I have can paste the information in different sheets within the File Warehouse, but can not make the difference between the File warehouse and the file Clients.
In the Delivery Status file I can choose from the Column AI whether the destination is a warehouse or a client and I need Excel to paste the information in the proper file. Have in mind that I have a lot of sheets in both files. I am attaching an example files with the code.
I have to input information into a master worksheet which contains data (employee names, location, start date and client) that then needs to be repeated in several other sheets. I want to input the data into a master worksheet and then automatically populate the other sheets with the data. If the data could then be filterable on each sheet that would be good.
I'm a relatively competent VBA user to a macro recorder and basic editing of custom code level but fall short with writing custom code and don't have much used or proven code I can copy from.
Problem: I'd like to automate a process whereby consolidating certain information within many data files (possibly up to 500) into a single tab within a master file.
At the moment there are only a few data files which are manually consolidated by way of manual links but going forward it will increase significantly, hence the need to automate.
I need to consolidate the following 5 cells from each data file A1, A2, A5, A7, A8 (vertical) into a single row within the master file across 5 columns (horizontal), i.e. each data file will populate 1 row in the master file, one below the other. If there are 500 data files there will be 500 rows of data in the master file.
The data files will be saved in a central location on our server and the master file will sit outside this folder, possibly in a subfolder.
Something which would be handy is a link in the master file to each data file, i.e. if I click on a data row in the master file it would jump to the source data file.
I have about 200 excel files all with the same layout as they are questionnaire answer forms, all I want from them is the information from 1 Column: Column C. I want to copy the information that is in Column C of all 200 files into 1 worksheet, each column next to each other in the worksheet so I can just scroll along and see all answers next to each other.
Is there any way to easily do this? At the minute I am manually pasting the column I want into my worksheet but this is taking too long.
The macro (used to) go down the list of spreadsheets and copy certain data from them into this master workbook. Now I'm getting a "'C:Users310108841DesktopTestFolder' could not be found" error and don't know why.
The error appears to happen here:
What's more infuriating is that this appears to happen at random. I have been trying all afternoon to get it to work, and had no luck. I have literally just run it now, and it works fine. I can't believe it just works at random.
I'm trying to build a macro to open multiple files at one time that will always be saved in a consistent drive. The problem is that sometimes there will only be one file for a month (ie only at month-end) and other times, there may also be additional files for different dates throughout the month. I wont know ahead of time how many files there will be, but they will always be saved in the same file name type that is "FILE DESCRIPTION MM-DD-YYYY". How can I build a loop that looks for a file on each possible day but doesn't error out if the file doesn't exist?
I am a complete novice with VBA and would like to write a macro that will allow me to import multiple text files stored in a folder on my directory into a single excel worksheet. I would also like the name of each text file to be output in a separate column for each row of data in the worksheet i.e. each row is 'named' with the title of the file it comes from.
The text files are comma delimited and have 5 fields e.g.
I have the following macro that imports data from several input files and rearranges it in a master file.I want to change it so that I can use it in each of the input files. Therefore, it should look in the input file for Spreadsheet "XYZ" and rearrange it in Spreadsheet "Data".
Need a way to update a single master file. What happens right now is that the cost manager sends out one file to a lot of different project heads and then on having them return back to him he basically has to individually add in all the data. What i am trying to do is that he somehow carries on sending out the data as there are a lottt of projects and then on returning them they automatically update.
I am having some 100 excel files in a folder. I need to copy specific values in those files to another new excel file. The file names are like file_0.xls,file_1.xls.....etc and the range to paste those values are like B1, B51,B101...etc...
I got the code for one file. Now i need to increment the final name and pasting range.
Copying data that is in one coloumn in an unsorted order to another file where I have the values in a specific order I want. There I want it sorted in a new row each time I click a button in the first file.
I have a script that does this in a new column each time. I need it in a new row in a table to keep the graphs auto updating without having to use a macro in the end file. Current VBA that copies it to a new column instead of a new row in the table (modified to remove file names).
How the current VBA works. It refreshes the file it is in to update the data from SQL, then opens the other file, copies it over using sumif compared to the first coloumn in the file. Adds the current date, copies everything it added and replaces it with values so the formula isn't kept once it saves and closes the file. It then saves the start file and stops.
I have 50 files each with 1000 numbers in column A.
I need to compare every list with every other list and calculate the Pearson function.
I am ok with the vb code to compare every file with everyother.
I can do this by opening each file then closing but it takes too long.
Each of the 50 csv file names is in my destination workbook
I would like to define an array using the file name, then extract 2 lists without opening the files then perform the pearson function and place the value in the destination workbook. (The pearson function just measures the strength of correlation between 2 sets of numbers)