Sum Of Products With Non Parallel Arrays With 1 Array In Reverse Order
May 31, 2014
I need to calculate a Sums of Products with unusual requirements. Please refer to the attached picture. The Orange Cells under "Noise Weight" are the Formula Cells. The Values in those Cells need to evaluate as shown in the equations below. I want this to be dynamic, so that if I expand the FM Region (Add Columns between "Noise Weight" and "FM15") AND expand the Severity Region (Add Rows between Severity and Noise Weight), I will not have to update Formulas manually. I know for sure that the standard SUMPRODUCT Function cannot handle this.
I want to now paste this data vertically (so transpose which there is a handy check off box for) BUT ALSO to Reverse the data so vertically it now reads :
16.7 (in cell A1 for ex) 14.5 (In cell B1 for ex) 13.2 (In cell C1) 12.3 (In cell D1)
Is there a way to paste special reverse the order of numbers?
Can I reverse the order of values in a column or row? [ie] first cell goes to last cell, last cell goes to first cell, middle cell stays where it is, etc. [and if so, how?].
the form works fine and is loading the data to the spreadsheet and inserting it into the first empty row. I need to reverse the order of entry into the spreadsheet. So instead of the data from the form going into the first empty row down the spreadsheet, I need to insert the data in a common fixed row at the top of the sheet, every time and then shift the older data out of the row and down the sheet. Essentially putting the oldest data at the bottom and the newest at the top, which is reverse of the EROW entry process, Last row command would essentially do the same thing and I don't know what command would do what I want.
At this time I sort by HOURS then Seniority so the sort would look like this:........
Here is the problem, RN HILLER and JA DOE have the same hours and seniority. It is our policy that when 2 or more names and seniority match, they must be sorted by reverse order first letter of last name.
So this would be correct. H in Hiller comes before D in doe when reverse sorting.....
Any shortcut method to convert the row or column data in reverse order . for eg.
from A1 to F1 data is mentioned as 1,2,3,4,5,6 now i need the result from A2 to F2 is 6,5,4,3,2,1. and in another case data in A column from A1 to A6 like 1,2,3,4,5,6 and result needed in B column B1 to B6 is 6,5,4,3,2,1
I'd like to take the value from one cel, and reverse the digit order in another cell. Example cell c11 value is 1234, I want to display that value in cell c12 as 4321. Is there a way to do this?
I have some code that scans each worksheet in a workbook for sheetnames beginning with 'Model'... if the worksheet name matches, it prints only the used pages on that sheet (see code below).
Dim Ws As Worksheet For Each Ws In Worksheets If Left(Ws.Name, 5) = "Model" Then If Ws.Range("A46").Value = "Page 1-1" Then Ws.PrintOut From:=1, To:=1 ElseIf Ws.Range("A46").Value = "Page 1-2" Then Ws.PrintOut From:=1, To:=2 End If End If Next Ws
This code works... but I would like it to scan the workbook in reverse order... ie. print from the last matching worksheet first.
How do I transpose the values in a column of cells (so the value in the topmost cell in the old column becomes the value in the bottommost cell in a new column)?
Using Excel 2013. I have a pivot chart with date as the x-axis, 1 y-axis series on a Primary and 1 series on a secondary axis. My pivot table is sorted in descending order by date because I need the most recent date on top. To chart the date in order from left to right, I've turned on Categories in Reverse Order .
1. When hovering over the data points on the primary series, the date is reversed. Example: the data point Jan31 says Jan1. 2. The bigger problem is the series using the Secondary Axis is plotting Jan31-Jan1 instead of the Reverse Order .
Is this a problem with Excel or is there other options that I can try to correct all this?
We have customers who order items in a specific order (Product X first, Product Y second, Product Z, etc...)
As it stands, no one orders in the same way and we want to try to standardize this process.
I have a list of about 600 products, such as : Product XProduct YProduct ZProduct 300...
I need to know the top 10 products ordered together. (the idea is that this variable will be changeable, and I can see the top 11, 12, or even more)
My idea is to generate a list of arrays in a new sheet with 10 products in them from the list; ie {Product A, Product B, Product C...Product K}, (noting to alphabetize the array entries and then remove duplicates form the row)
With this list, I will use each entry to check with each customer if they're order set array equals this list (again, alphabitized and duplicates removed to ensure comparison).
My question:Is this the most optimal way to do this? ... I am not even sure it would get me where I want to be. As it seems like an amazing amount of coding and formulas; but through my searching I haven't found this unique example.How can I generate my unique, alphabetized arrays for comparison (ie: 10x10, 9x9, 8x8...)
I'm using the vlookup function to pull numbers off an array. Is there a way that I can get the vlookup function to pick the smallest number greater than or equal to my Look_up value. If not is there a function that can do that?
I have read in 2 blocks of data as 2D arrays, and wish to create a third 2D array from some of the elements of the first two. When I do this I get an output range that is the correct size, however each row of data in the range is identical. This is what I am using:
[Code] .....
So my main concern is how to get each row of data being printed to Sheet2 to be the correct rows, and not just one row repeated thousands of times.
I am looping through each cell in a range and I would like to loop in reverse order.
Dim CELL As range Dim TotalRows As Long TotalRows = Cells(Rows.Count, 1).End(xlUp).Row For Each CELL In Range("C1", "C" & TotalRows) CELL.Select 'Code here to delete a row based on criteria Next
I have tried:
For Each CELL In Range("C" & TotalRows, "C1")
and it does not make a difference. I need to loop in reverse order since what I am doing in the loop is deleting a row. I am looking at a cell and determining its value. If the value is so much, then the row gets deleted. The problem is that the next row "moves up" one row (taking the pervious cell's address) and therefore the For Each Next loop thinks it has already looked at that row.
I am trying to develop some code to serve as an 'undo' for several macros that I have. They each take a selected range and perform some changes to that range. I have managed to make some code that will undo the last macro run but would like to make something that can go back several steps. To that end, I have started with the following code but am running into an issue when I need to use a variant array to hold multiple arrays of a custom defined data type:
VB: Type SaveRange Val As Variant Addr As String
[Code] .....
This declares some public variables I'll need, each as an array so that I can iterate through several steps of do/undo using the undoIndex. I then use them to save each range I am about to change by calling the following macro within my actual data-manipulating macros:
VB: Sub Save_RangeForUndo(rng As Range) Dim i As Integer Dim cell As Range
undoIndex = undoIndex + 1
[Code] .....
If you look at the last line here, this is my problem; I can't figure out how to properly use an array to hold each instance of OldSelection() for later referral. Just for completeness, here is my actual undo macro:
VB: Sub Undo_Operation() Dim i As Integer OldWorkbooks(undoIndex).Activate OldWorksheets(undoIndex).Activate
[Code] .....
I need to get this OldSlctVariant()() array to hold each instance of OldSelection() so that I can restore them for each consecutive undo. I'm not very familiar with the variant type and anything more than the basic use of arrays.
I've written this function to re-dimension an array based on the size of the range it is storing. Originally all my variables were simply declared as:
Code:
Dim XLRecOutput() as Variant
I then wrote a function which took the variable and the range as follows:
Code:
Function LoadRangeToArray(dataArray() As Variant, selectedRange As Range, Optional blnLoadData As Boolean = True) With selectedRange ReDim dataArray(1 To .Rows.Count, 1 To .Columns.Count) End With If blnLoadData Then dataArray = selectedRange LoadRangeToArray = dataArray End Function
Now I've created a class and set up Get/Let properties for the variables instead, but the above function fails with a Compile error on the call - 'Type mismatch: array or user-defined type expected' and I can't get my head around how to resolve it.
I am trying to multiply one array of prices for multiple input products across the volume that that product my go into multiple end products.
I know you can use SUMPRODUCT with two arrays that are equal BUT I want to Multiply the price matrix across 15 or 16 other matrices and sum all the products. The price matrix and the other arrays are all 1 x "whatever".
Alright: Sheet2 is a list of lines that have a parallel match, sometimes more than one. This example has 3 lines with slope 0.18 and I've added a few extra at the bottom for the sake of the example.
Worksheet Intersect is a working page where in the Bordered Box, highlighted in Green is full of parallel lines from Sheet 2. Sometimes there's none so I have a column to the right that says true if the line is on sheet2 and false if not. There's a helper column to the right to count up the trues and false.
I need to have laid out below, all the matches on Sheet2 to the green highlighted lines but not the original line that made the True. There could be lots of them, there could be one, this example has two for the slope of 0.18 and one for all the rest.
How do I write formulas to pull the matching slopes (column A) and y-intercepts (column B) from sheet 2, if there's an unknown amount and then list them on the intersect page?
Currently we have data that is plotted to a scatter plot along with an already defined line. Next, with a straight edge we attempt to draw a line parallel to the already defined line through the scatter points of data. We basically find two points that give us the best fit to the original line. What I attempted to do was calcualte the slope of the original line and then the slope of each combination of two points in the data set. I then subtracted the slopes, found the minimum difference and thought that would give me the line most parallel to the original. This doesn't seem to work. I'm at a loss, any advice?
This is for a race track. Drivers sign in on one sheet. On that sheet there is 4 different columns. Column 1 lists the division that they race in. Column 2 is the name of the driver. Column 3 is his car #. Column 4 is the number that he draws that decides his starting position. Typically there is 2 heat races per division with the odd number that is drawn being in the first heat and the even number being in the second heat. I created a second sheet called heat races. I am using an index function with a small function with a row. I have my divisions listed separately with 2 heats per division. I want to display the car number per division but lined up by the position that they draw. I have figured out how to display all of the cars per division, but I can't figure out how to separate them by what they draw (odd and even and in order from lowest to highest).