Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Rahmen außen der markierten Zellen

VBA Rahmen außen der markierten Zellen
17.10.2016 11:36:26
Bernd
Mahlzeit liebe Profis,
ich suche nun schon etwas länger im Netz und auch hier im Forum, finde aber leider keine passende Lösung und hoffe, es kann mir jemand weiter helfen.
Ich würde gerne in einem Tabellenblatt einen Bereich markieren und genau dieser markierte Bereich sollte dann mit einem Rahmen (nur Außenherum) versehen werden.
Ich hoffe ich habe das Problemchen genau erläutert und bitte Euch um Hilfe.
Danke schon mal vorab und lg,
Bernd
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Rahmen außen der markierten Zellen
17.10.2016 11:41:31
Daniel
Hi
1. Markiere den Zellbereich, der den Rahmen erhalten soll.
2. klicke dann mit der rechten Maustaste auf den markieren Bereich und wähle im Kontextmenü "Zellen formatieren" aus.
3. wähle im Formatierungsfenster den Reiter "Rahmen" aus
4. wähle auf der linken Seite "Art" und "Farbe" aus
5. klicke auf der rechten Seite auf "Voreinstellungen - Innen" oder klicke bei "Rahmen" nacheinander die vier Aussenrahmen (oben, links, rechts, unten) an.
6. Schließe dann mit OK ab.
das sollte bei Excel-Gut aber bekannt sein.
Gruß Daniel
Anzeige
AW: VBA Rahmen außen der markierten Zellen
17.10.2016 11:43:26
Bernd
Hi Daniel,
"das sollte bei Excel-Gut aber bekannt sein" ja, dass ist mir auch bekannt.
Jedoch wie im Betreff angeführt, suche ich eine Lösung via Makro, und da scheitere ich, weil es ja immer unterschiedlich viele markierte Zellen sind, daher fällt der Recorder auch aus.
dennoch Danke für Deine Hilfe,
lg Bernd
Anzeige
AW: VBA Rahmen außen der markierten Zellen
17.10.2016 11:53:16
Daniel
Hi
der Recorder zeichnet bei mir mit "Selection" auf, dh wenn du den Zellbereich, den du vorher selektiert hast, umrahmen willst, dann kannst du einfach den aufgezeichneten Code direkt übernehmen.
du darfst halt in deinem Code die Selektion nicht mehr verändern und musst Zeilen, die dies tun, aus deiner Aufzeichnung entfernen (oder du startest den Recorder erst nachdem du die Zellen selektiert hast)
Gruß Daniel
Anzeige
AW: VBA Rahmen außen der markierten Zellen
17.10.2016 11:56:52
Bernd
Hi Daniel,
tausend Dank, der Tip hat geholfen.
Problem gelöst!
Schönen Tag noch,
lg Bernd
AW: VBA Rahmen außen der markierten Zellen
17.10.2016 11:55:21
Daniel
Alternativ schau dir mal in der Hilfe den Befehl BorderAround an.
Damit kannst du die Umlaufende Rahmenlinie ein einem Zug erstellen und nicht jede Seite einzeln.
Gruß Daniel
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

VBA Rahmen außen der markierten Zellen


Schritt-für-Schritt-Anleitung

Um einen Rahmen außen um die markierten Zellen in Excel über VBA zu erstellen, folge diesen Schritten:

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Neues Modul erstellen: Klicke mit der rechten Maustaste auf deinen Projektbaum und wähle Einfügen > Modul.

  3. Code eingeben: Füge den folgenden Code in das Modul ein:

    Sub RahmenUmZellen()
        Dim Bereich As Range
        Set Bereich = Selection
        Bereich.Borders.LineStyle = xlContinuous
        Bereich.Borders.Weight = xlThin
    End Sub
  4. Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Markiere die Zellen, um die du einen Rahmen setzen möchtest, und führe das Makro über Entwicklertools > Makros aus.

  5. Rahmen hinzufügen: Der Rahmen wird nun um die markierten Zellen hinzugefügt.


Häufige Fehler und Lösungen

  • Fehler: "Objektvariable nicht festgelegt"
    Lösung: Stelle sicher, dass du Zellen markiert hast, bevor du das Makro ausführst.

  • Fehler: Kein sichtbarer Rahmen
    Lösung: Überprüfe, ob die LineStyle und Weight Eigenschaften korrekt gesetzt sind. Siehe den obigen Code.


Alternative Methoden

Eine alternative Methode, um einen Rahmen außen um Zellen hinzuzufügen, ist die Verwendung des BorderAround-Befehls, wie von Daniel vorgeschlagen:

Sub RahmenUmZellenAlternativ()
    Dim Bereich As Range
    Set Bereich = Selection
    Bereich.BorderAround LineStyle:=xlContinuous, Weight:=xlThin
End Sub

Dieser Befehl erstellt einen Rahmen rund um die gesamte Auswahl in einem Schritt, was effizienter ist.


Praktische Beispiele

Wenn du beispielsweise einen Rahmen um die Zellen A1 bis D4 hinzufügen möchtest, kannst du den Bereich auch direkt im Code definieren:

Sub RahmenUmBestimmteZellen()
    Dim Bereich As Range
    Set Bereich = ThisWorkbook.Sheets("Tabelle1").Range("A1:D4")
    Bereich.BorderAround LineStyle:=xlContinuous, Weight:=xlThin
End Sub

Dies ist besonders nützlich, wenn du regelmäßig denselben Bereich formatieren möchtest.


Tipps für Profis

  • Makros speichern: Denke daran, deine Excel-Datei als .xlsm zu speichern, um die Makros zu behalten.
  • Fehlerbehandlung einfügen: Füge On Error Resume Next und On Error GoTo 0 ein, um die Fehlerbehandlung zu verbessern.
  • Rahmenstil anpassen: Experimentiere mit verschiedenen LineStyle- und Weight-Einstellungen, um das Aussehen der excel normalen rahmenlinien zu variieren.

FAQ: Häufige Fragen

1. Kann ich den Rahmen auch für mehrere Bereiche gleichzeitig setzen?
Ja, du kannst mehrere Bereiche in einem Array definieren und eine Schleife verwenden, um den Rahmen anzuwenden.

2. Funktioniert dieser Code in allen Excel-Versionen?
Der Code sollte in den meisten modernen Excel-Versionen funktionieren. Achte darauf, dass du die Entwicklertools aktiviert hast.

3. Wie entferne ich den Rahmen wieder?
Du kannst den Rahmen entfernen, indem du die LineStyle-Eigenschaft auf xlNone setzt:

Bereich.Borders.LineStyle = xlNone

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige