Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Schrift innerhaln einer Zelle ändern (per Makro)

Schrift innerhaln einer Zelle ändern (per Makro)
20.06.2016 18:04:02
Stefanie
Hallo,
ich versuche mit diesem Makro:

Sub Public ()
Dim A As String
Dim B As String
A = "(ActiveSheet.Range("c5")) & " Nr: " & (ActiveSheet.Range("E5")) & Left(ActiveSheet.Range(" _
D5"), 4)"
B = "Zuständig ist.: Hr. Meier 0123-456 7890"
Range("D12") = A &  Chr(10) &  B
Range("d12").Characters(1, Len(A)).Font.Bold = True
Range("d12").Characters(1, Len(B)).Font.Size = 10
End Sub
folgendes zu lösen:
Wert A= Hole diverse Werte und setze sie mir als Variable A
Schreibe in Zelle D12 die Variable A in Fettschrift Größe 14 (Standard der Zelle). Mache ein Alt Enter (Chr(10)). Schreibe nun Variable B in textgröße 10 und NICHT Fett.
Leider gelingt das so nicht.
Jemand einen Anstoss für mich?
Gern auch gegen Bezahlung

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Schrift innerhaln einer Zelle ändern ...
20.06.2016 19:18:54
Matthias
Hallo
Versuchs mal so:
Dim A As String
Dim B As String
A = ActiveSheet.Range("c5") & " Nr: " & ActiveSheet.Range("E5") & Left(ActiveSheet.Range("D5 "), 4)
B = "Zuständig ist.: Hr. Meier 0123-456 7890"
Range("D12") = A & Chr(10) & B
Range("d12").Characters(1, Len(A)).Font.Bold = True
Range("d12").Characters(1, Len(B)).Font.Size = 10
Gruß Matthias

Anzeige
AW: Schrift innerhaln einer Zelle ändern ...
20.06.2016 19:36:23
Stefanie
Ich seh leider keinen Unterschied. Ausser dass die unnötigen "" Anführungszeichen entfernt wurden.

AW: Schrift innerhaln einer Zelle ändern ...
20.06.2016 19:46:15
Stefanie
Habe es jetzt nochmal ausprobiert
Das liegt wohl an der Vorformatierung der Zelle.
Wenn die nicht passt, oder ich das Makro das zweite Mal auslöse, stimmen die Formate nicht. Teilweise wird willkürlich? (ich weiss, das gibts nicht) z.B. ab dem 2ten e von Meier wieder die Formatierung von Variable A genommen.
Ich werde also noch einen Befehl vorschalten, der die Zelle vorformatiert.
Danke Matthias

Anzeige
AW: Schrift innerhaln einer Zelle ändern (per Makro)
21.06.2016 08:21:56
UweD
Hallo
versuch es mal so...
Modul Modul1
Option Explicit 
'D12 ist nicht Fett und in Größe 14 voreingestellt 
Sub Public_() 
    Dim A As String 
    Dim B As String 
    A = ActiveSheet.Range("C5") & " Nr: " & ActiveSheet.Range("E5") & _
        Left(ActiveSheet.Range("D5"), 4) 
    B = "Zuständig ist.: Hr. Meier 0123-456 7890" 
    Range("D12") = A & Chr(10) & B 
    Range("d12").Characters(1, Len(A)).Font.Bold = True 
    Range("d12").Characters(Len(A) + 1, Len(B) + 1).Font.Size = 10 
  End Sub 
 

Userbild
Gruß UweD

Anzeige
Range("D12").Clear
21.06.2016 12:54:21
KlausF
Hallo Uwe und Stefanie,
der Code von Uwe funktioniert, aber immer nur beim ersten Mal.
Danach wird bei mir (Excel 2003) die gesamte Zelle fett gestellt.
Ich habe deshalb ein
Range("D12").Clear
vorangestellt. Damit geht's dann immer.
Gruß
Klaus

