You could use code similar to the following:
Function Concat(RR As Range) As String
Dim S As String
Dim R As Range
For Each R In RR.Cells
S = S & R.Text
Next R
Concat = S
End Function
Then, call this from a worksheet with
=Concat(A1:A100)
Cordially,
Chip Pearson
Microsoft MVP
Excel Product Group
Pearson Software Consulting, LLC
www.cpearson.com
(email on web site)
On Wed, 26 Nov 2008 07:16:05 -0800, Andy B
<(E-Mail Removed)> wrote:
>as usual, I wasn't too clear. I want to call the function from an excel cell
>in a worksheet. In the same manner that you can use SUM(A1:A100), I want to
>do myfunction(A1:A100). I am trying to build a more general concatenate
>function - concatenate(A1:A100) -
>
>"JLGWhiz" wrote:
>
>> Just an added comment. If you use A1 format for a range, it has to be a
>> string. Using the Cells format the row and column index numbers are numeric
>> as are the numbers in the R1C1 format. If you were referring to the $A$1
>> format, The $ symbol in this case indicates absolute reference, as opposed
>> to relative reference, and not to be confused with when it used as a type
>> designation character.
>>
>> "Andy B" wrote:
>>
>> > I want to define a function that takes a range in and operates on that range.
>> > I want to use the normal Excel method of defining the range as (A2:A4), not
>> > as a string. (If I use the string format, excel doesn't recalculate the
>> > function when the data in the range changes)
>> >
>> > when I define
>> > function myfunction (inrange as Range) , the function call seems to fail.