Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenrahmen entfernen

Tabellenrahmen entfernen
18.01.2008 19:15:00
Horst
Hallo,
Ich muss in einer Tabelle ab der letzten Zeile die Rahmen entfernen, weil Excel ansonsten
nicht nur die Werte, sondern alles was eingerahmt ist druckt. (Kann man das vielleicht beeinflussen?)
Da ich (bzw. VBA) nicht weiß bis zu welcher Zelle die Rahmen gehen, setze ich einfach von der letzten
Zeile bis zur Zeile 65535 alles zurück.
Das ganze funktioniert auch, aber der folgende Code braucht ca. 3 Sekunden und was noch schlimmer
ist, er bläht die Tabelle auf ca. 4MB auf (vorher 160kB).
Wer weiß Rat.
Vielen Dank im Voraus
Gruß Horst
Mein Code:
Set Leerbereich = Range(Cells(LetzteZeile, 1), Cells(65535, 20))
With Leerbereich
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlNone
.Borders(xlEdgeTop).LineStyle = xlNone
.Borders(xlEdgeBottom).LineStyle = xlNone
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
End With

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenrahmen entfernen
18.01.2008 19:51:00
Erich
Hallo Horst,
wäre es nicht einfacher (und schneller und platzsparender), die überflüssigen Zeilen komplett zu löschen?
Etwa mit
Range(Rows(LetzteZeile + 1), Rows(Rows.count)).Delete
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Tabellenrahmen entfernen
18.01.2008 20:43:00
Horst
Hallo Erich.
Dein Code funktioniert einwandfrei.
Das ganze geht nun schnell und die Dateigröße ist auch wieder o.K.
Vielen Dank für den Tipp und noch einen schönen Abend.
Gruß Horst
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Tabellenrahmen in Excel entfernen


Schritt-für-Schritt-Anleitung

Um Rahmen in einer Excel-Tabelle zu entfernen, kannst Du die folgenden Schritte ausführen:

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

  2. Neues Modul erstellen: Gehe zu Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Code einfügen: Füge den folgenden Code ein, um alle Rahmenlinien zu entfernen:

    Sub RahmenEntfernen()
        Dim LetzteZeile As Long
        LetzteZeile = Cells(Rows.Count, 1).End(xlUp).Row
    
        ' Bereich ab der letzten Zeile bis zur Zeile 65535 festlegen
        Dim Leerbereich As Range
        Set Leerbereich = Range(Cells(LetzteZeile, 1), Cells(65535, 20))
    
        ' Alle Rahmenlinien entfernen
        With Leerbereich
            .Borders(xlDiagonalDown).LineStyle = xlNone
            .Borders(xlDiagonalUp).LineStyle = xlNone
            .Borders(xlEdgeLeft).LineStyle = xlNone
            .Borders(xlEdgeTop).LineStyle = xlNone
            .Borders(xlEdgeBottom).LineStyle = xlNone
            .Borders(xlEdgeRight).LineStyle = xlNone
            .Borders(xlInsideVertical).LineStyle = xlNone
            .Borders(xlInsideHorizontal).LineStyle = xlNone
        End With
    End Sub
  4. Makro ausführen: Drücke F5, um das Makro auszuführen und die Rahmen zu entfernen.


Häufige Fehler und Lösungen

  • Fehler: Das Makro funktioniert nicht.

    • Lösung: Stelle sicher, dass Du den richtigen Bereich für LetzteZeile definierst. Überprüfe den Code auf Tippfehler.
  • Fehler: Die Tabelle ist nach dem Entfernen der Rahmen sehr groß.

    • Lösung: Anstatt die Rahmen zu löschen, kannst Du die überflüssigen Zeilen komplett entfernen. Das reduziert die Dateigröße erheblich. Verwende den folgenden Code:
    Range(Rows(LetzteZeile + 1), Rows(Rows.Count)).Delete

Alternative Methoden

Eine alternative Methode zur Entfernung von Rahmenlinien ist die Verwendung der Excel-Oberfläche:

  1. Markiere den gewünschten Bereich in Deiner Tabelle.
  2. Gehe zu Start > Format > Rahmen und wähle Keine Rahmen.

Wenn Du mit Word arbeitest, kannst Du die Rahmenlinien einer Tabelle gleichfalls entfernen:

  • Markiere die Tabelle.
  • Klicke auf Tabellentools, dann auf Entwurf und wähle Rahmen > Rahmen entfernen.

Praktische Beispiele

Beispiel 1: Entfernen von Rahmenlinien in einer bestimmten Tabelle

Wenn Du nur die Rahmen in einer bestimmten Tabelle entfernen möchtest, kannst Du den Bereich wie folgt anpassen:

Set Leerbereich = Range("A1:D10") ' Beispiel für einen spezifischen Bereich

Beispiel 2: Alle Rahmenlinien in einer gesamten Arbeitsmappe entfernen

Um alle Rahmenlinien in einer gesamten Arbeitsmappe zu entfernen, kannst Du diesen Code verwenden:

Sub AlleRahmenEntfernen()
    Cells.Borders.LineStyle = xlNone
End Sub

Tipps für Profis

  • VBA xlnone: Nutze xlNone, um Rahmenlinien schnell und effizient zu entfernen, ohne die Größe der Datei unnötig zu erhöhen.
  • Makros speichern: Speichere Deine Makros in einer persönlichen Makroarbeitsmappe, um sie jederzeit wieder verwenden zu können.
  • Optimierung: Teste Deinen Code in einer Kopie der Datei, um die Auswirkungen auf die Dateigröße zu prüfen, bevor Du ihn in einer Produktionsdatei verwendest.

FAQ: Häufige Fragen

1. Wie kann ich nur die Rahmenlinien von bestimmten Zellen entfernen?
Du kannst den spezifischen Bereich in Deinem VBA-Code angeben, z. B. Range("A1:B10").Borders.LineStyle = xlNone.

2. Was ist der Unterschied zwischen xlNone und anderen Linienstilen?
xlNone entfernt die Rahmenlinien vollständig, während andere Linienstile wie xlSolid oder xlDash verschiedene Arten von Linien darstellen.

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