also schreibst du in B2:
Code: Alles auswählen
=a2&"2"&b1
Code: Alles auswählen
=a2&"2"&b1
Code: Alles auswählen
Function zellname_udf (itab as integer, izeile as integer, ispalte as integer, sText as string) as string
oDoc=Thiscomponent
if oDoc.NamedRanges.hasByName(sText) then oDoc.NamedRanges.removeByName(sText)
oZelle=oDoc.sheets(itab-1).getcellbyposition(ispalte-1,izeile-1)
odoc.NamedRanges.addNewByName(sText,oZelle.AbsoluteName,oZelle.CellAddress,0)
zellname_udf=sText
End Function
Code: Alles auswählen
=zellname_udf(Tabelle();Zeile();Spalte();"der Wunschname")
Wie soll das funktionieren. Nach deiner Beschreibung enthält die Zelle B2 dann den Text "EUR2USD" und die Zelle hat auch diesen Namen. Wenn du dannDer NAME der Zelle soll so heissen nicht der Inhalt ... also in b2 wird =a2&"2"&b1 erzeugt und dann wird das der NAME von dieser Zelle, also zum Beispiel EUR2USD der kann dann in einer Formel verwendet werden =c3*EUR2USD
Code: Alles auswählen
=c3*EUR2USD
Code: Alles auswählen
=c3*EUR2USD
Code: Alles auswählen
Function zellname_udf (itab as integer, izeile as integer, ispalte as integer, dWert as double, sText as string) as double
'
'Parameter:
'itab ... Tabelle der aufrufenden Zelle
'izeile ... Zeile der aufrufenden Zelle
'iSpalte ... Spalte der aufrufenden Zelle
'dWert ... Wert, den die Zelle haben soll
'sText ... Name, den die Zelle haben soll
'
oDoc=Thiscomponent
if oDoc.NamedRanges.hasByName(sText) then oDoc.NamedRanges.removeByName(sText)
oZelle=oDoc.sheets(itab-1).getcellbyposition(ispalte-1,izeile-1)
odoc.NamedRanges.addNewByName(sText,oZelle.AbsoluteName,oZelle.CellAddress,0)
zellname_udf=dWert
End Function
Code: Alles auswählen
=zellname_udf(Tabelle();Zeile();Spalte();1,15;"EURO2USD")