Office: Makro für Hintergrundfarben

Helfe beim Thema Makro für Hintergrundfarben in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hi, Ich konnte Makros für Textfarben erstellen, damit ich vorgefertigte Farb-Icons im Menü habe. z.B. Sub fontRed() Selection.Font.ColorIndex =... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von -aki-, 9. Juni 2021.

  1. -aki- Neuer User

    Makro für Hintergrundfarben


    Hi,

    Ich konnte Makros für Textfarben erstellen, damit ich vorgefertigte Farb-Icons im Menü habe.

    z.B.

    Sub fontRed()
    Selection.Font.ColorIndex = wdRed
    End Sub

    weiss jemand ob das auch mit Hintergrundfarben geht? (und wenn ja, wie)

    danke,

    Aki
     
    -aki-, 9. Juni 2021
    #1
  2. Gerhard H Erfahrener User
    Hallo aki,

    bei den Füllfarben kommt es drauf an, wovon du den Hintergrund färben willst:
    Das Colorformat-Objekt ist zuständig für die Vorder- und Hintergrundfarbe von Autoformen, das Shape-Objekt für Ranges.

    Beispiele:

    'Range: Für die Füllung einer Tabellenzelle oder eines Absatzhintergrundes:
    ActiveDocument.Tables(1).Cell(1, 1).Range.Shading.BackgroundPatternColorIndex = wdRed
    Selection.Range.Shading.ForegroundPatternColorIndex = wdRed

    'Colorformat: für die Füllung einer Autoform:
    ActiveDocument.Shapes(1).Fill.ForeColor = wdColorBlue
    Selection.ShapeRange.Fill.ForeColor = wdColorYellow


    Bei der Variante mit Selection musst du natürlich im Makro vorab noch den Typ des ausgewählten Elements (Range oder Autoform) prüfen, sonst gibts Fehlermeldungen oder es passiert nichts.
     
    Gerhard H, 9. Juni 2021
    #2
  3. -aki- Neuer User
    Hallo Gerhard,

    Ich will Tabellenzeilen markieren, und dann auf das Ikon mit der Farbe klicken - ist das das Range-Makro?
     
    -aki-, 9. Juni 2021
    #3
  4. Gerhard H Erfahrener User

    Makro für Hintergrundfarben

    Ja klar, hast du es nicht probiert? Hier die Version mit Abfrage, ob die Markierung innerhalb einer Tabelle ist:

    Sub ZellenFarbig()
    If Selection.Information(wdWithInTable) Then
    Selection.Range.Shading.ForegroundPatternColorIndex = wdRed
    Else
    MsgBox "Erst mal Tabellenzelle(n) markieren!"
    End If
    End Sub

    Aber ich seh den Vorteil gegenüber dem Farbfüll"eimer" im Menüband nicht. Kostet genau so viele Klicks und du kannst obendrein noch die Farbe wählen
     
    Gerhard H, 10. Juni 2021
    #4
  5. -aki- Neuer User
    das Problem bei der Funktion im Menüband ist dass man die Farbe jedes Mal neu raussuchen bzw. definieren muss; Ich will immer die selben zwei selbstdefinierten Farben. Die bleiben zwar eine Weile in der Box anklickbar, aber wenn man runterfährt, oder in den Ruhezustand geht, sind sie weg;

    Mir fällt gerade auf dass es nur eine sehr beschränkte Anzahl an möglichen Farben bei der Lösung mit Makros gibt; Eine Option mit Hex-Codes gibt es nicht?

    danke
     
    Zuletzt bearbeitet: 10. Juni 2021
    -aki-, 10. Juni 2021
    #5
  6. Gerhard H Erfahrener User
    Hallo aki,

    das war ja nur ein Beispiel. Du kannst statt ...ColorIndex einfach nur ...Color nehmen und dann RGB-Farben angeben.
    Obendrein kannst du eine Musterfüllung wählen und dieser mittels BackGroundPatternColor eine Farbe zuweisen. Beispiel:
    With Selection.Range
    .Shading.ForegroundPatternColor = RGB(12, 123, 12)
    .Shading.BackgroundPatternColor = RGB(220, 123, 12)
    .Shading.Texture = wdTextureDarkDiagonalCross
    End With

    Da kannst du dich austoben
     
    Gerhard H, 10. Juni 2021
    #6
  7. -aki- Neuer User
    also diese beiden funktionieren nicht:

    Sub HGreen()
    '
    ' HGreen Makro
    '
    ActiveDocument.Tables(1).Cell(1, 1).Range.Shading.BackgroundPatternColor = 250,255,240
    Selection.Range.Shading.ForegroundPatternColor = 250,255,240

    End Sub

    Fehler: "Erwartet: Anweisungsende"


    Sub HGreen()
    '
    ' HGreen Makro
    '
    ActiveDocument.Tables(1).Cell(1, 1).Range.Shading.BackgroundPatternColor = #fafff0
    Selection.Range.Shading.ForegroundPatternColor = #fafff0

    End Sub

    Fehler: "Erwartet: Ausdruck"
     
    -aki-, 10. Juni 2021
    #7
  8. Gerhard H Erfahrener User

    Makro für Hintergrundfarben

    Hallo aki,

    3 Sachen:

    1.
    Die Variante mit ActiveDocument.Tables(1) ist für deine Zwecke eher ungeeignet, weil sie sich ja immer nur auf die erste Tabelle im Dokument bezieht

    2.
    An die Syntax musst du dich schon halten:
    Selection.Range.Shading.ForegroundPatternColor = RGB(250,255,240)

    3.
    Wenn du einen Hex-Wert für die Farbe hast, musst du diesem ein &H voranstellen:
    Selection.Range.Shading.ForegroundPatternColor = &HFAFFF0 (das hab ich mir auch erst ergoogeln müssen, weil ich bisher keine Notwendigkeit sah, mit Hexwerten zu arbeiten.

    Eine Übersicht über die Farbkonstanten von Word findest du hier: WdColor-Aufzählung (Word)
     
    Gerhard H, 10. Juni 2021
    #8
  9. -aki- Neuer User
    Ok, great, jetzt ist es genau das was ich wollte,

    danke!
     
    -aki-, 10. Juni 2021
    #9
Thema:

Makro für Hintergrundfarben

Die Seite wird geladen...
  1. Makro für Hintergrundfarben - Similar Threads - Makro Hintergrundfarben

  2. Überprüfen ob Tabellenballt mit Namen aus Zelle vorhanden ist

    in Microsoft Excel Hilfe
    Überprüfen ob Tabellenballt mit Namen aus Zelle vorhanden ist: Da ich VBA noch nicht so lange benutze komme ich doch gerade an meine Grenzen. Ich möchte überprüfen ob es ein Bestimmtes Tabellenblatt gibt im Tabellenblatt "GK" in P1 steht der zu überprüfende...
  3. Makros für csv-Export mit Anführungszeichen für ausgewählte Splaten

    in Microsoft Excel Hilfe
    Makros für csv-Export mit Anführungszeichen für ausgewählte Splaten: Hallo liebe Forengemeinde, ich habe folgendes Problem: Ich muss eine csv-Datei bearbeiten und anschließend wieder als csv-Datei speichern. In der Originaldatei sind einige Spalteninhalte in in...
  4. Export-Makro überschreibt .xlsx-Dateien nur taggleich

    in Microsoft Access Hilfe
    Export-Makro überschreibt .xlsx-Dateien nur taggleich: Hallo zusammen, arbeite bereits seit vielen Jahren mit Access-Datenbanken. Seit einigen Wochen habe ich einen Fehler der mich in den Wahnsinn treibt. Wir verwenden Access-Datenbanken als...
  5. Hilfe wie Löst man ein Makro über einem anderen Makro aus ....

    in Microsoft Excel Hilfe
    Hilfe wie Löst man ein Makro über einem anderen Makro aus ....: welches sich in der anderen Arbeitsmappe Befindet. Hallo ...habe gerade den Vollen Stress - Ich möchte von Arbeitsmappe 1 in den Arbeitsmappen 2 - 3 jeweils das gleiche Makro auslösen. Mein...
  6. Datentabelle per VBA Makro durch Kopieren und Einfügen einer Kopfzeile aufteilen

    in Microsoft Excel Hilfe
    Datentabelle per VBA Makro durch Kopieren und Einfügen einer Kopfzeile aufteilen: Hallo Zusammen, mein erster Beitrag hier, also schon mal Sorry im Voraus, wenn unvollständig beschrieben *:)* Ich habe das Forum schon nach einem brauchbaren Lösungsansatz durchsucht, bin aber...
  7. Makro: Zeichen in Zelle zählen

    in Microsoft Excel Hilfe
    Makro: Zeichen in Zelle zählen: Hallo zusammen. Ich merke gerade wie eingestaubt meine ohnhin noch nie ausgeprägten VBA-Kenntnisse sind. Vielleicht ist einer von euch so nett mir auf die Sprünge zu helfen. Ich versuche mir ein...
  8. WENN-Klausel in Makro mit Abfrage kombinieren

    in Microsoft Access Hilfe
    WENN-Klausel in Makro mit Abfrage kombinieren: Hallo Leute, Ich möchte in meiner Datenbank ein Makro schreiben, dass folgende Funktionen ausführt. Die Abfrage1 mit insgesamt 3 Spalten öffnen. Danach eine Spalte daraus auswerten (Wert <20),...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden