Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2024 14:59:21
23.04.2024 14:47:39
23.04.2024 14:23:45
Anzeige
Archiv - Navigation
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
784to788
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fetter Teiltext einer Zelle in Klammern setzen

Fetter Teiltext einer Zelle in Klammern setzen
21.07.2006 08:36:50
Gregor
Hallo Excel-Profis
Mit dem nachfolgenden Code erreiche ich, dass ein in Klammern gesetzter Teiltext einer Zelle fett formatiert wird.
Nun zu meiner Frage: Ist es möglich, dass ganze umgekehrt zu machen: d.h., ein fett formatierter Teiltext einer Zelle in Klammern zu setzen? Wie würde ein entsprechender Code lauten?
Vielen Dank für deine kompetente Hilfe!
Grüsse Gregor

Sub Fett_Schrift()
Application.ScreenUpdating = False
Dim intStart As Integer, intEnde As Integer
Dim rng As Range
For Each rng In Range("e1:E" & Anzahl)
If Len(rng) > 0 Then
intStart = InStr(1, rng, "[")
intEnde = InStr(1, rng, "]")
If intStart > 0 And intEnde > 0 Then
Do
rng.Characters(intStart + 1, intEnde - intStart - 1).Font.Bold = True
intStart = InStr(intEnde + 1, rng, "[")
intEnde = InStr(intEnde + 1, rng, "]")
Loop While intStart > 0 And intEnde > 0
End If
End If
Next
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fetter Teiltext einer Zelle in Klammern setzen
21.07.2006 09:56:58
Matthias
Hallo Gregor,
ein Ansatz (Test für A1 des aktiven Tabelle):

Sub test()
Dim z As Range, i  As Long, war_fett As Boolean, ist_fett As Boolean
Dim ns As String
Set z = Range("A1")
war_fett = False
ns = ""
For i = 1 To Len(z)
ist_fett = z.Characters(i, 1).Font.Bold
If ist_fett Then
If Not war_fett Then ns = ns & "("
ns = ns & Mid(z, i, 1)
Else
If war_fett Then ns = ns & ")"
ns = ns & Mid(z, i, 1)
End If
war_fett = ist_fett
Next i
MsgBox ns
End Sub

Gruß Matthias
AW: Fetter Teiltext einer Zelle in Klammern setzen
21.07.2006 10:11:35
Matthias
Hallo Gregor,
oder besser so:

Sub test()
Dim z As Range, war_fett As Boolean, ist_fett As Boolean
Dim i As Integer
Dim l As Integer
Set z = Range("A1")
war_fett = False
l = Len(z)
i = 1
Do
ist_fett = z.Characters(i, 1).Font.Bold
If ist_fett Then
If Not war_fett Then _
ActiveCell.Characters(i, 0).Insert ("("): i = i + 1: l = l + 1
Else
If war_fett Then _
ActiveCell.Characters(i, 0).Insert (")"): i = i + 1: l = l + 1
End If
war_fett = ist_fett
i = i + 1
Loop Until i > l
End Sub

Gruß Matthias
Anzeige
AW: Fetter Teiltext einer Zelle in Klammern setzen
21.07.2006 10:25:08
Gregor
Hallo Matthias / Excel-Profis
Vielen Dank für deinen super Ansatz.
Folgende Punkte müsste man noch optimieren:
- Wenn die Fettschrift am Ende der Zelle steht, schreibt dein Code keine Schlussklammer
Beispiel: "Das war das Spiel" (Spiel fett) ergibt bei deinem Code:
"Das war das (Spiel" anstatt: "Das war das (Spiel)"
- wie bringe ich deinen Code dazu, eine ganze Spalte (z.B. A:A) zu durchlaufen?
Vielen Dank im voraus!
Grüsse Gregor
AW: Fetter Teiltext einer Zelle in Klammern setzen
21.07.2006 10:28:51
Erich
Hallo Gregor,
mit Matthias' Ansatz ginge das wohl so:
Option Explicit
Sub Fett_Klammern()
Dim rng As Range, Anzahl As Long
Dim ii As Long, warFett As Boolean, istFett As Boolean, strT As String
Anzahl = 4
For Each rng In Range("e1:E" & Anzahl)
warFett = False
strT = ""
For ii = 1 To Len(rng)
istFett = rng.Characters(ii, 1).Font.Bold
If istFett <> warFett Then
strT = strT & IIf(istFett, "[", "]")
warFett = istFett
End If
strT = strT & Mid(rng, ii, 1)
Next ii
If istFett Then strT = strT & "]"
rng = strT
rng.Font.Bold = False
Next rng
End Sub
(Wenn der Text zwischen den Klammern Fett sein soll, geht das ja mit deinem ersten Makro.)
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
Merci
21.07.2006 10:56:36
Gregor
Hallo Matthias, Erich und Sylvio
That's it! Vielen Dank für eure Bemühungen.
Ich verneige mich vor euch!
Gregor

325 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige