Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1540to1544
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
Inhaltsverzeichnis

zusammenführen und formatieren

zusammenführen und formatieren
18.02.2017 15:23:06
Sandy
Hallo liebe Ex(cel)perten,
ich versuche gerade Text aus 2 Zellen zusammenzuführen. Dabei soll der Text aus Zelle 1 über dem aus Zelle 2 stehen.
gelöst habe ich das so:
=A1&ZEICHEN(10)&A2
Zeichen(10) bewirkt den Zeilenumbruch in der neuen Zelle (solange Textumbruch aktiviert ist)
Das funktioniert wie es soll.
Nun möchte ich aber, dass der Text in zeile 1 der zelle fett dargestellt wird und die farbe in Zeile 1 (grün, akzent 6, helligkeit 40%) und in zeile 2 (grün, akzent 6, heller 80%) ist.
Fett bekomme ich die Zeile 1 der Zelle, aber das erfolgt manuell. Gibt es hier einen Automatismus in der Formel, damit ich das für alle Zellen einfach runter ziehen kann. Am besten gleich mit der Farbformatierung.
Ich möchte also verschiedene Zeilen unterschiedlich formatieren in nur einer Zelle.
Danke an alle Ex(cel)perten
Liebe Grüße Sandy

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zusammenführen und formatieren
18.02.2017 15:34:49
Hajo_Zi
Hallo Sandy,
das geht in Formeln nicht.

Da hat Hajo recht, aber du willst diese Aktion ...
18.02.2017 16:12:45
Luc:-?
…doch sicher nur einmalig ausführen, Sandy,
dann kannst du die Fmln ja auch mit ihrem Ergebnis überschreiben und danach entsprechend formatieren. Ansonsten musst du ein VBA-Pgm schreiben (lassen), dass alles ganz ohne Fmln „in einem Rutsch“ erledigt.
Dafür gibt's wahrscheinlich auch Bspp im Archiv, ggf auch von mir…
Gruß, Luc :-?
Besser informiert mit …
Anzeige
AW: Da hat Hajo recht, aber du willst diese Aktion ...
18.02.2017 16:45:57
Sandy
Wenn es ein Schritt für Schritt Prozess ist, ost das auch Ok, ich möchte das nur nicht für alle 400 Einträge das einzeln machen müssen.
Mal als PrinzipLösung, ...
18.02.2017 20:19:34
Luc:-?
…Sandy,
unter der Voraussetzung, dass du zuvor die Fmln zur TexteKombination verwendet hast, also nur Nachbehandlung inkl Fml mit Ergebnis überschreiben:
Sub TextFormat()
Const txFarb1 As Long = …, txFarb2 As Long = … '←f.… Farbwert angeb!
    Const adRelBer$ = "A1:A400"    '←hier Bereich angeben!
Dim xZ As Range
For Each xZ In Range(adRelBer)
xZ = xZ.Value
xZ.Characters(1, Instr(xZ, vbLf)).Font.Color = txFarb1
xZ.Characters(Instr(xZ, vbLf) + 1).Font.Color = txFarb2
Next xZ
End Sub
Du kannst natürlich auch die RGB-Werte aus dem FarbMenü (weitere Farben → 2.Reiter) abschreiben und dem Text statt der Konstanten per vbFkt RGB direkt zuweisen, also so:
… = RGB(rwert, gwert, bwert)
…oder diese als Konstanten festlegen: txFarbR1 = rwert1, txFarbG1 = gwert1, txFarbB1 = bwert1, txFarbR2 = rwert2, …
Luc :-?
Anzeige
AW: Mal als PrinzipLösung, ...
19.02.2017 12:48:44
Sandy
Aaah OK, ...
die Werte finde ich raus, sollte kein Problem sein.
Nur wo gebe ich das ein?
Und wie mach ich den Text in Zeile 1 der Zelle fett?
Ich glaube das soweit verstanden zu haben. Daher meine ich, dass hiermit der Text nicht Fett wird.
Aber schon mal vielen lieben Dank für das erstellen der Formel. WOW.
LG Sandy
Das ist keine Formel, sondern ein PgmCode, ...
19.02.2017 13:42:51
Luc:-?
…Sandy;
und den fetten Text hatte ich vergessen. Aber dafür musst du nur die Zeile …
xZ.Characters(1, Instr(xZ, vbLf)).Font.Color = txFarb1
…durch folgende 3 Zeilen ersetzen:
With xZ.Characters(1, Instr(xZ, vbLf)).Font
.Color = txFarb1: .Bold = True
End With
Das Programm (Abk: Pgm bzw Prog oder Prg) wird in das große Fenster des VBEditors kopiert, nachdem man dort in das VBAProject der Mappe ein allgemeines Modul eingefügt hat (Einfügen - Modul). Dazu sollte der Xl-Hauptreiter Entwicklertools zu sehen sein → Klick! → Visual Basic oder Code anzeigen → Klick!
SchöSo, Luc :-?
Anzeige
AW: Das ist keine Formel, sondern ein PgmCode, ...
19.02.2017 15:28:09
Florian
Ich bekomme immer wieder die Fehlermeldung
"Fehler beim Kompilieren"
"Konstanter Ausdruck erforderlich"
Hier werden immer die Farbwerte markiert.
Scheinbar ist das nicht so einfach wie ich dachte.
Was muss ich eingeben, wenn die RGB Werte wie folgt sind?
Farbwert1: R:169, G:208, B:142 bzw Hexadezimal-Farbwert: A9D08E
Farbwert2: R:226, G:239, B:218 bzw Hexadezimal-Farbwert: E2EFDA
Allerdings habe ich noch erkannt, dass es sich hier um die Farbe des Textes handelt und nicht um die Hintergrundfarbe der Zelle. Das war wohl ein Missverständnis oder auch schlecht von mir beschrieben.
Geht das was ich möchte?
Anzeige
Na, du bist ja lustig, ...
19.02.2017 18:19:23
Luc:-?
…Florian (bzw Sandy),
schreibst die ganze Zeit nur von Text und meinst dann aber die ZellFarbe…!
Aber mal trotzdem zur TextFarbe (bei ZellFarbe analog, aber dazu später). Mit der vbFkt RGB geht das so:
Farbwert1 = RGB(169, 208, 142)
Dein HexFarbwert müsste erst von RGB- auf BGR-Reihenfolge geändert wdn:
Farbwert1 = CLng("&h" & Right("A9D08E", 2) & Mid("A9D08E", 3, 2) & Left("A9D08E", 2))
Falls er aber gleich in der richtigen Reihenfolge notiert wird, so:
Farbwert1 = CLng("&h" & hexWertBGR) oder auch so: Farbwert1 = &h8ED0A9
Da du aber die ZellFarbe ändern willst, kannst du alles, was sich im PgmCode auf Text­Farbe bezieht ver­gessen! Dir ist aber hoffent­lich klar, dass ein Zell­Hinter­grund nor­maler­weise nicht 2 Farben haben kann! Wenn doch, dann nur über einen Farb­Verlauf! Dafür gibt's in Xl eine manuelle Einstell­Möglichkeit, die du nutzen solltest! Mit VBA ist auch noch mehr drin, aber das ist aufwendig. Ein Bsp dazu findest du hier.
Luc :-?
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige