Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zeilenhöhe automatisch anpassen, Komplex
#1
Guten Morgen,

Ausgangsstellung: 
Feld A1: 3 Werte die mit Alt+Enter untereinander stehen
Feld A2: Hier soll Feld A1 wiedergegeben werden mit den 3 Werten untereinander.

Start/Format/Zeilenhöhe automatisch anpassen funktioniert wenn ich es jetzt ausführe

Problem:

Ich füge jetzt in A1 noch 2 weitere Werte (immer mit alt+Enter) dazu, die Höhe in A2 wird aber nicht automatisch höher und ich hab somit einen optischen Datenverlust.

Über eure Hilfe würde ich mich sehr freuen, wenn man sucht findet man immer nur die manuellen Sachen.

Gruß Epson
Antworten Top
#2
Hallo Epson,

folgender Code kommt in das schon vorhandene VBA-Modul des entsprechenden Tabellenblatts:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$1" Then Range("A2").Rows.AutoFit
End Sub

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Epsolos
Antworten Top
#3
da war schon einer schneller.
[-] Folgende(r) 1 Nutzer sagt Danke an Egon12 für diesen Beitrag:
  • Epsolos
Antworten Top
#4
Vielen Dank dafür, leider hab ich noch Fragen dazu

1) kann man das auch ohne VBA lösen?

2) kann man den Code automatisch mit kopieren wenn ich Zelle A2 nach A3 vervielfältige? (Original Tabelle ist groß und ziemlich verschachtelt, kann ich leider nicht uploaden)

-Die Formatierung soll auf Zellen angewendet werden die mit einem Sverweis und Verknüpfen belegt sind

Hab vorher leider noch nie mit VBA gearbeitet und bin wirklich Dankbar für die Hilfe
Antworten Top
#5
1) Nein (bzw. ja, wenn Du den Umbruch im Menü aktivierst, aber das ist je nach Version nicht immer genau)

2) Rechtsklick Tabellenreiter - Code Anzeigen - nun füge ein

Private Sub Worksheet_Change(ByVal T As Range)
  If T.Column = 1 Then T.Rows.AutoFit
End Sub

Damit wird jede Eingabe in Spalte 1 höhenangepasst. Formelzellen allerdings, deren Inhalt sich ändert, passen sich so nicht an.

EDIT: Der Code ist nicht zutreffend, denn er wirkt auch bei Eingabe in anderen Spalten.
Antworten Top
#6
Hi,

dieser Code funktioniert:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Set Bereich = Intersect(Target, Range("A:A"))
If Not Bereich Is Nothing Then
    On Error Resume Next
        'Bereich.Dependents.WrapText = True
        Bereich.Dependents.EntireRow.AutoFit
    On Error GoTo 0
End If
End Sub

Der Bereich der Ausgangszellen (also die Zellen, in die etwas eingegeben wird), wird mit dem Ausdruck Range("A:A") (also hier die ganze Spalte A) festgelegt. Mit Range("A1:A10,C3:F3,Q10") werden die entsprechenden Zellen festgelegt. Zu beachten ist, dass man die amerikanische Notation ("," statt ";") verwenden muss. Die Zellen, die davon abhängen (also die, bei denen die Höhe angepasst werden muss) werden automatisch ermittelt. Natürlich muss in jenen Zellen der Textumbruch gesetzt sein. Falls dies nicht garantiert ist, kann man auch die auskommentierte Zeile aktivieren. Dann wird das automatisch erledigt.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste