Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kursiven Text aus Zelle extrahieren

Kursiven Text aus Zelle extrahieren
02.10.2019 20:40:49
Peter
Hallo zusammen,
ich habe hier schon viele nüztliche Tips gefunden, selber aber noch nichts eingestellt. Sollte ich daher gewisse Konventionen nicht einhalten, bin ich dankbar für entsprechende Hinweise. Nun zu meinem Problem.
ich habe eine Tabelle mit Zellen, die normalen (am Anfang) und kursiven (am Ende) Text enthalten. Der kursive Text soll ohne den normalen Text in eine zweite Zelle übertragen werden.
z.B.
A1= normaler Text, kursiver Text, der in einer weiteren Zelle z.B. A2 übertragen werden soll
A2= kursiver Text, der in einer weiteren Zelle z.B. A2 übertragen werden soll
ich dachte, kann es damit lösen (bei Zahlen funktioniert es einwandfrei):

Function isItalic(zelle As Range) As Boolean
isItalic = zelle.Font.Italic
End Function

Sub test()
Dim zelle As Range
Dim neu As String
Dim i As Integer
For Each zelle In Selection
For i = 1 To Len(zelle)
Select Case Mid(zelle, i, 1)
Case isItalic = True
neu = neu & Mid(zelle, i, 1)
End Select
Next i
zelle.Offset(0, 1).Value = neu
neu = ""
Next zelle
End Sub

Kann mir bitte vielleicht jemand sagen, wie ich das lösen kann?
Vielen Dank für eure Unterstützung!
Gruß Peter

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kursiven Text aus Zelle extrahieren
02.10.2019 20:57:57
Daniel
Hi
Mal so auf die schnelle:
Deine Funktion isItalic prüft das Format der Zelle.
Wenn du das Format von einzelnen Zeichen innerhalb der Zelle prüfen willst, musst du anders vorgehen.
Wenn du wissen willst wie, dann formatiere mal von Hand in einer Zelle einzelne Zeichen in Italic.
Zeichne es mit dem Macrorecorder auf.
Aus dem aufgezeichneten Code solltest du dir ableiten können, wie du die Prüfung programmieren musst.
Gruß Daniel
AW: Kursiven Text aus Zelle extrahieren
02.10.2019 21:46:34
Peter
Hallo Daniel,
danke für den Tipp, das leuchtet ein.
ich habs jetzt mit dem Recorder aufgezeichnet und so versucht (s.u.), es kommt keine Fehlermeldung mehr, aber es passiert auch nichts.
Wie ich die die einzelnen Zeichen statt der Zelle korrekt anspreche, ist mir nicht ganz klar.
Sub test2()
Dim zelle As Range
Dim neu As String
Dim i As Integer
For Each zelle In Selection
For i = 1 To Len(zelle)
Select Case Mid(zelle, i, 1)
Case ActiveCell.Characters(Start:=i, Length:=1).Font.Italic
neu = neu & Mid(zelle, i, 1)
End Select
Next i
zelle.Offset(0, 1).Value = neu
neu = ""
Next zelle
End Sub
sorry, vielleicht hat jemand einen konkreten Tipp für mich.
Vielen Dank schon mal!
gruß Peter
Anzeige
AW: Kursiven Text aus Zelle extrahieren
02.10.2019 22:11:04
Daniel
Hi
Du scheinst das Prinzip von Select Case noch nicht ganz verstanden zu haben.
Da die Eigenschaft Italic ein einfaches True/False ist, schreibe die Bedingungsprüfung lieber mit IF THEN.
Außerdem, mit MID() extrahiert du nur die Buchstaben, ohne jegliche Formatinformation.
Gruß Daniel
AW: Kursiven Text aus Zelle extrahieren
03.10.2019 08:00:40
Peter
Hallo Daniel,
scheint so zu sein ;) (Mein Wissen stammt aus Beispielen aus meinem VBA Buch, daher täuscht der Code vllt über meinen Wissensstand, aus dem Recorder und was so durch try und error schon funktioniert hat.)
Ich bleib dran, weiß jedoch noch nicht, wann ich dazu komme.
Danke dir!
Gruß Peter
Anzeige
AW: Kursiven Text aus Zelle extrahieren
03.10.2019 07:43:50
Peter
Hallo Daniel,
danke für den Tipp, das leuchtet ein.
ich habs jetzt mit dem Recorder aufgezeichnet und so versucht (s.u.), es kommt keine Fehlermeldung mehr, aber es passiert auch nichts.
Wie ich die die einzelnen Zeichen statt der Zelle korrekt anspreche, ist mir nicht ganz klar.
Sub test2()
Dim zelle As Range
Dim neu As String
Dim i As Integer
For Each zelle In Selection
For i = 1 To Len(zelle)
Select Case Mid(zelle, i, 1)
Case ActiveCell.Characters(Start:=i, Length:=1).Font.Italic
neu = neu & Mid(zelle, i, 1)
End Select
Next i
zelle.Offset(0, 1).Value = neu
neu = ""
Next zelle
End Sub
sorry, vielleicht hat jemand einen konkreten Tipp für mich.
Vielen Dank schon mal!
gruß Peter
Anzeige
AW: Kursiven Text aus Zelle extrahieren
03.10.2019 08:04:15
EtoPHG
Hallo Peter,
versuchs mal ohne das überflüssige Select Case, nämlich so:
Sub test2()
Dim zelle As Range
Dim neu As String
Dim i As Integer
For Each zelle In Selection
For i = 1 To Len(zelle)
If zelle.Characters(Start:=i, Length:=1).Font.Italic Then neu = neu & Mid(zelle, i, 1)
Next i
zelle.Offset(0, 1).Value = neu
neu = ""
Next zelle
End Sub
Gruess Hansueli
AW: Kursiven Text aus Zelle extrahieren
04.10.2019 21:28:49
Peter
Hallo Hansueli
klappt einwandfrei :)
Vielen Dank!
Gruß Peter
UDF für mehrere TextAuszeichnungsarten
03.10.2019 18:46:34
Luc:-?
Hallo, Peter;
vor 3 Jahren hatte ich auf eine UDF verwiesen, die ich vor 5 Jahren einem Projekt beigegeben hatte. Die UDF ist noch ausbaufähig, was sie auch in meiner aktuellen Version 1.3 (leider) immer noch ist:
https://www.herber.de/forum/archiv/1524to1528/1526779_EvaluateFunction.html#1526981
Bitte Hinweise beachten und auch die benötigte Enumeration zu übernehmen nicht vergessen!
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 …

Anzeige
AW: UDF für mehrere TextAuszeichnungsarten
06.10.2019 17:06:45
Peter
Danke Luc, derzeit reicht es als Makro;
vielleicht versuche ich deinen Vorschlag, der doch ganz schön komplex aussieht.
gruß peter
Ist ja auch für mehrere Arten, u.a. TextFarben ...
06.10.2019 17:20:30
Luc:-?
…gedacht, Peter.
Luc :-?

314 Forumthreads zu ähnlichen Themen


Hallo liebes Forum,
gibt es eine Möglichkeit aus einer Zelle nur die Zahlen auszulesen, siehe Beispiel:
'123456 BLA --> 123456
Ist eine Excel-interne (keine VBA-Programmierung) hier möglich?
Vielen Dank für die Unterstützung!
Timo

Hallo,
kann ich den Inhalt einer Zelle im Windows Infobereich anzeigen lassen?
Ich habe eine VBA-Anwendung, die mir den Verarbeitungsstatus in einer Zelle anzeigt.
Weil die Verarbeitung sehr lange dauert möchte ich zwischendurch mit anderen Anwendungen arbeiten und unten rechts nebe...

Hallo,
ich möchte ein Problem mit Excel Formeln und ohne VBA lösen.
Es gibt drei Spalten: Datum1, Zweck, Datum 2
Wenn in Zweck in einer Spalte das Wort "Show" eingetragen wird, soll in Datum 2 in der entsprechenden Zeile stehen "Bitte nennen Sie ein Verwendungsdatum". Das kriege ich...

Hallo,
Ich habe folgendes Problem:
Ich möchte in den Tabellenblatt "Form3" die zeilen 39-50 ausblenden wenn die Zelle A37 ungleich "Pentax" und "Ciclox" ist. Der Wert der Zelle A37 kommt aus der Eingabe im Tabellenblatt "Eingabemaske" (B7).
Wie müßte der entsprechende VBA-Code ausse...

Hallo, vielleicht kann mir jemand helfen...
Ich habe eine Tabelle A, gefüllt mit Werten bzw Formeln, die Tabelle A verwende ich als Liste für Datengültigkeit. leider bekomme ich die Leerzellen nicht weg...habe gegoogelt und eine Formel gefunden.
http://www.excelformeln.de/formeln.html...

Hallo Excelexperten,
habe eine frage und würde mich sehr über Hilfe freuen.
habe folgende Formel.
='R:\2006\Prüfungen\D 06 001\[MHU_001.xls]Deckblatt'!$A$1
diese Formel bezieht sich immer auf die aktuelle Zeile.
Wenn ich sie herunterziehe sollte es mir immer in die Formel de...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige