VBA To Create New Workbook From Most Recent User-numbers From Exported List
Apr 15, 2012
I need to create a macro that can produce a new workbook with the list of the most recent users of my company, so that we can print their membership cards.
From my company's admin I can export the complete list of users with their name, serial number and address. Every time we export this list, the file is saved as "userdata-dd-mm-yyyy.xls", and "dd-mm-yyyy" as today
However, I would like to create a macro that would
1) open the most recent "userdata-dd-mm-yyyy.xls" workbook in the folder,
2) compare the user numbers in this file with the most recent "card_order-dd-mm-yyyy.xls" and
3) produce a new "card_order-dd-mm-yyyy.xls" workbook with the list of all new users since the last "card_order-dd-mm-yyyy.xls" ("dd-mm-yyyy" as today), based on the highest number for user number (this is a continuous list)
Note, the "userdata-dd-mm-yyyy.xls" workbook has name, serial number, address, expiration date and user number as columns.... but the extracted info to "card_order-dd-mm-yyyy.xls" is just of the name, serial number and expiration date.
What is the easiest way of doing so and what code should I use for the macro?
I have a set of exported data from a Project Management SW (activecollab). The result is an excel .xslx file with a table inside with a lot of cells I am not going to use. Additionally, what I would like to do is creating new tables on other sheets that use only the data I want from the export. For example, I have two projects and three employees. I want to create three tables with the names of the three employees. In each table I want the tasks done by them and the time they will spend on them in order to create a Gantt chart. I need a solution that allows me to create new tables with selected data from a bigger cluster (the export). you do not need to give me the exact solution, I only need to know whether it is possible or not and where could I get the info to do what I want.
I'm trying to create a staff rota which will populate a rota randomly when prompted - I have been trying to find some way of connecting the random lists and the staff names, though this has proved difficult (to say the least!). How best to proceed? I'm also fully aware of the possibility that my present design will also double book people (place then on reception and telephone duty simultaneously).
I have a financial dataset which I need to "clean" before manipulating/analysing.
Each row of the data represents a completed transaction and the first step is to delete rows that are done with particular (internal) clients; the client data (the client's name) is in Column D.
Currently, I delete the unwanted data by autofilter and delete (code below), however this means the clients to be deleted are only defined within the code. I would prefer to have a worksheet within the workbook where the user defines the clients by adding or subtracting their name from a list.
I have created a dynamic range for the client list by inserting a Named variable along the lines of "=OFFSET(!$B$3,1,0,COUNTA($B$3:$B$200)-1," which works fine.
However how do I work this list into my code so that it works when new clients are added or deleted?
Current code for deleting unwanted client data:
Sub filterdelete()
Dim LastRow As Long LastRow = ActiveSheet.UsedRange.Rows.Count
Is there a way to list the recent changes to an excel document on the document itself?
For example, I have just 4 or 5 columns in the sheet, but out the the right on the 7th column I'll have a header that says "Recent Changes". Below that for X amount of rows, I would like it to keep a running change list something like this:
B14 was changed from '6.021' to '6.5' by username on 10/21/07 3:45 pm A23 was changed from 'Sally' to 'Billy' by username on 10/21/07 2:30 pm
I thought this up by looking at the way the "Track Changes" functionality works on the Tools menu. That will highlight the cells in blue as they are changed and will also let someone look back through changes to let them accept or deny.
I have a workbook (see attach) That has 2 worksheets. (LOAD DATA AND SKIP) What I would like to do is have VBA that automatically filters for each of the names in column A, creates a new workbook naming the workbook as the filtered name (ex D Fowler) and current date and then copy in all info based off filtered data from columns A thru Y Then save and close for each of the names in column A.
If I have 50 data points sorted in order (oldest --> newest), how do I do a stdev function that will only pull the 24 most recent points?
Essentially, I have 14 columns with 50 data points each. At the end of the list (or maybe beginning - under the column header) I want to do a stdev calculation referring to the most recent 24 points and a second for the most recent 36 points.
I have a workbook which contains a list of data on the first worksheet. I need for a macro to copy the name in each row,along with its data in that row and paste it into the corresponding locations on a template located on another worksheet. It would then save the file using the date (col. a) , then the words " Scorecard for" and then the name (col. b), then loop for each row until it reaches the end of the list.
I located this code here here.However I dont know how to modify it to fit my needs. I dont have 2 separate categories for two score cards in column b. It would all run off one scorecard and each row of data.
I have a spreadsheet called contacts which is as it says, I have another sheet called project management, I want to have a drop down list which refers back to the contacts spreadsheet, it this possible as they are two different files?
I've got a macro that searches & opens a most recent file. I'm trying to figure a simple way to bring to the front the workbook which is opened by the macro.
I am after some code to create a new worksheet called 'xxxx' in my workbook, and then list all the sheets within the workbook (excluding the newly created 'xxxx' sheet.)
how i can select the most recent 10 cells from a list of data to be included in a formula. I have selected it manually, for example F122:F131. This is fine but i don't know how i can put it so that it will update to the 10 most recent results when i input another line of data. So when i put in more data it stays on the previously selected. I want it to move shift down to include the new data but only the 10 most recent.
I need new workbooks based on category name in the below list. Respective sheets should be copied from the existing workbook with items as sheet names. List can be updatable.
I need to create a user form that will "pop up" and ask the administrator to enter the above details.
A - should be created automatically (ie last claim number + 1) B - user enters manually C - data retrieved from a list D - data retrieved from a list E - date is the date the information is entered
When I click on the "Office Button", then in the recent "documents dialog box" there is a list of my worksheets plus an "allsenatename" file". This then downloads a worksheet from a website. I don't know how it was added to my list, I must have entered it when looking at that web site in error.
i'm writing a refrigeration selection user interface, working from values on an excel spreadsheet. how to get the programme to automatically select a value from a list or range once a user has selected corresponding value from a list within a combobox. for example if a user sets the temperature of their refrigerator to -5 celsius i need the programme to automatically select the corresponding value of enthalpy for the air at that temperature.
I'm trying to use data validation to restrict the user to only selecting values in a list which I create. Right now, the list is a named range. I'd like to get rid of the range and just use a named list. I create a name using the following as my list.
Insert > Name > Create Name: Fruit
Refers to: banana,apple,orange
When I try to use the name Fruit in my data validation, I get the message "The List Source must be a delimited list, or a reference to single row or column." I thought my name "fruit" was a delimited list.
I'm currently running into difficulties with a text field full of user comments.
At present, there are cells with the #NAME error on them, and the only way I've been able to get rid of them is by double-clicking on them and pressing ENTER. This is also the only way I've found to remove excess white space in each cell.
Double-clicking each entry in the database would take far too long, and I'm assuming that there must be an easier way.
I imported a file of National Historic sights which imported fine with the exception that it's all out of order. Here is how it currently looks:
ResnameFIELDFIELDVALUE Lake Norconian ClubApplicable CriterionARCHITECTURE/ENGINEERING Lake Norconian ClubApplicable CriterionEVENT Lake Norconian ClubArchitectGibbs, Dwight Lake Norconian ClubArchitectWilson, G. Stanley Lake Norconian ClubArchitectural StyleMISSION/SPANISH REVIVAL Lake Norconian ClubArea of SignificanceARCHITECTURE Lake Norconian ClubArea of SignificanceEXPLORATION/SETTLEMENT Lake Norconian ClubCurrent FunctionDEFENSE Lake Norconian ClubCurrent FunctionGOVERNMENT Lake Norconian ClubCurrent SubfunctionCORRECTIONAL FACILITY Lake Norconian ClubCurrent SubfunctionNAVAL FACILITY Lake Norconian ClubFederal AgencyDEPARTMENT OF THE NAVY Lake Norconian ClubHistoric FunctionCOMMERCE/TRADE Lake Norconian ClubHistoric FunctionDOMESTIC..........................
I have some monthly sales data (max 200 lines per month). The sales are from numerous suppliers (we sell on behalf of others and take a commission). Each month the sales/commission are reported back to the suppliers that have actually sold something!
The problem I have is that some supplier may have sold one item and others may have sold ten (so a simple mail merge is out of the question).
I can create the data in Excel quite easily but currently have to copy and paste this into Word. I am sure this is quite simple, but I cannot get anything to work.
I was working with automatically exporting the contents of a textbox to an image file and found this post which I was able to modify slightly for my purposes.
Is it possible to improve the quality of the output image. I need to print out the resulting image and the quality of the image this method creates is too poor for my purposes.
I wrote a macro which creates desired output based on one default variables. But I want to change it to take user selected assumptions and perform the macro for each user selected variables.
I am confused with user forms and controls and what to use.
Can anyone give the code to how to add a list box to a userform and then add items to the listbox, and run macro based on thegiven input in the list box?
I've just exported a list from SharePoint to Excel, which gave me as a result a owssvr table, so far so good cause every time the list in SP is updated I can do a refresh and get the latest values; however once I opened the table I realized that the columns where not correctly order they were all mixed and the information does not look as it is required so I need to rearrange them. I do not need to delete a column I just need to be able to move them between themselves so that they will follow certain order: Product ID, Name, Amount of pieces, Place where they are stored, etc. this is very important because later on I use "vlookups" to do a series of reports.
I've tried cut- paste to move the columns to the correct position, unfortunately once I close the excel file and try to open it again, I got a message saying that the content is not readable and when Excel repairs it, my owssvr table loses the link to SP so I cannot update refresh the table anymore.
I cannot edit the list in SP as this site does not belong to me and I only got access to export the data and be able to refresh the table, all I want is to be able to move them within my ovssvr table so that locally I can work with them better.
Here is a pic of what I am talking about: cmms.JPG
So for example in the pic I put, I need that instead of Comments in Column E, Product ID can be in Column E, then Name in column F and so on..
I have a spreadsheet where the data held in column A is an export from another system and the exported data looks like this:
??????? Stn ??????? ??????? ??
What i would like to be able to do is to split out the data in column A so that the text before the 'Stn' (but including Stn) are shown in column C with text after 'Stn' is shown in column D. i have looked at using =LEFT, =MID or =RIGHT with =FIND but the problem i have is that the text prior to the letters Stn could be one, two, three or four words and the text after could be similar.
Function Allocation(LOB As Integer, CostCenter as Integer) As String If LOB = 00 And CostCenter <> 8300 Then Allocation = "Yes" ElseIf LOB = 1, 2, 3, 4, 5 Then Allocation = "No"
I have a macro that's running quite well and is cross-posted here:
[url]
What I need to do is allow for user input. I want to create a dialog box that pops up and asks for an input range, when the user runs the macro. Values can only be from 1 - 50. And the user won't be allowed to select broken sequences, like 6, 9, 12-15.
They would have to be continuous, i.e. 6 - 15, etc. I'm still very new to VBA. I can play with the control toolbox, but I have very little understanding of how to interface with the components that I'm adding/creating. Once I have that range, I want to use the inputs as the 'start' and 'stop' points for my loop. So I need to capture the values and pass them as input parameters, I'm guessing.
I can modify the loop to accept the inputs, I'm just not sure how to capture them from a user input dialog box.