ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   create function with passing parameters (https://www.excelbanter.com/excel-programming/349562-create-function-passing-parameters.html)

DASmania Cool

create function with passing parameters
 
i want to create my own function with passing parameters. Here's the case :

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function


Bob Phillips[_6_]

create function with passing parameters
 
Is this what you want

Function TextInfix(CurrChar As String, CharInfix As String, _
TextLong As Integer) As String

TextInfix = Application.Rept(CharInfix, TextLong) & CurrChar
End Function


--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"DASmania Cool" <DASmania wrote in message
...
i want to create my own function with passing parameters. Here's the case

:

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function




Niek Otten

create function with passing parameters
 
In Cell C1, enter

=textinfix(A1,B1,5)


--
Kind regards,

Niek Otten

"DASmania Cool" <DASmania wrote in message
...
i want to create my own function with passing parameters. Here's the case :

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function




DASmania Cool[_2_]

create function with passing parameters
 
Thank you Bob Phillips

Yes, your code makes it so simple.

And now there are another problem, I create this function at PERSONAL.XLS
and I'm able to run the function in PERSONAL.XLS but i can't run it at
another workbook.

Do you know why this things happened ?

"Bob Phillips" wrote:

Is this what you want

Function TextInfix(CurrChar As String, CharInfix As String, _
TextLong As Integer) As String

TextInfix = Application.Rept(CharInfix, TextLong) & CurrChar
End Function


--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"DASmania Cool" <DASmania wrote in message
...
i want to create my own function with passing parameters. Here's the case

:

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function





DASmania Cool[_2_]

create function with passing parameters
 
Thank you Niek Otten

I create the function at PERSONAL.XLS & run perfectly on PERSONAL.XLS but i
cannot run it in another workbook, do you know why ?

"Niek Otten" wrote:

In Cell C1, enter

=textinfix(A1,B1,5)


--
Kind regards,

Niek Otten

"DASmania Cool" <DASmania wrote in message
...
i want to create my own function with passing parameters. Here's the case :

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function





Bob Phillips[_6_]

create function with passing parameters
 
You can do it with

=Personal.xls!TextInfix(char1,char2,len)

--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"DASmania Cool" wrote in message
...
Thank you Bob Phillips

Yes, your code makes it so simple.

And now there are another problem, I create this function at PERSONAL.XLS
and I'm able to run the function in PERSONAL.XLS but i can't run it at
another workbook.

Do you know why this things happened ?

"Bob Phillips" wrote:

Is this what you want

Function TextInfix(CurrChar As String, CharInfix As String, _
TextLong As Integer) As String

TextInfix = Application.Rept(CharInfix, TextLong) & CurrChar
End Function


--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"DASmania Cool" <DASmania wrote in

message
...
i want to create my own function with passing parameters. Here's the

case
:

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong

As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function







Dave Peterson

create function with passing parameters
 
Try:

=personal.xls!testinfix(a1,b1,5)

====
Another option is to save your personal.xls file as an addin (personal.xla).
Then you won't need that syntax.

But you won't see any macros in personal.xla in the tools|macro|macros dialog,
either.

DASmania Cool wrote:

Thank you Niek Otten

I create the function at PERSONAL.XLS & run perfectly on PERSONAL.XLS but i
cannot run it in another workbook, do you know why ?

"Niek Otten" wrote:

In Cell C1, enter

=textinfix(A1,B1,5)


--
Kind regards,

Niek Otten

"DASmania Cool" <DASmania wrote in message
...
i want to create my own function with passing parameters. Here's the case :

Cell A1 = 5
Cell B1 = 0

and I want cell C1 = 00005

i have this function but i don't know how to insert in macro :

Function TextInfix(CurrChar As String, CharInfix As String, TextLong As
Integer) As String
Dim CharLong As Integer, TmpInfix$

CharLong = Len(CurrChar)

TmpInfix = String(TextLong - CharLong, CharInfix) & CurrChar

TextInfix = TmpInfix
End Function





--

Dave Peterson


All times are GMT +1. The time now is 06:21 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com