2012-02-14 21:16:14 +0000 2012-02-14 21:16:14 +0000
91
91

Wie kann man erreichen, dass die Excel-Funktion "Zeilenhöhe automatisch anpassen" tatsächlich die Zeilenhöhe automatisch anpasst?

Bei jeder Generation von Excel, an die ich mich erinnern kann (einschließlich 2010, das ich jetzt verwende), versagt die Excel-Funktion “Zeile automatisch vergrößern” manchmal bei der automatischen Größenanpassung einer Zeile, wenn die Zelle umgebrochenen Text enthält. Wenn sie richtig funktioniert, wird der gesamte Text aufgedeckt und es gibt keinen zusätzlichen Platz unter der letzten Textzeile. Wenn dies nicht funktioniert, wird zusätzlicher Platz unter dem Text hinzugefügt. Erschwerend kommt hinzu, dass das, was Sie sehen, nicht immer das ist, was Sie bekommen, d.h. Text, der auf dem Bildschirm in Ordnung erschien, wird beim Drucken abgeschnitten. Sie erhalten auch unterschiedliche Größen, je nachdem, ob Sie hinein-/herausgezoomt oder auf die tatsächliche Größe gebracht werden.

Einfacher Testfall:

Warum gibt es eine einzeilige Lücke nach dem Text in Zelle A1, aber nicht in A2?

(Zur Reproduktion: Breite der Spalte A auf 17,14 (125 Pixel) einstellen, Text umbrechen und Zellen oben ausrichten)

(Ich habe doppelt überprüft, dass ich die automatische Zeilenhöhe auf beide Zeilen angewendet habe. Die Zoomstufe beträgt 100 %)

Gibt es eine bekannte Abhilfe, ohne auf eine manuelle Anpassung der Zeilenhöhen zurückzugreifen (was bei mehr als einer Handvoll Zeilen nicht praktikabel ist)?

Antworten (16)

106
106
106
2012-12-05 10:49:44 +0000

Eine Methode, die ich gerade gefunden habe (und die den vorherigen Beitrag ein wenig erweitert):

  • Wählen Sie das ganze Blatt aus
  • Ändern Sie die Größe einer Spalte ein wenig (da das ganze Blatt ausgewählt ist, werden alle Spalten breiter)
  • Doppelklicken Sie auf ein Zeilentrennzeichen - die Zeilenhöhe wird automatisch angepasst
  • Doppelklicken Sie auf ein Spaltentrennzeichen - die Spaltenbreiten werden automatisch angepasst

Voila!

13
13
13
2012-02-15 19:07:25 +0000

Das WYSIWYG von Excel ist nicht das beste. Auf Ihrem Bild schleicht sich ‘Kat.’ gerade noch in die 5. Wenn Sie den Zoom-Prozentsatz auf weniger als 100% (z.B. 99%) reduzieren, wird ‘cat.’ jetzt bis zur 6. Zeile umgebrochen. Ich glaube, Excel versucht, die automatische Anpassung so vorzunehmen, dass unabhängig von der Zoomstufe fast immer alles sichtbar ist.

Das ist nicht das einzige Problem, das Sie mit der automatischen Anpassung haben werden. Darüber hinaus wird die Art und Weise, wie eine mit einem Wort umwickelte Zelle gedruckt wird, nicht immer mit dem übereinstimmen, was Sie auf dem Bildschirm sehen. Nehmen Sie Ihr Beispiel und ändern Sie die Schriftart in Courier, während Sie die Größe bei 11 belassen.

Wie Sie sehen, scheint die Zelle A1 1,5 zusätzliche Zeilen zu erhalten. Schauen Sie sich nun die Druckvorschau an, ‘Kat.’ ist vollständig ausgeblendet.

Nach meiner Erfahrung hat Excel dieses Problem mit bestimmten Schriftarten und Schriftgrößen mehr als andere. Courier ist schlechter als Courier New , Größe 11 ist im Allgemeinen schlechter als 10 oder 12. (Warum sie Größe 11 als neuen Standard gewählt haben, habe ich keine Ahnung).

3
3
3
2016-01-22 08:51:09 +0000

Ich habe gerade ein kleines Makro für diesen Zweck geschrieben. Ich habe ihm eine Tastenkombination (Strg-Umschalt-J) zugewiesen, und es funktioniert bei mir wie ein Zauber.

Sub ArrangeTable()
'set proper column width and row height for the current region
    With Selection.CurrentRegion
        .Columns.ColumnWidth = 200
        .Columns.EntireColumn.AutoFit
        .Rows.EntireRow.AutoFit
    End With
End Sub

Um dieses dauerhaft verfügbar zu machen, können Sie ganz einfach ein automatisch ladendes Add-In erstellen:

  • erstellen Sie ein Modul in einer neuen leeren Arbeitsmappe und fügen Sie den Code ein,
  • weisen Sie ihm die gewünschte Tastenkombination zu,
  • dann Save As, Add-in, zum Ordner %appdata%\Microsoft\Excel\XLSTART Auf diese Weise wird es bei jedem Start von Excel unsichtbar geladen.
0
0
0
2013-05-01 19:58:57 +0000

Dazu gibt es einen kb-Artikel , der “suggeriert” (er ist unakzeptabel spärlich, in klassischer Microsoft-Manier), dass, wenn Sie jemals eine Zeilenhöhe festlegen, die automatische Höhenanpassung für diese Zeile des Arbeitsblatts dauerhaft wegfällt. Zeilen, deren Höhe Sie nicht angefasst haben, werden jedoch automatisch angepasst.

Zwar können Sie die Spaltenbreiten mit der “Standardbreite”-Einstellung aus dem Jahr 2003 zurücksetzen (madman-designed 2007: Änderung auf “Standardbreite”), aber man vergaß (wieder) (und wieder), dies für Zeilen zu setzen. Die Permanenz scheint also unvermeidlich. Das heißt, wenn Sie eine Standardhöhe von 15 haben und Sie ein Blatt erstellen und alle Höhen auf 12 einstellen, haben Sie die automatische Anpassung einfach verwirkt.

0
0
0
2013-07-05 17:03:56 +0000

Manchmal gibt es die nukleare Methode, um fehlerhafte Autoprobleme zu beheben.

Was ich tue, ist, den Text aus jeder Zelle zu kopieren und die Daten in Notepad einzufügen und dann die Zeile zu löschen. Dann kopiere und füge ich sofort eine Zeile ein, die zwar leer ist, aber dieselbe Formatierung und dasselbe gute Verhalten aufweist wie die gelöschte Zeile. (Sie müssen die gesamte Zeile mit Hilfe der linken Zeilentasten kopieren und einfügen.)

Wenn das erledigt ist, müssen Sie zurückgehen und den Text aus dem Notizblock in jede Zelle einfügen. (Verwenden Sie F2 oder aktivieren Sie andernfalls den Bearbeitungsmodus jeder Zelle, bevor Sie den Text einfügen). Es ist eine Qual, also ist es ein letzter Ausweg, besonders bei ginormell breiten Arbeitsblättern.

Es ist manchmal die einzige Lösung, da das Problem im Programm selbst liegt.

0
0
0
2015-01-08 19:14:53 +0000

Ich habe das nicht gründlich getestet, aber es hat bei mir funktioniert. Im Wesentlichen passt es alle Blätter automatisch an, geht dann zurück und stellt die Spaltenbreite auf die Originalbreite ein, es sei denn, es wurde durch die automatische Anpassung erweitert. Ich hatte nur 10 Spalten und nie mehr als 1000 Zeilen, also passen Sie den Code nach Bedarf an.

Sub ResizeCells()
    Dim sheetCounter As Integer
    Dim rowCounter As Integer
    Dim colCounter As Integer
    Dim totalWidth As Double
    Dim oldColWidths(1 To 10) As Double

    For sheetCounter = 1 To ThisWorkbook.Sheets.Count
        ActiveWorkbook.Worksheets(sheetCounter).Select
        totalWidth = 0

        ' Extend the columns out to 200
        For colCounter = 1 To 10
            oldColWidths(colCounter) = Cells(1, colCounter).ColumnWidth
            totalWidth = totalWidth + oldColWidths(colCounter)
            Cells(1, colCounter).ColumnWidth = 200
        Next

        For rowCounter = 4 To 1000
            If Cells(rowCounter, 1).Value <> "" Or Cells(rowCounter, 2).Value <> "" Or Cells(rowCounter, 3).Value <> "" Then
                Rows(rowCounter & ":" & rowCounter).EntireRow.AutoFit
            End If
        Next

        ' do autofit
        For colCounter = 1 To 10
            Cells(1, colCounter).EntireColumn.AutoFit
        Next

        ' reset to original values if current width is less than the original width.
        For colCounter = 1 To 10
            If Cells(1, colCounter).ColumnWidth < oldColWidths(colCounter) + 0.25 Then
                Cells(1, colCounter).ColumnWidth = oldColWidths(colCounter)
            End If
        Next
    Next
End Sub
0
0
0
2012-06-21 14:33:14 +0000

In einigen Fällen kann das Problem des zusätzlichen Platzes in einigen Zeilen nach dem Aufruf von “AutoFit Row Height” darin bestehen, dass eine versteckte Spalte Text in diesen Zeilen umgebrochen hat.

