Convert Combination Of Excel Functions Into One User-defined Function
Mar 12, 2014
I have a really long function which counts the number of unique values in a selected range, and ignores blank cells. The function is like this (only works as an array function):
{=SUM(IF(FREQUENCY(IF(LEN(A1:A15)>0,MATCH(A1:A15,A1:A15,0),""),IF(LEN(A1:A15)>0,MATCH(A1:A15,A1:A15,0),""))>0,1))}
I want to convert this into a user-defined function COUNTUNIQUE, which only takes one argument: the range (A1:A15 in the above example)
View 6 Replies
ADVERTISEMENT
Jan 2, 2007
Possibility of creating "on measure" functions for the necessities of every customer, but I have some things to ask in merit and I hope that you can answer to me:
- which are the differences between a User Defined Function and a Macro?
- also User Defined Function is written in Visual Basic?
View 9 Replies
View Related
Jun 17, 2013
I have a mental block when it comes to writing functions.
In a cell I have the Post Code followed by a "#" sign (no speech marks) and sometimes more text
e.g. FY6 8JF#ABCD (where the Post Code is FY6 8JF)
The "#" sign always indicates where the Post Code ends, i.e. I want to return all the characters to the left of the "#" sign.
In a spreadsheet I would accomplish this with "=LEFT(AA14,FIND("#",AA14,1)-1)"
where the string of interest is in cell "AA14"
How do I write a UDF to do this?
View 5 Replies
View Related
Oct 13, 2006
Say I have written three user defined functions: first(a,b,c); second(a,b,c);third (a,b,c), which all give value for a,b,c inputs. How do I write a VBA program that uses the functions above? Say the code is called Combine(), after the user have typed in the value of a,b,c, the function Combine=first+second+third.
View 4 Replies
View Related
Feb 28, 2012
referencing constant cells in custom functions. This is a sample of my code:
Code:
Select Case Name
Case Is = "Ball"
Valve_Days = [V4] + Cushion
Case Is = "Check"
Valve_Days = [V5] + Cushion
Now, the problem is when I open the workbook up, or someone downloads the file from the server, it resets all fields to div/0 based on what sheet the last user 'Saved' the document on. I think this is occurring because it doesn't know which sheet to pull the value V5 from? The problem never started to happen until I added another sheet in the workbook. Is there a way to tell VB that it isn't just cell V5, but it is cell V5 on Sheet 'X'?
View 2 Replies
View Related
Sep 9, 2008
when writing user-define functions in VBA, how do you set up the help on function arguments, so that they appear in the dialog box for the user to enter the correct argument values?
(For example, in the VBA function ACOS, yoh have to enter "Number", and the dialog box explains: "Number is the cosine of the angle you want and must be from -1 to 1." I want to do the same with my own functions).
View 3 Replies
View Related
Jan 13, 2009
I created a user defined function and using Application.Volatile to update sheet automatically.
But this slowing down my sheet execution alot.
When i remove that it doesnt take much time but no automatic update.
View 9 Replies
View Related
Oct 9, 2012
Trying to convert an Excel 2003 macro to work in Excel 2007.
The problem line is
Dim MyDataObject As DataObject
I suspect the problem is a Missing Reference, but I cannot figure out which one. I have the same ones (in 2007) as 2003 except for one which is not showing
Microsoft Forms 2.0 Object Library
Is this the one it needs? It is called something else in 2007?
The ones I do have ticked are
Visual Basic For Applications
Microsoft Excel 12.0 Object Library
OLE Automation
Microsoft Office 12.0 Object Library
Microsoft ADO Ext. 2.8 for DDL and Security
Microsoft DAO 3.6 Object Library
Microsoft ActiveX Data Objects 2.8 Library
Microsoft Scripting Runtime
Microsoft XML v2.6
View 8 Replies
View Related
Jul 29, 2014
I am using Microsoft Excel 2010 and Microsoft VBA 7.0 on my system. I would like to eventually create a PowerPoint and insert charts generated in the Excel workbook. In the meantime, I cannot get the basic PowerPoint created.
The line in red is highlighted blue when the compile error "User-defined type not defined" message box appears.
Public Sub TryAgain() Dim myPowerPoint As PowerPoint.Application
'
' do nothing for now
'End Sub
I have set the references such that Microsoft Project 14.0 Object Library is indeed checked. The Excel file only contains this code in a module. All sheets are blank. Nothing else is written yet.
View 1 Replies
View Related
May 5, 2013
Base 64 Encoding.
Dim objXML As MSXML2.DOMDocument
Dim objNode As MSXML2.IXMLDOMElement
Are causing the User Defined error, but the same workbook is OK in XP and Win 7.
VB6: Free, Easy and Quick Base64 Encoding and Decoding in Visual Basic [a NonHostile article]
Says you need a reference to Microsoft XML, v2.6 (or later) and the Win8/2010 workbook does have one for Microsoft XML, v6.0
View 1 Replies
View Related
Oct 9, 2007
when you type in a builtin function in the formula bar such as =DAY(), a small callout box appears below telling you the syntax - in this case "DAY(serial_number)". Is it possible to achieve this for a user defined function?
View 9 Replies
View Related
Jul 14, 2014
I am trying to create a function using the functions of IF and "And", but for any reason I don't know how to add the Add function
My function written in excel will looks like =IF(AND(A80="00",C80<>"8300"),"yes","no")
LOB Cost Center
00 1000
00 2000
00 8300
01 5000
02 8300
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"
End If
End Function
View 3 Replies
View Related
Nov 25, 2008
I have created a custom add-in with custom functions and am trying to make it user friendly for other users. By running the following macro I can add functions to different categories, but I was wondering if there was a way to do this automatically so that anyone that adds this add-in will have the functions show up in the proper category without having to manually run this macro.
View 6 Replies
View Related
Nov 4, 2009
I can't get a simple function to work. I attached a screen shot of my function. It's very simple -- adds two numbers.
View 4 Replies
View Related
May 2, 2013
I am trying to write a function which return the difference of sum of range A and sum or range B. But I keep getting error with my codes.
Code:
Function deltaPipeline(YTDPplComm As Range, LastYearPpln As Range)
deltaPipeline = Sum(YTDPplComm) - Sum(LastYearPpln)
End Function
View 1 Replies
View Related
Nov 21, 2007
I am stepping through a sub in module one that for some reason keeps jumping to a user defined function in another module. I've checked and and the function isn't being called.
View 9 Replies
View Related
Jun 13, 2006
I'm coding an UDF.
The main thing is, that if in the choosen cell are a specify value, than in another cell the interior color should change.
I don't know how can I change the interior color in function.
The code, buit it's not working:
Function Alerting(rCell As Range, tCell As Range)
If rCell.Value >= 5 Then
Alerting = " alert"
Cells(tCell.Row, tCell.Column).Interior.ColorIndex = 3
End If
End Function
View 3 Replies
View Related
Oct 24, 2006
I just hit F5 and use it in Excel with no problem. This time a person who developed the function had me install it as Add-In. I do not know if it is supposed to give any advantages (versus simply typing function in VBE window + activating it by hitting F5 key), but the function works extremely slowly. Is this Add-In
View 6 Replies
View Related
Oct 1, 2009
I have a function in VBA of the type. Function MyFunc(Indx As Integer, k As Long, Rho As Range, A As Range) As Variant .... End Function
which is called as a user-defined function from within the Excel worksheet. When called with the last two arguments being a range (i.e. Result = MyFunc(1,98,A1:A2, B1:B2)) it works fine. However, when I try to directly use an array constant instead of a range (i.e. Result = MyFunc(1,98,{10,11}, {20,30}), it returns a #VALUE error.
I thought I could fix it by redefining the last two arguments as arrays of type double, but this didn't work either (i.e. Function MyFunc(Indx As Integer, k As Long, Rho() As Double, A() As Double) As Variant .... End Function ).
View 3 Replies
View Related
Jun 6, 2012
I created an addin that puts a formula in a cell to make use of a UDF in the addin. It works fine.
But when I make changes to my addin, save it as new name, load the new addin (same as the old but with new code for other things) and then open the workbook that had the UDF working, it now changes from
=customUDFfunction(1,2,3)
to
='C:Documents and SettingshomeuserApplication DataMicrosoftAddInsAddinV123.xla'!customUDFfunction(1,2,3)
The code I'm using to create the formula in the cell is
Cells(x, y).Formula = "=customUDFfunction(1,2,3)"
I'm assuming that when I create the formula in the cell it gets tagged somehow with the addin name and location. How to just put the formula with keeping it specific to the addin that created it?
View 3 Replies
View Related
Feb 7, 2007
A client has a registration workbook for each student which contains 3 types of worksheets, A) Transcript B) Registration and C) Grade sheets. Each file has only 1 Transcript sheet and 1 to many pairs of Registration and Grade sheets.
I have a GPA user defined function which obviously can only be used on a Grade sheet. I would like to return an Error if the user trys to use the udf on a non Grade sheet.
Currently I am just returning 1/0 but the smart tag returns #Name. Can I control the text displayed somehow?
View 9 Replies
View Related
May 8, 2007
The below macro(found in VBA and MACROS for Excel) works well but I need a few modifications
Option Explicit
Function SortConcat(Rng As Range) As Variant
'Rng —The range of data to be sorted and concatenated.
Dim MySum As String, arr1() As String
Dim j As Integer, i As Integer
Dim cl As Range
Dim concat As Variant
On Error GoTo FuncFail:
'initialize output
SortConcat = 0#
'avoid user issues
If Rng.Count = 0 Then Exit Function
'get range into variant variable holding array
ReDim arr1(1 To Rng.Count)
'fill array
i = 1
1)My array is 128 cells wide(AT3:FQ3) and i get a type mismatch--seems to work well for 36 cells
2) These cells contain dates and numbes---all i want to sort and/or display is the numbers
Note: some numbers are in parenthesis and other are either single or double digits. Example: numbers are (8/8),8,10,(HG6),4,6,etc. And Dates are 04/06 format (no year, and no parenthesis)
3) All empty cells in the array show up in the above SortConcat function as zero, and are un-necessary
4) The final output should be no more than 6 concatenated numbers, so column width is not an issue, and the bubble sort is really not necessary but would be a nice feature
View 9 Replies
View Related
Nov 16, 2007
I want to build something like this....
function getdb(a,b,c,d,e,f........x)
getdb = a & "," & b & "," & c &....& x
end function
where x is the total number of variables.
So if in excel, I run getdb (a,b) that it will know that the funciton has only 2 variables but if i run getdb(a,b,c,d,e,f,g,h,i,j) that it knows.
I am trying to avoid getdb(a,b,,,,,,,,,,,,,,,,,,,) as I bet the user will not know how many ","s to use
View 9 Replies
View Related
Aug 7, 2009
Suppose I have a UDF: function fubar(rg as range) as variant
and I place: =fubar($B$2:$D$11) in cell $A$1
When will fubar be calulated? Is it once initially, and then whenever there is a change in any of the cells within B$2:$D$11.
A hyperlink to an explanation would be just as welcome as a typed reply
View 9 Replies
View Related
Nov 12, 2006
I am presently trying to debug a large and repetitive piece of code and find that I keep ending up in a function within the same module. I assume this is because the function is being triggered as I manipulate data. If this is the case, does anyone know how to suspend the function while I debug? I guess I could comment it out as I do not need the data it is returning but during normal running, this is not possible and I expect if it is fired off then it will slow things down considerably if my code keeps getting interrupted by interreupts from the function.
View 2 Replies
View Related
Dec 28, 2006
I am trying to write a User Defined Function in VBA to perform a simple two-dimensional table lookup. I have the temperature distribution in a solid given in a table in Sheet2. The first column of the table contains the time values, the first row contains the spacial values (radii), and the intersections contain temperature values. These ranges are named times, radii, and temperatures. In Excel, I can perform the lookup using: =index(temperatures, match(time, times, 1), match(radius, radii, 1))
But how do you do this in VBA? More specifically, how do you deal with passing ranges to the WorksheetFunctions?
Function temperature_ref(time_range As Range, radii_range As Range, temperatures_range As Range, time As Double, raduis As Double)
r = WorksheetFunction.Match(time, time_range, 1)
c = WorksheetFunction.Match(radius, radii_range, 1)
temperature = WorksheetFunction.Index(temperatures_range, r, c)
End Function
This function would be called (from any worksheet) as..................
View 4 Replies
View Related
Mar 3, 2007
how can I generate a user defined function(UDF) that triggers excel's solver? I have a set of 5 constraints and one objective that is to be maximized. I want to perform a senstivity analysis for my objective changing these 5 constraints. So I want the UDF to take all the 5 constraints and return me the optimized value (obtained from excel's solver) for the objective cell.
View 8 Replies
View Related
Jun 18, 2007
I have dates & times in column A1:A20. In B1:B20 I have the corresponding temperatures for each date. I have set up the following dynamic ranges to refer to these ranges.
DateRange refers to A1:A20
TempRange refers to B1:B20
I have also made a user defined function that will determine if a date/time is between two times. Eg., If 21/05/06 07:30 is between "07:00" and "17:00". This function isn't concerned with the date, just if the time falls between the start and end times.
Function BetweenTimes(dDate As String, dStartTime As String, dEndTime As String) As Boolean
dDate = CDate(dDate)
dStartTime = CDate(dStartTime)
dEndTime = CDate(dEndTime)
BetweenTimes = False
'If the end time is before the start time, see if date/time falls between start and end..........
View 9 Replies
View Related
Jun 4, 2008
Is it possible to create a User Defined Function that replicates the "Copy/ Paste Special" function? I tried recording a Macro and using that as the basis for the User Defined Function but it didn't work.
View 7 Replies
View Related
Nov 1, 2008
Indicate that a user-defined function can only be based upon the calculations that can be placed in a single cell. If you have too many calculations to put them into a single cell, e.g., an entire page of calculations based upon a few starting parameters that eventually yield a single value, then how do you reuse this entire page of calculations?
Is there another Excel mechanism that allows an entire page of calculations to used as a stored procedure?
View 3 Replies
View Related