Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 6
Default How to make a public function procedure with undefined number of r

I am making a user defined function in Excel that takes an unlimited amount
of ranges as input. How shall I do this?

I have figured out that a one range function could be as follows:

Public Function MySum(MyRange As Range) As Double

The question now is how to make a function with an unlimited amount of
ranges and to be able to uses these ranges in a function.

Could someone please illustrate how to do this by e.g. replicating the Sum
function in excel?

The following code is only summing one range, how should it be changed to
take in unlimited ranges?


Public Function MySum(MyRange As Range) As Double
Dim i As Integer
Dim Temp As Double
Dim rows As Integer
Dim columns As Integer

rows = MyRange.rows.Count
columns = MyRange.columns.Count

For i = 1 To columns
Temp = Temp + MyRange(1, i)
Next

For i = 1 To rows
Temp = Temp + MyRange(i, 1)
Next

MySum = Temp

End Function

Thanx


--
Melwin
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default How to make a public function procedure with undefined number of r

Hi Melwin,

"Melwin" schrieb:
The question now is how to make a function with an unlimited amount of
ranges and to be able to uses these ranges in a function.

Could someone please illustrate how to do this by e.g. replicating the Sum
function in excel?


for one range you can use the simple Application.Sum method like this:

Public Function MySum2(rng As Range) As Double
MySum2 = Application.Sum(rng)
End Function

For unlimited ranges declare the argument as ParamArray:

Public Function MySum3(ParamArray varRanges()) As Double
Dim varArea As Variant

For Each varArea In varRanges
MySum3 = MySum3 + Application.Sum(varArea)
Next varArea
End Function


--
Mit freundlichen GrĂ¼ssen
Melanie Breden

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 6
Default How to make a public function procedure with undefined number

Thanks, this was what I needed :)
--
Melwin


"Melanie Breden" wrote:

Hi Melwin,

"Melwin" schrieb:
The question now is how to make a function with an unlimited amount of
ranges and to be able to uses these ranges in a function.

Could someone please illustrate how to do this by e.g. replicating the Sum
function in excel?


for one range you can use the simple Application.Sum method like this:

Public Function MySum2(rng As Range) As Double
MySum2 = Application.Sum(rng)
End Function

For unlimited ranges declare the argument as ParamArray:

Public Function MySum3(ParamArray varRanges()) As Double
Dim varArea As Variant

For Each varArea In varRanges
MySum3 = MySum3 + Application.Sum(varArea)
Next varArea
End Function


--
Mit freundlichen GrĂ¼ssen
Melanie Breden

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Undefined function q Excel Programming 4 February 25th 06 03:47 AM
Make Function Public Andibevan[_2_] Excel Programming 3 June 30th 05 04:46 PM
# added to number in function procedure Erin[_5_] Excel Programming 2 April 27th 04 11:58 PM
Public/Procedure Variable Otto Moehrbach[_6_] Excel Programming 2 February 6th 04 04:58 PM
Declaring Public Procedure mac Excel Programming 3 December 3rd 03 05:01 PM


All times are GMT +1. The time now is 01:26 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"