AW: Range("D12").Clear
26.06.2016 12:22:19
Stefanie
Herzlichen Dank euch beiden.
Clear ging bei mir nicht. Dann waren die Rahmen mit weg.
Tipp: für verbundene Zellen geht Clear nur mit Range("D12:F12").Clear
Aber anstattdessen mit:
Range("D12:F12").Select
Selection.Font.Bold = False
With Selection.Font
.Name = "Arial"
.Size = 14
.ThemeFont = xlThemeFontNone
End With
Geht es nun so oft ichs brauch und immer.
Nochmal ein dickes Danke an euch alle.
Während ich meine Makros so durchschaue sehe ich erst wieviel Arbeit ich mir in den letzten Jahren erspart habe :)
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Schriftart in einer Zelle mit Excel VBA ändern


Schritt-für-Schritt-Anleitung

Um die Schriftart in einer Zelle mit VBA zu ändern, kannst du folgendes Makro verwenden:

Sub SchriftartAendern()
    Dim A As String
    Dim B As String
    A = ActiveSheet.Range("C5") & " Nr: " & ActiveSheet.Range("E5") & Left(ActiveSheet.Range("D5"), 4)
    B = "Zuständig ist.: Hr. Meier 0123-456 7890"

    Range("D12") = A & Chr(10) & B
    Range("D12").Characters(1, Len(A)).Font.Bold = True
    Range("D12").Characters(Len(A) + 1, Len(B)).Font.Size = 10
End Sub

In diesem Beispiel wird der Text in Zelle D12 formatiert. Die Variable A wird in Fettschrift (Größe 14) dargestellt, gefolgt von der Variable B in normaler Schriftgröße (10).


Häufige Fehler und Lösungen

  1. Formatierungsprobleme: Wenn die Formatierung nicht korrekt angewendet wird, kann es daran liegen, dass die Zelle vorher formatiert war. Stelle sicher, dass die Zelle vor dem Ausführen des Makros zurückgesetzt wird. Du kannst dies mit Range("D12").Clear tun, um alle Formate zu entfernen.

  2. Falsche Schriftgröße: Wenn nach dem ersten Lauf die Schrift plötzlich fett wird, könnte es hilfreich sein, die Schriftart und -größe vor dem Setzen der Werte zurückzusetzen.


Alternative Methoden

Eine alternative Methode zur Verwendung von VBA ist die direkte Bearbeitung der Zelle über die Excel-Oberfläche. Du kannst die Schriftart manuell ändern, indem du die Zelle auswählst und im Menü "Start" die Schriftart sowie die Größe anpasst. Dies ist jedoch nicht so flexibel wie ein VBA-Skript.


Praktische Beispiele

Hier sind einige praktische Beispiele zur Verwendung von VBA zur Änderung der Schriftart in Zellen:

  1. Einfaches Beispiel:
Sub EinfachesBeispiel()
    Range("A1").Value = "Hallo Welt"
    Range("A1").Font.Name = "Arial"
    Range("A1").Font.Size = 12
End Sub
  1. Komplexeres Beispiel mit mehreren Zellen:
Sub KomplexesBeispiel()
    Range("A1:B1").Value = "Beispieltext"
    Range("A1:B1").Font.Bold = True
    Range("A1").Font.Size = 14
    Range("B1").Font.Size = 10
End Sub

Tipps für Profis

  • Verwendung von Variablen: Nutze Variablen, um deine Texte dynamisch zu gestalten. Das macht deinen Code flexibler und leichter wartbar.
  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen in deinem VBA-Code, um unerwartete Probleme elegant zu lösen.
  • Modularer Code: Teile deinen Code in kleinere, wiederverwendbare Subroutinen auf. Das verbessert die Lesbarkeit und Wartbarkeit.

FAQ: Häufige Fragen

1. Wie kann ich die Schriftart in mehreren Zellen gleichzeitig ändern?
Du kannst einen Bereich angeben, wie in Range("A1:B2").Font.Name = "Arial".

2. Funktioniert dieser VBA-Code in allen Excel-Versionen?
Ja, die grundlegenden VBA-Befehle zur Schriftartänderung sollten in den meisten Excel-Versionen, einschließlich Excel 2003, funktionieren. Achte jedoch darauf, dass einige Funktionen je nach Version variieren können.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige