Microsoft Excel

Herbers Excel/VBA-Archiv

Test nicht länger als 20 Zeichen und zusätzlich...


Betrifft: Test nicht länger als 20 Zeichen und zusätzlich... von: an User
Geschrieben am: 11.09.2019 10:40:50

Hallo,

ich benötige wieder dringend Hilfe unb bei soviel Unterstützung euererseits bin ich schon mal guter Hoffnung.

Mein Problem lautet wie folgt:
Ich habe einen Zelle mit Textinhalt: z.B. Der Baum trägt in diesem Sommer viele Früchte.
Nun benötige ich eine Formel, welch den Text mei max 20 Zeichen abschneidet (unter berücksichtigung, dass kein Wort getrennt wird = nur ganze Wörter)und den restlichen Text in die nebenstehende Zelle schreibt.

12345678901234567890
Der Baum trägt in
diesem Sommer
viele Früchte

Das heist es wären 3 Zellen mit den Texten.

Danke schon jetzt für eure Unterstützung!!!

  

Betrifft: AW: Test nicht länger als 20 Zeichen und zusätzlich... von: 1712424.html
Geschrieben am: 11.09.2019 10:50:28

Hola,

http://www.excelformeln.de/formeln.html?welcher=383

Gruß,
steve1da

  

Betrifft: AW: eine alternativ andere Formelösung ... von: 1712436.html
Geschrieben am: 11.09.2019 11:47:30

Hallo,

... die den ursprünglichen Text als Original beibehält (kannst Du ja auch einfach ausblenden) und ohne Hilfsspalte/-zeile und auch ohne {} auskommt, wäre nachfolgende.
Formel B2 nach unten und C2 zusätzlich auch weit genug nach rechts kopieren.

Arbeitsblatt mit dem Namen 'Tabelle4'
 ABCDEFG
1TexteTeil1Teil2Teil3Teil4Teil5 
2Der Baum trägt in diesem Sommer viele Früchte die zu verschiedenen Zeiten reif werdenDer Baum trägt indiesem Sommer vieleFrüchte die zuverschiedenenZeiten reif werden 
3Der Baum trägt in diesem Sommer viele FrüchteDer Baum trägt indiesem Sommer vieleFrüchte   
4schöne reife Früchteschöne reife Früchte     
5ErnteErnte     
6       

ZelleFormel
B2=LINKS(A2;MIN(MAX(INDEX((TEIL(A2;ZEILE(A$2:A$21);1)=" ")*ZEILE(A$1:A$20);));20))
C2=WENN(B2="";"";LINKS(GLÄTTEN(TEIL($A2;FINDEN(B2;$A2)+LÄNGE(B2);LÄNGE($A2)));
MIN
(MAX(INDEX((TEIL(TEIL($A2&" ";FINDEN(B2;$A2)+LÄNGE(B2);LÄNGE($A2));ZEILE(A$2:A$21);1)=" ")*ZEILE(A$1:A$20);));20)))
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg


Gruß Werner
.. , - ...
  

Betrifft: AW: eine alternativ andere Formelösung ... von: 1712666.html
Geschrieben am: 12.09.2019 12:48:53

Hallo Werner,

danke für dein Beispiel,
ich habe das gestern mit x Hilfszellen gebastelt.
Allerdings ist dein Beispiel wesentlich genialer!!!!

Dein Beispiel nachgebaut:
Wenn ich in Zelle A5 "Ernte" stehen habe und ich die Formel nach unten ziehe, steht bei mir bedauerlicherweise nichts (das Wort ist unter 20 Zeichen). Wenn ich dann mehr Text einfüge steht auch wieder Text in der Zelle.
An was kann das liegen und wie kann ich das umgehen?
Ich lade die Datei hoch! Vielleicht ist der Fehler schnell ersichtlich!
https://www.herber.de/bbs/user/132005.xlsx
Vielen Dank!!!!

  

Betrifft: AW: ein erklärbarer Fehler ... von: 1712735.html
Geschrieben am: 12.09.2019 16:14:55

Hallo,

... der mir leider ab und zu mal unterläuft.

Ich hatte beim Testen in B5 das gleiche festgestellt wie Du und daraufhin mein Formel natürlich korrigiert, aber vergessen die Formel aus A5 zurück nach oben bis B2 zu kopieren. Somit hatte ich nur die vorhergehende inkorrekte Formelversion eingestellt. Sorry.

Richtig lautet die Formel in B2 so:

=LINKS(A2;MIN(MAX(INDEX((TEIL(A2&" ";ZEILE(A$2:A$21);1)=" ")*ZEILE(A$1:A$20);));20))

die dann wieder nach unten kopiert werden kann.

Gruß Werner
.. , - ...

  

Betrifft: Habe bemerkt, dass Deine Fml in Cff EndLeerZch ... von: 1712768.html
Geschrieben am: 12.09.2019 19:38:19

…anders behandelt als die in B, Werner,
und auch als meine Varianten. Es ist natürlich wahrscheinlich, dass das eine auf klassischen XlFktt basierende Fml komplizieren würde, weshalb Deine Variante wohl nicht die optimalste sein wird.
Zum Vgl Deiner Fmln mit 2 EinzelFml-Varianten - letztlich auf Basis der vbFkt Split, für die es in neuesten Xl-Versionen ein Pendant auf Basis von Text-in-Spalten geben soll:

 ABCDEFG
1
TexteTeil1Teil2Teil3Teil4Teil5Textlängen
Der Baum trägt in diesem Sommer viele Früchte die zu verschiedenen Zeiten reif werdenDer Baum trägt indiesem Sommer viele Früchte die zuverschiedenen Zeiten reif werden{17.20.14.14.18}
Der Baum trägt in diesem Sommer viele FrüchteDer Baum trägt indiesem Sommer viele Früchte  {17.20.7.0.0}
schöne reife Früchteschöne reife Früchte    {20.0.0.0.0}
ErnteErnte    {5.0.0.0.0}
      {0.0.0.0.0}
 2 Formeln - in B und C:F (wie zuvor gezeigt)Funktionsaufrufe7 bzw 17
Der Baum trägt in diesem Sommer viele Früchte die zu verschiedenen Zeiten reif werdenDer Baum trägt indiesem Sommer vieleFrüchte die zuverschiedenen Zeitenreif werden{17.19.14.20.11}
Der Baum trägt in diesem Sommer viele FrüchteDer Baum trägt indiesem Sommer vieleFrüchte  {17.19.7.0.0}
schöne reife Früchteschöne reife Früchte    {20.0.0.0.0}
ErnteErnte    {5.0.0.0.0}
      {0.0.0.0.0}
 B8:F8[;B9:F11]: {=VSplit(TxRows(A8;20)&WIEDERHOLEN(ZEICHEN(10);4);ZEICHEN(10))}5 Fktsaufrufe
Der Baum trägt in diesem Sommer viele Früchte die zu verschiedenen Zeiten reif werdenDer Baum trägt indiesem Sommer vieleFrüchte die zuverschiedenen Zeitenreif werden{17.19.14.20.11}
Der Baum trägt in diesem Sommer viele FrüchteDer Baum trägt indiesem Sommer vieleFrüchte  {17.19.7.0.0}
schöne reife Früchteschöne reife Früchte    {20.0.0.0.0}
ErnteErnte    {5.0.0.0.0}
      {0.0.0.0.0}
 B14[:F17]:=Splint(TxRows($A14;20)&WIEDERHOLEN(ZEICHEN(10);4);ZEICHEN(10);SPALTE(A14);SPALTE(A14))7 Fktsaufrufe
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Gruß, Luc :-?

„Der beste Beweis für intelligentes Leben im Universum ist, dass noch niemand versucht hat, Kontakt mit uns aufzunehmen.“ H.Lesch, 2018, Sonneberg
Deshalb Intelligenz steigern mit …

  

Betrifft: Falls d.Text nicht länger als 256 Zeichen ist, ... von: 1712455.html
Geschrieben am: 11.09.2019 13:26:26

…das Ergebnis in separaten Zeilen untereinander angeordnet wdn soll und die Spaltenbreite günstigtenfalls nur maximal 20 Zeichen zulässt, kannst du auch im Menü Ausfüllen die Option Blocksatz benutzen.
Anderenfalls (auch für horizontalen Eintrag in verschiedene Spalten) käme folgende plurale MatrixFml mit UDF-Kombination als wohl einfachste Lösung infrage …
• horizontal: {=VSplit(TxRows(textZellAdresse;20);ZEICHEN(10))}
• vertikal: {=MTRANS(VSplit(TxRows(textZellAdresse;20);ZEICHEN(10)))}
Die UDF TxRows berücksichtigt eine Vielzahl von Standard-TrennMöglichkeiten und auch ggf nachträglich eingefügte WortTrenner. Da das für ZeilenUmbruch in einer Zelle gedacht ist, wird zusätzlich die UDF VSplit benötigt, die diese TextZeilen dann auf separate Spalten oder Zeilen verteilt.
Gruß, Luc :-?

„Der beste Beweis für intelligentes Leben im Universum ist, dass noch niemand versucht hat, Kontakt mit uns aufzunehmen.“ H.Lesch, 2018, Sonneberg
Deshalb Intelligenz steigern mit …

Beiträge aus dem Excel-Forum zum Thema "Test nicht länger als 20 Zeichen und zusätzlich..."