Formula Using New Functions Or Array
Dec 9, 2008
I have a list of part #s that i need to group together and sort by their corresponding dates. The formula I've written does what I'd like it to do (assign a value to part groups that i can sort by first before sorting by the date) , but is too large/has too many nested functions to be applied. This formula is going to be used with multiple queries from a database that updates regularly.
EXAMPLE OF DATA(6000+ entries)
http://www.excelforum.com/attachment...1&d=1228860131
This is the breakdown of my formula, I've bolded the parts that aren't constant
=IF(AND(LEFT(D2,5)>="S2000"LEFT(D2,5)<"S2005"),1,IF(continues)...................
View 3 Replies
ADVERTISEMENT
Jun 13, 2009
I occasionally see array and/or sumproduct formulas that incorporate symbols that I don't really understand in an array context.
These symbols include:
* (asterix)
| (vertbar)
. (period)
; (semicolon)
Also: are there other powerful symbols that have meaning in an array or sumproduct context?
View 3 Replies
View Related
Apr 7, 2014
In sheet1 I have name(column A) and value(column B)
In sheet2 I have name (column C) and key(column D)
In sheet 3 I have results
Example ( It is just a total nonsense example, the real data is net inflow of some funds that are unique)
Sheet1
House 1000
Car 1500
pet 2000
Sheet 2
house1
car1
pet2
So in the sheet 3 I want to put a formula that is capable to sum all values of the sheet2 if the name has a key of 1in the sheet2, the key columns has values of 1 or 2
I think in SQL will be something with join and group by with having clause.
The result will be 2500 in the sheet 3.
What I tried: My attempt is to do something like this code ( using array functions).
View 7 Replies
View Related
Sep 15, 2012
What I am trying to do is to automatically build a "tree" diagram representing the links in a huge model which is dynamically configured. What I have a problem with is the following:
The tree consists of layers, I start off with the top layer and for each entry in the top layer I can add all its subsidiary layers and draw links between them, this uses a function which takes as its arguments the node name and its layer number (how far down the tree it is) and the number of items in that layer so far.
So I start at the first item in Layer 1 and there are as yet no layers below it. I start at the first one and add the first item in layer 2 then I kick the function off again and that adds the first item connected to item 1 in layer 2 in the layer below (3) starting at the first one, and so on. When I reach the bottom I go up one layer and add the second item in the bottom layer and so on. When I have added all the connctions to the first item in the next to bottom layer I go up one layer and add the second item connected to the first item in that layer and then add all the items connected to it and so on and so on.
In this way I build up the network exhaustively (to make things more complex more than one item in a layer may connect to the same item in the layer below).
I can do almost all that, the issue I am struggling with is I need to keep track of how many items there are in each layer (as some layer 1 items connect to 1, 2, 3 ...8 layer 2 items and so on). my idea is to keep a running total of these in an array LevelCount(1), LevelCount(2) etc. so when I add a new item to a layer I know where to put it. However I cant workout how to do this final step.
Currently I have a function that draws the nodes below a specified node this and takes the correct value from the array LevelCount(n) by passing Levelcount(n) (where n represents how far down the tree you are) into the function and the function then updates the value of LevelCount(n) (ByRef) so that next time I use it it is correct. That is fine but what I want to do is to is to call the same function from within itself when it adds each node which would make it work automatically - it would keep calling instances of the function until it reached bottom and then go back one step at a time to the top but I cant work out how to reference the right value in the array to pass into the second (and subsequent) instances of the function.
I don't think I can simply pass (n) into the function and in the body of the function set LevelCount(n) = LevelCount(n)+1
I also dont know ahead of time how many layers the model will have, nor can I tell which layer a node sits in as it depends on the links that are dynamically configured.
Beyond this a node can also be subsidiary to nodes in more than one level so it needs to sit at the lowest level - but I suspect if I can work out how to do the first bit i can do this too.
View 7 Replies
View Related
Nov 19, 2009
I have an array with dimensions (5000,30). I want to perform a worksheet function "Percentile" on specific columns within the array. So for instance I may want to know the element falling at the 50th percentile in column 5 of the 30 column array. Is there a way to do this without having to place the array onto a worksheet?
View 4 Replies
View Related
Dec 13, 2006
All I am doing is counting text values in a table.
The table has 3 main columns(which are relevant to this thread anyway).
Shift - Area - Status
The example I have attached shows examples of DCOUNTA, SUMPRODUCT and a Pivot Table.
I have read many threads stating that the best one to use is Pivot Table followed by DCOUNTA followed by SUMPRODUCT.
The most effective for me seems to be SUMPRODUCT (although this does slow excel down dramatically when you use a lot of these formulas). As do Array Formulas
The Pivot Table does not update on its own, therefore constantly needs to be refreshed. (I could use code to do this)
The DCOUNTA seems to be the least effective at doing what I want (unless I am doing something wrong)
In the attached example can the DCOUNTA be used more efficiently as I don't like the fact that I am duplicating rows to apply the criteria for a different shift. e.g
Area 1 - Late Shift - Banned
Area 1 - Early Shift - Banned
I want my table to be as follows (as the SUMPRODUCT shows)
AREA - Early Shift - Late Shift - Night Shift - Area Total
Area 1
Area 2
Area 3
Area 4
Area 5
Shift Total
View 4 Replies
View Related
Sep 25, 2009
My excel (2003) is stuck in array mode - is there any way to get it out of Array Mode and put it back in the letter:number display for formulas/functions? It's doing this in VBA too which is totally killing me.
View 2 Replies
View Related
Apr 7, 2009
Say I have 3 columns of data: A1:C10 and I want to run a Match() function on them all together to see if I get a match any one those cells, say the value of have in X1.
Since, Match only allows a One-Column lookup array.. is there a way to "concatenate" or "append" the 3 columns together within a formula so now I would be looking to Match in an array that is 1 column * 30 rows?
Basically want to convert =Match(X1,A1:C10,0) to =Match(X1,A1:A30,0) without moving around the raw data in the sheet.
And I want to avoid doing an AND or OR formula that uses 3 separate MATCH() for each column.
I have a hunch that the MMULT or MMULT/TRANSPOSE functions are involved, but can't seem to get it right.
View 6 Replies
View Related
Jul 11, 2014
Basically I want a formula that automatically inputs a code based on 'marital status'. This would be easily done using a vlookup except for the fact that one of these marital statuses has multiple options. Example: if the marital status reads "Married" the code can very depending on whether it is different gender/same gender. I have gender codes in a separate column.
For example:
Status--->Code
Single---------------->Sin
Civil P'ship------------>Civ
Married + MM--------->Mar 1
Married + FF---------->Mar 1
Married + MF--------->Mar 2
Married is, of course, in a separate cell from the gender codes, which is why I've attempted to bring the AND function into the IF statement. However, I'm having no luck.
The spreadsheet I am designing is already getting pretty big so I wanted to avoid having more columns than necessary. Is it even possible to group this together in one formula?
This is an example of a formula I have tried but returns the #value error.
=VLOOKUP(I31,Mapping!$A$1:$C$12,3,FALSE)+IF(AND(I31="Married",AH31="MM"),"MAR 12","")
View 3 Replies
View Related
Aug 1, 2008
I am currently taking Excel but neither my professor nor my text explained how to make a formula where the formula has two different operations, (e.g., division then addition) within the same formula. For example, in Y6, create this formula: Divide P7 by the sums of H4,I4, and J4. I tried this formula but I think it's wrong: =P7/(H4,I4,J4)
View 3 Replies
View Related
Jan 5, 2009
I've been using Excel for years and had very few issues. However, I recently went into a spreadsheet to update it and was unable to select and enter data into an individual cell. When I click on a cell and try to enter #s nothing happens (my num lock is on).
Then when I try to click into another cell it just highlights that cell, along with any other that I move my cursor over. Once I click on one cell I can't stop the highlighting from happening. I can't even click on anything in the toolbar.
View 9 Replies
View Related
Jun 17, 2006
I'm looking for a formula that can do 2 different functions in one cell. I have a subtotal in A1 and my total in B2. Now, I want B2 to say if A1 is lessequal to $100,000 then multiply by1.5% plus A1 and if greater than $100,000 muliply by 2.5% plus A1.
View 9 Replies
View Related
Nov 6, 2013
Is there anyway to recreate this formula w/o it being an array ?
{=IF(C3="","",IFERROR(INDEX('Master List'!$B$1:$B$2000,MATCH(TRUE,ISNUMBER(SEARCH('Master List'!$A$1:$A$2000,C3)),0)),"ADD TO MASTER"))}
View 5 Replies
View Related
Dec 3, 2003
correctly using variables within functions used in formulas specified by VBA. Here's an example:
I want to place a formula within a workbook file called "Books 2003.xls" that goes to the version of the file for the previous year (or whatever year is specified) and does a Sum of a particular range (where that range is also specified as a variable) so it sums up the Total for the previous year for the same number of months that have data in them to date for the current year. Once VBA places the formula where it belongs, it should be able to always provide a running comparisson with the current year to date total and the totals for the same period for the previous year. Here's an example of the intent of this simple formula:
ActiveCell.FormulaR1C1 = "=SUM('[Books 2002.xls]Income Summary'!R4C2:R8C2)"
The workbook files will all be named the same way: Books 2002.xls, Books 2003.xls etc.... The range to be summed will always start at R4C2, but could then end anywhere from R4C2 (same as B4) up to R15C2 (same as B15).
I already have a routine that captures the value for the variable CurrentYear in the form "2003" and thus have another variable for PrevYear (= CurrentYear -1), and so then have a way to correctly specify the variable "BookName" to get the correct filename needed. I also have a variable for the CurrentMonth in the form of "1 through 12", and can use that to specifiy the correct RowNum needed to determine the end of the range (RowNum = CurrentMonth + 3).
I've tried to substitute the variables "BookName" and "RowNum" into the above formula with various combinations such as what follows, but I'm not getting the correct syntax with the right number of quotes etc...:
ActiveCell.FormulaR1C1 = ""=SUM('[" & BookName & "]Income Summary'!R4C2:R" & RowNum & "C2)""
This doesn't work, and I'd love to learn the correct rules for syntax when inserting variables into situations like this.
View 4 Replies
View Related
Apr 28, 2014
SUMIF and SUMIFS formula, where in I want to set criteria in the formula as greater than or less than or equal to value derived from another formula. I am inserting the following formula but excel is not allowing me to enter the formula.
=SUMIFS($C$22:$C$30,$E$22:$E$30,>=LEFT(L21,3),$E$22:$E$30,<=RIGHT(L21,3),$A$22:$A$30,G22)
View 3 Replies
View Related
May 18, 2007
I just wanted to concatenate a few cells using an array formula like this:
{=SUM(IF(B2:J2="";0;B2:J2))}
Well, this does not work. I have no idea why it fails. Any solution to this without scripting?
View 9 Replies
View Related
Jun 30, 2006
i need to replicate what i did using array formulas with VBA macro (array variable). to make things clear and simple i created an example for illustration only. look at it & u will find what i did & what i need to do ,much of it
in writing so that i accurately describe my problem. attached is my example
View 4 Replies
View Related
Jun 24, 2011
Is there a formula similar to WORKDAY that would include weekends and make something due on the next business day? For example, I have a bill due on 6/1/11 and I need to follow up 5 days later - which would be normally 6/6/11 but the WORKDAY formula makes it 6/8/11 as it is adding 2 extra days.
I am using Excel 2010.
View 14 Replies
View Related
Aug 25, 2006
I am trying to copy or edit a cell thats has the following formula (see below), I keep getting this message "You cannot change part of an Array!"
=If(ROW($A2:$A8)-ROW(A2)+1>COUNT(W2:W8),"",INDEX($A:$A,SMALL(W2:W8,ROW(INDIRECT("1:"&ROWS(A2:A8))))))
View 5 Replies
View Related
Jun 7, 2006
I'm trying to have a macro write down an array formula, but when I hit ctrl+shift+enter, the recorder says it can't record. If I write in the macro ...FormulaR1C1 = {=...} then I get the formula as a text. Is there a way to tell the macro that a formula should be entered as an array formula?
View 2 Replies
View Related
Mar 14, 2008
I am aware of the following topic in the VBA Help file:
"Using Microsoft Excel Worksheet Functions in Visual Basic
You can use most Microsoft Excel worksheet functions in your Visual Basic statements. To see a list of the worksheet functions you can use, see List of Worksheet Functions Available to Visual Basic.
Note Some worksheet functions aren’t useful in Visual Basic. For example, the Concatenate function isn’t needed because in Visual Basic you can use the & operator to join multiple text values."
And I'm aware of how to call Excel funcitons from within VBA; e.g., answer = Application.WorksheetFunction.Min(myRange)
However, not only are some Excel functions not useful; the fact is they cannot be used because VBA has a native function that does exactly the same thing and you have to use that native VBA function to achieve your goal. It is these overlapping functions that I am especially interested in. I want to know what I should use directly in VBA and what I need to go to Excel for.
View 9 Replies
View Related
Mar 6, 2007
I want to use an array formula to sum about 5 rows each of which has 5 columns, e.g.
1 2 3 4 5 15
2 3 4 5 9 23
5 4 3 2 5 19
9 8 7 6 5 35
7 6 4 2 1 20
The final column is the total for each row. Instead of using =sum(a1:a5) then dragging the formula down thus creating a new formula for each line, I want to use a single array formula to achieve the same result. I have tried =sum($a$1:$a$5:$e$1:$e$5), even though all my instincts said it did not look right. And I was right!
I'm sure it is easy, but I just cannot work out the syntax.
View 11 Replies
View Related
Aug 2, 2007
I have an formula for calculating the factor of a number this a fairly long array formula I decided to try to write this in vba to use as a user defined function. I first decided to record a macro of me writing the formula in excel to see what the code looked like, this I then adapted in another module copying the basic formula in a function procedure. my recorded macro works fine when I run it but my adapted function shows an error namely that the FormulaArray is not defined. I've tried all kinds of variations but with no success. how do I write an array formula in V.B.A.
View 13 Replies
View Related
Oct 16, 2005
I have a list in excel that contains the same sku more than once on a
workbook in no paticular order, however i want to bring back the last
time that this sku appeared on the workbook for example:
SKU 271562 date counted 11 september
SKU 275555 date counted 12 september
SKU 271562 date counted 12 september
sku 255212 date counted 13 september
& so on
SKU 271562 date counted 11 october
The date range is only applicable to the date counted therefore i
cannot search via a date
2. vezerid Oct 13, 7:09 pm show options
Newsgroups: microsoft.public.excel.worksheet.functions
From: "vezerid" <veze...@act.edu> - Find messages by this author
Date: 13 Oct 2005 11:09:27 -0700
Local: Thurs, Oct 13 2005 7:09 pm
Subject: Re: Excel help
Reply | Reply to Author | Forward | Print | Individual Message | Show
original | Report Abuse
View 14 Replies
View Related
Aug 27, 2009
The following formula works, but takes far too long for an efficient user to run (note the array):
{=(MAX(IF(($B$4:$B$50000=$B4)*($I$4:$I$50000=$X$1),1*$J$4:$J$50000)))}
B = Number Values (e.g. 3431003)
I = Simple Text Values (e.g. I, P)
J = Dates (e.g. 4/15/2009)
Is there a formula that would provide the same result in a quicker fashion?
Note: Unfortunatly, the data will get up to 50,000 rows.
View 12 Replies
View Related
May 9, 2007
is it possible for an Array formula to be 3D? I am having no success, and I have heard it is - if you know how to do it right...
View 9 Replies
View Related
Jun 1, 2007
Seems not.
For example,
=SUMPRODUCT({1,0,1,0},F24:F27)
is ok. But
=SUMPRODUCT({if(F24=1,1,0),0,1,0},F24:F27)
is not.
Why is this so or is there a way to go aroung this?
View 9 Replies
View Related
Aug 25, 2009
I have a lengthy array formula that I try to enter using VBA. I get the common run-time error. I tried breaking it down, but that did not work. Maybe the syntax was wrong in the break down. Can some help out please?
=IF(COUNTIF($B:$B,B2) 1 Then
Range("B" & x).EntireRow.Delete
End If
Next x
Application.ScreenUpdating = True
View 9 Replies
View Related
Aug 28, 2009
I have a custom UDF (user defined function) that I have been using for about 2 years with success. I am now trying to use it in an array formula and getting a #Value! error.
The UDF looks like this...
=MyUDF(A1,B1)
...where A1 is a string to be evaluated and B1 is a number. Basically, the function returns another number depending on the relationship of the two inputs. I have not had any issues in the past using it as shown above.
Now, I would like to use this function on a range of cells and sum the results. Here is what I have now...
{=SUM(MyUDF(A1,B1:B100))}
Does anyone know why this returns a #Value! error?
View 9 Replies
View Related
Jan 19, 2014
I am using the following array formula "=SUM($I$35:$I$1000*($G$35:$G$1000=$B$10))" which works fine but if there is nothing to sum it returns "0", but I would prefer a blank cell if there is nothing to sum.
View 3 Replies
View Related