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

Forumthread: Zellengröße mit VBA automatisch anpassen

Zellengröße mit VBA automatisch anpassen
21.09.2016 18:42:30
Simon
Hallo Zusammen,
ich möchte eine Excel Tabelle erstellen (Spalte A - F, mit Überschriften in Zeile 1).
Die Spaltenbreite habe ich bereits manuell vorgenommen und diese soll sich auch nicht ändern.
Aber bei Texteingabe in die Zellen der Tabelle soll sich die jeweilige Zellen-/ bzw. Zeilenhöhe dynamisch an den Text anpassen. (Zeile 1 mit den Überschriften sollte sich nach Möglichkeit nicht anpassen)
Aktuell stehe ich hier, allerdings ohne Erfolg:
Private Sub Worksheet_Change(ByVal Target As Range)
Target.EntireRow.AutoFit
End Sub

P.S.: Wo der Code einzufügen ist, ist mir bewusst.
Vielen Dank vorab! :)
Viele Grüße Simon
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zellengröße mit VBA automatisch anpassen
21.09.2016 18:46:45
Hajo_Zi
starte den VBA Editor (Alt+F11), Bild sollte zweigeteilt sein ansonsten Strg+R, Doppelklick auf Deine Datei, Doppelklick auf Deine Tabelle, Code ins rechte Fenster kopieren, VBA Editor schließen.
Das Makro wird automatisch gestartet.
Der Code wirkt nur in dieser Tabelle.

Anzeige
AW: Zellengröße mit VBA automatisch anpassen
22.09.2016 10:04:25
Simon
Hallo Hajo,
danke für deine Antwort, aber wie gesagt, wo der Code einzufügen ist, ist mir bewusst.
Es hat leider trotzdem nicht funktioniert.
Seit ich allerdings die Arbeitsmappe geschlossen und nochmal neu geöffnet habe funktioniert es einwandfrei.
Gruß Simon
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zellengröße mit VBA automatisch anpassen


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke Alt + F11, um den VBA-Editor zu starten.
  2. Wähle das richtige Arbeitsblatt: Im Projektfenster (falls nicht sichtbar, drücke Strg + R) doppelklicke auf das Arbeitsblatt, für das Du die Zellengröße anpassen möchtest.
  3. Füge den Code ein: Kopiere den folgenden Code und füge ihn in das rechte Fenster des VBA-Editors ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, Me.Range("A2:F1048576")) Is Nothing Then
           Target.EntireRow.AutoFit
       End If
    End Sub
  4. Schließe den VBA-Editor: Klicke auf das Schließen-Symbol oder drücke Alt + Q.
  5. Teste den Code: Gib in eine der Zellen in den Spalten A bis F Text ein und die Zeilenhöhe sollte sich automatisch anpassen.

Häufige Fehler und Lösungen

  • Der Code funktioniert nicht: Überprüfe, ob Du ihn im richtigen Arbeitsblatt eingefügt hast. Der Code wirkt nur in dem Arbeitsblatt, in dem Du ihn einfügst.
  • Die Zeilenhöhe passt sich nicht an: Stelle sicher, dass Du Text in die Zellen eingibst und dass die Zeilenhöhe nicht manuell fixiert wurde.
  • Makro wird nicht ausgeführt: Stelle sicher, dass die Arbeitsmappe im richtigen Format gespeichert ist (z.B. .xlsm für Makros).

Alternative Methoden

  • Tastenkombination für automatische Anpassung: Du kannst die Spaltenbreite auch manuell anpassen, indem Du die Spalte auswählst und Alt + H, gefolgt von O und dann I drückst. Diese Methode passt die Spaltenbreite automatisch an den Text an.
  • Verwendung von Formeln: Du kannst auch eine Formel in einer neuen Spalte verwenden, um die benötigte Höhe zu berechnen, und diese manuell einstellen.

Praktische Beispiele

Wenn Du eine Tabelle mit den Spalten A bis F hast, und Texte in Zelle A2 und B2 eingibst, dann wird die Zeilenhöhe automatisch an den längsten Text angepasst, während die Überschrift in Zeile 1 unverändert bleibt.

Beispiel für die Nutzung des Codes:

  • Zelle A2: "Dies ist ein langes Beispiel für einen Text."
  • Zelle B2: "Kurzer Text."

Nach der Eingabe wird die Höhe von Zeile 2 automatisch angepasst, um den langen Text vollständig anzuzeigen.


Tipps für Profis

  • Du kannst den Code erweitern, um auch die Spaltenbreite automatisch anzupassen, indem Du Target.EntireColumn.AutoFit hinzufügst.
  • Füge eine Bedingung hinzu, um die Anpassung nur für bestimmte Zellen zu aktivieren, falls notwendig.
  • Verwende Application.ScreenUpdating = False vor dem AutoFit, um flackernde Bildschirmupdates zu vermeiden. Vergiss nicht, es am Ende wieder auf True zu setzen.

FAQ: Häufige Fragen

1. Wie ändere ich die Kopfzeile und die Spaltenbreite?
Du kannst die Spaltenbreite für die Kopfzeile manuell über das Kontextmenü anpassen, indem Du mit der rechten Maustaste auf die Spaltenüberschrift klickst und „Spaltenbreite“ auswählst.

2. Was ist, wenn der Code immer noch nicht funktioniert?
Überprüfe, ob Makros in Deiner Excel-Anwendung aktiviert sind. Manchmal kann es auch an den Excel-Einstellungen liegen, die die Ausführung von VBA-Code einschränken.

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