Can someone pls. assist me with obtaining an Excel or VBA solution for joining data from across a range of cells/columns into one cell? The single cell containing the intended output has to include the name of the source(s) that are noted on the header column and the price corresponding to each source but would exclude the sources which did not have pricing data. Example of logic is noted below:
Cells B1 - D1 contains names of pricing sources.
Cells B2 - D2 contain prices from these pricing sources.
Intended output: Cell E2 would have the names of all the pricing sources that had prices as well as their corresponding prices; but would exclude those that didn't.
Lastly, pls. see attached Excel file for format of data and intended output in Column E.
I feel like I should be be able to do something like Join(Range(XX)," ") to create a space-separated string of values...
Have I missed an easy one-liner, versus one by one concatenating the value from each cell?
In this case, I am doing exactly that - taking 4 columns of more or less unimportant data and cramming them into a single column just in case they are needed someday.
Sub Test() Dim strTemp As String
strTemp = _ Range("C2").Value & " " & _ Range("D2").Value & " " & _ Range("E2").Value & " " & _ Range("F2").Value '//Result: strTemp = "a b c d"
'//This fails - is it possible to do something like this strTemp = Join(Range("C2:F2"), " ")
What i need to do is combine the 2 columns together in another sheet in a column. I do require duplicates to come through, and ideally i need it sorted.
I am attempting to make a range of cells' data be deleted if a cell outside of that range that had a name in it is no longer there. So if I have a list of names in cells A1:A6 and a range of data in cells D10:E20 that corresponds to a name in cell A2. If the name in A2 is deleted I would want the data in D10:E20 to be deleted.
I have two spreadsheets, A & B. A can be thought of the master spreadsheet and has one record for every employee giving personal information, including a personel number. B has 0, 1, or 1+ records for every employee in A. Each of these records has a personel number. I want to copy the value of a specific field from B to A.
Using the following code to remove empty rows based on whether a specific range of columns is empty. The code works if the cell has a zero, but not when the cell is blank. An example of the data is attached.
VB: Public Sub DelRows2() Dim Cel As Range, searchStr, FirstCell As String Dim searchRange As Range, DeleteRange As Range
I've managed to write a macro to take data input into a column-oriented form and transpose it into the next available rows in 3 data sheets. In the blank workbook, you will find a functional data entry form with a "submit" button that transposes data from the first column of the form to the next available row in sheet "Data_R", data from the second column of the of the form to the next available row in sheet "Data_I", and the sum of both columns to the next available row in sheet "Data_C", clearing the form for further use.
Now, I need adding to the macro code that will sum data from the constituent columns of each multi-column category header (Marketing, Intake, etc.) in sheet "Data C", entering the sums under their respective single column headings in the next available row of sheet "Data_S".
I need to do this in order to use Defined Names (utilizing the OFFSET function) to create charts comparing the different categories that automatically update as new data is input via the form. I know how to do this, I just need the multi-column categories summed into single columns to make it work.
I am looping thur an array to Format A range of cells. After the format is complete I need to validate that all of the cell in a range are empty if so hide the whole Column.I was Try to do it like this. I am not getting an error but nothing seems to happen either. Also The Boder of the cell only appers on the Last cell it should be on the cells....
I'm working to build a macro to help clean up data I download out of our company's online resources. I know that the data will run from column A to N but the number of items (and thus number of rows)will change. I need to sort all used rows except for the last one (which containes totals and I don't want to include in my sort). So right now I'm just trying to figure out how to select from A3:NX, where x is the row above the last used row.
which I think should find the last row in N to have a number in it, minus 1. However I'm getting a compile error that function or sub are not defined. (seemingly refering to the Match, but I'm not sure).
So I have two sets of data, I've attached a worksheet which has them both. The datasets have different intervals, but I need to drag "Colour" from Data2 into Data1 and associate it with the correct interval. Sometimes the intervals match up and sometimes they don't - which could be a problem, but as long as its within a small spread it's fine. The "Colour" column in Data1 is filled with my desired result, the source being Data2.
I have a list of numbers from cells A1 to A150 (they are five digits long), I need to join them together preferably with a the following format '12345', I have tried concatenate but it would take too long to type it all out.
I have same tables(same name of columns in all tables) with different data in 30 different workbooks...can I somehow merge data from all tables in one table?
I have to cell values that are strings and I want to add the two string values together to form a sentance, when I do this using a + sign or a & sign there is no space between the 2 strings, how do I get a space?
I am creating an excel sheet where I have a list of names and dates to correspond with each of those names. Now, I have another sheet where I want an autopopulated list of those names and dates that are within a range of days since the original date.
For example, I own a company and I want to call back my customers 2 days from the first date, 10 days, 20 days, 30 days, 90 days, 120 days. I have a sheet where I have all my customer's information (Name, contact number, date joined the company etc.). Now, I on a separate sheet, when I enter the current date I want an autopopulated list of which customers I can call back within the 2-4 days, 10-12 days, 20-22 days, 30-32 days, 90-92 days, and 120-122 days.
I am prepare budget salary base on actual joining date and budgeted joining date. I can only manage to get the formula by joining month not by joining date
I read several forum questions for data join and merge but not found a solution for the following scenario. Is possible do it ALL in one macro? I have two different xls files.
file1: sheet has the following structure refcode price count XXBK443 200.0 3 KKKN339 333.0 2 etc..
file2:sheet1 has the structure refcode prod_name color height XXBK443 prodname1 green 10 ZZZZ000 prodname2 yellow 22 KKKN339 prodname3 white 15 AAAA111 prodname4 white 30 etc..................................
When the macro is run, it works with the exact amount of data that I've entered.
However, because I have specified a specific range, if I add a row or column of data to the spreadsheet and run the macro again, it throws the whole thing off (certain cells get formatted when they shouldn't and others aren't formatted)
How do I tell the macro to look in the spreadsheet for varying ranges of data and format those cells?
Formula in B2: B17 =IF(RIGHT(A2,10)="_New Entry",1,"")
Formula in C1 =SUM(B2:B17)
I would like to remove Column B, and add the formula in C1 itself. Column B is not of any use, it is just showing which is a new entry and C1 is totaling all the New entries, which is in this case is 4.
Its fine but if i insert a new row or column then it mucks the whole thing up. Is there away of naming them but if any cells, row or columns are inserted the range will automatically adjust to suit1
I have a Sheet which gathers data from another Sheet in the same Workbook, then uses that data to produce more output. However at it's smallest it is only 2 rows of data deep and 2 columns of data wide, and at it's greatest it is 100 rows deep by 48 columns wide.
I would like to display only the relevant output by "Unhiding" the completed rows and columns.
After headings etc the rows start at 28 and the columns at N.
I have written the following which works for the rows but nothing happens with the columns,
Private Sub Worksheet_Activate() Dim MyRange As Range Dim MyRow As Integer
Set MyRange = Range("a28")
MyRange.Select
Do
MyRow = MyRange.Row If MyRange.Value > 0 Then Rows(MyRow).Select Selection.EntireRow.Hidden = False End If
Set MyRange = MyRange.Offset(1, 0) Loop Until MyRow = 128 End Sub...
I am trying to build a staff roster. The staff rotate over a 4 week cycle. the name of the staff member, and their shift needs to be looked up from the key then matched with the particular week. the name and shift then need to populate specific cells.
I have attached the worksheet so you can see what i am trying to achieve.
I have data in some of the cells within range A26:A39
These cells are populated via an IF function on another worksheet. Even though the cells appear blank (as in the value returned is ""), there is a formula in these cells. I think it's called formula blank?
I am looking for a way to copy the data from the cells within the range which are not blank (ie: not = "") and paste this data elsewhere on the sheet in a list with no blank spaces in between.
I anticipate that there will be 4 non blank cells within this range.
Ideally I would have data from the nonblank cells copied and pasted to cells A40 A41 A42 A43