-1
-1
-1
2013-04-08 16:10:30 +0000

Ich habe Excel 2010. Ich habe festgestellt, dass dieses Problem bei mir auftrat, wenn meine Zoom-Einstellung nicht bei 100 % lag. Solange ich auf 100 % eingestellt bin, wird der Text mit der AutoFit-Funktion für Spalten und Zeilen nicht abgeschnitten.

-1
-1
-1
2012-02-14 21:29:39 +0000

Um Dunc :

zu paraphrasieren, habe ich ein ähnliches Problem mit:

1 gelöst. Auswahl des gesamten Arbeitsblatts:

  1. Doppelklicken auf die Zeile am Rand zwischen den beiden Zeilen.

Um speziell auf Ihr Problem mit dieser zusätzlichen Zeile einzugehen, würde ich annehmen, dass dort ein Zeichen steht. Vielleicht ist es kein sichtbares Zeichen, aber es ist definitiv etwas da.

-1
-1
-1
2013-01-01 11:17:02 +0000

Auch ich habe diesen winzigen, aber extrem ablenkenden Fehler viele Jahre lang ertragen. Mir bleibt nichts anderes übrig, als mit der Zeilenbreite für die Zelle mit dem meisten Text herumzuspielen, und irgendwann gibt das Programm nach und zeigt den Text richtig an.

-1
-1
-1
2013-02-26 11:57:20 +0000

Es gibt eine einfache Lösung:

1) Markieren Sie alle Zeilen, die Sie automatisch formatieren möchten (wenn es sich um einen großen Block handelt, klicken Sie auf die erste und drücken Sie dann Umschalt+Ende und Umschalt+Ab)

2) Klicken Sie mit der rechten Maustaste auf die Auswahl, Zellen formatieren, Registerkarte Ausrichtung, entfernen Sie das Häkchen bei Textumbruch.

Hoffentlich hilft das ;)

-1
-1
-1
2015-12-17 16:10:03 +0000

Tatsächlich gibt es dort ein zusätzliches Zeichen. Es ist das versteckte LF-Zeichen, das am Ende jedes Feldes steht. Wenn der Text genau die richtige Größe hat, ist die zusätzliche Zeile da, um das LF-Zeichen aufzunehmen. Wenn Ihre Kalkulationstabelle jedoch viele verschiedene Größenwerte in derselben Spalte hat, ist es möglich, dass Ihre Korrektur für diese Zelle dazu führt, dass eine andere Zelle in der Spalte das Problem hat. Ich habe gelernt, die meiste Zeit damit zu leben.

-1
-1
-1
2012-08-06 12:19:12 +0000

Ich habe mir nicht die Zeit genommen, die anderen Kommentare zu lesen. Warum die Zeile am unteren Ende des ersten Blocks und nicht im zweiten Block?

Das liegt daran, dass der Text zu nahe am rechten Rand der Zelle endet. Wenn Sie die Spalte etwas breiter einstellen und zwischen den Zeilen doppelklicken, wird die Größe entsprechend angepasst.

-1
-1
-1
2013-06-20 11:46:42 +0000

Meine Hypothese ist, dass Excel sich verknotet, wenn es zu viele Zeilen verlängern muss. Ich hatte eine ähnliche Erfahrung wie oben. Es sieht so aus, als gäbe es am Ende eine zusätzliche NL/CR/LF, aber ich weiß, dass das nicht der Fall ist. Wenn ich die Zelle einige Zeichen auf einmal aufbaue, formatiert sie automatisch OK, bis eine bestimmte Größe erreicht ist, dann fügt sie die zusätzliche Zeile ein. (Ein ähnliches Verhalten in umgekehrter Richtung tritt auf, wenn Sie mit dem Löschen einiger Zeichen beginnen). Es passiert zu verschiedenen Zeiten mit verschiedenen Zellen.

Mist!

Wenn Sie also die Zellenbreite erweitern können, können Sie das Problem wahrscheinlich vermeiden. Wenn Sie das nicht können (wie in meinem Fall), bleiben Sie bei der manuellen Formatierung stecken. Wie ich schon sagte: “Mist!

-2
-2
-2
2013-01-30 20:38:33 +0000

markieren Sie alle Zellen, und klicken Sie zweimal auf die Zeile, die die Zeilen trennt… dies geschieht automatisch.

-2
-2
-2
2012-12-20 00:41:51 +0000

Was für mich (Excel 2010) funktionierte, war, etwa hundert ungenutzte Spalten rechts neben meinen Daten zu löschen. Ich kann nur vermuten, dass es dort etwas gab, das zu einem Fehlverhalten der automatischen Zeilenhöhe führte.