Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
Wofür wird das denn eigentlich gebraucht?
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
03.01.2021, 10:23
(Dieser Beitrag wurde zuletzt bearbeitet: 03.01.2021, 10:23 von RPP63.)
Na, Du stellst vielleicht komische Fragen.
Abseits dessen:
Ich brauche so eine UDF gerne für chemische Formeln (dann natürlich tiefgestellt).
Da ist die Nomenklatur des Unicode auch stringenter:
Zelle | Formel |
L1 | =K1&TEXTKETTE(UNIZEICHEN(SEQUENZ(10;;8320;1))) |
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
Ich hatte nie Chemie (oder nur mal ein Halbjahr). Bin im armen roten Bremen zur Schule gegangen.
Chemie ist doch dann gut, wenn's zwischen zweien passt, oder?
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
03.01.2021, 15:57
(Dieser Beitrag wurde zuletzt bearbeitet: 03.01.2021, 16:09 von RPP63.)
Im ebenso armen Gelsenkirchen wurde ich 3 Jahre gequält …
Nur als Beilage zum Sonntagskaffee mal eine Formellösung zum Tieferstellen aller Ziffern in einem String, aus dem eine chemische Formel werden soll:
(geht nur mit Excel-Abo sowie Online Excel)
| A | B |
1 | H2SO4 | H₂SO₄ |
2 | H2O | H₂O |
3 | CO2 | CO₂ |
4 | Na2S2O3 | Na₂S₂O₃ |
Zelle | Formel |
B1 | =TEXTKETTE(LET(t;TEIL(A1;SEQUENZ(LÄNGE(A1));1);WENN(ISTZAHL(--t);WECHSELN(t;t;UNIZEICHEN(8320+t));t))) |
Woran man den Vorteil der neuen Funktion LET() sieht.
Immerhin brauche ich die Matrix t hier gleich fünfmal.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 29.09.2015
Version(en): 2030,5
In VBA:
Code:
Sub M_snb()
sn = Range("B1:B4")
For j = 1 To UBound(sn)
For jj = 1 To Len(sn(j, 1))
y = Val(Mid(sn(j, 1), jj, 1))
If y Then Cells(j, 2).Characters(jj, Len(y)).Font.Subscript = True
Next
Next
End Sub
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Ich würde es ja alternativ als UDF machen (wenn ich denn kein aktuelles Excel hätte):
Function ZifferTief$(Ursprung$)
Dim i&
For i = 1 To Len(Ursprung)
If IsNumeric(Mid(Ursprung, i, 1)) Then _
Ursprung = Replace(Ursprung, Mid(Ursprung, i, 1), ChrW(8320 + Mid(Ursprung, i, 1)))
Next
ZifferTief = Ursprung
End Function
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
04.01.2021, 10:02
(Dieser Beitrag wurde zuletzt bearbeitet: 04.01.2021, 10:06 von LCohen.)
(03.01.2021, 15:57)RPP63 schrieb: Woran man den Vorteil der neuen Funktion LET() sieht.
Immerhin brauche ich die Matrix t hier gleich fünfmal.
Mit LAMBDA() könnte man das noch kapseln in =ZifferTief(String).
Nochmal zu TEXTKETTE: Diese Funktion ist eigentlich überflüssig. Zuerst kam GDocs mit TEXTJOIN, woraufhin Microsoft eilig TEXTVERKETTEN mit der gleichen Funktionalität brachte. Um wieder den Standard zu bestimmen, gab es dann aber auch TEXTKETTE hinterher (oder gleichzeitig).
Auch LO brachte zu TEXTJOIN dann VERBINDEN. TEXTKETTE wird weder von GDocs noch von LO unterstützt.
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
04.01.2021, 10:23
(Dieser Beitrag wurde zuletzt bearbeitet: 04.01.2021, 10:24 von RPP63.)
(04.01.2021, 10:02)LCohen schrieb: Nochmal zu TEXTKETTE: Diese Funktion ist eigentlich überflüssig.
Richtig!
Genauso wie ZÄHLENWENN()
oder ARBEITSTAG()
oder NETTOARBEITSTAGE()
Schließlich gibt es bessere neuere Funktionen.
ZÄHLENWENNS() und die .INTL-Varianten
Insofern sind wir einer Meinung.
Zitat:TEXTKETTE wird weder von GDocs noch von LO unterstützt.
Zumindest mein LO 6.4.3.2 kennt TEXTKETTE()
OO und GDocs jedoch nicht.
LAMBDA() steht ganz oben auf meiner Liste!
Muss und will ich mich unbedingt einarbeiten.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
(04.01.2021, 10:23)RPP63 schrieb: 1) Genauso wie ZÄHLENWENN()
oder ARBEITSTAG()
oder NETTOARBEITSTAGE()
Schließlich gibt es bessere neuere Funktionen.
ZÄHLENWENNS() und die .INTL-Varianten
2) Zumindest mein LO 6.4.3.2 kennt TEXTKETTE()
OO und GDocs jedoch nicht.
1) die wurden nach 10 Jahren oder später aufgebohrt; die alten müssen kompatibilitätsbedingt bleiben. TEXTKETTE und TEXTVERKETTEN kamen aber gleichzeitig, und ich verstehe nicht, warum.
2) ah, ok. Aber TEXTVERKETTEN heißt dort VERBINDEN. LO will Excel ersetzen und muss daher kompatibel bleiben. GDocs hingegen hat einen längeren Atem und trendsettet einfach.