2012-11-19 15:11:43 +0000 2012-11-19 15:11:43 +0000
80
80

Excel - Verhindern, dass Zelltext in die nächste (leere) Zelle überläuft

Wenn der Text in einer Excel-Zelle zu lang ist, um im sichtbaren Bereich dieser Zelle angezeigt zu werden, und die nächste Zelle auf der rechten Seite leer ist, lässt Excel den Text in dieser nächsten Zelle anzeigen (und in der nächsten und in der nächsten, je nach Bedarf). Ich möchte dies ändern; ich möchte diesen Textüberlauf vermeiden.

Ich weiß, dass ich dies vermeiden kann, indem ich “Zeilenumbruch” aktiviere und die Zeilenhöhe anpasse. Aber das ist nicht das, was ich will.

Ich möchte das DEFAULT-Verhalten von Excel so ändern, dass es den Wert jeder Zelle nur im sichtbaren Bereich dieser Zelle anzeigt. Kein Überlauf, kein Zeilenumbruch.

Ist das möglich? (Übrigens benutze ich Excel 2010).

Antworten (8)

53
53
53
2015-10-22 13:28:31 +0000

Ja, Sie können dieses Verhalten ändern, aber Sie werden wahrscheinlich nicht wollen, dass die dadurch verursachten Nebenwirkungen auftreten.

Der Schlüssel zur Begrenzung des Zellinhalts auf die Zellgrenzen, unabhängig davon, ob die benachbarte Zelle Daten enthält, ist die Textausrichtung Fill. Markieren Sie die Zellen, die nicht überlaufen sollen, und klicken Sie mit der rechten Maustaste darauf > Zellen formatieren… > Ausrichtung tab > Horizontale Ausrichtung > Ausfüllen

Das Problem bei dieser Methode ist, dass dadurch tatsächlich Zellen gefüllt werden, indem ihr Inhalt wiederholt wird, wenn er kurz genug ist, um mehrfach in die Zelle zu passen. Was dies bedeutet, sehen Sie unten im Screenshot. (Beachten Sie, dass B7 mit ‘kurzem Text’ ausgefüllt ist.)

Es scheint, dass Sie mit den Umgehungslösungen in Benedikts Beitrag

nicht weiterkommen. Beachten Sie, dass Sie mit Benedikts erster, sehr cleverer Methode auch die angrenzenden Zellen mit Tick-Zeichen (') füllen könnten. Auf diese Weise müssen Sie nichts ausblenden, verhindern ein Überlaufen der Zellen und wenn Sie die Zellen als Text kopieren (z.B. in den Notizblock), erhalten Sie immer noch leeren Text und keine Leerzeichen oder Ticks.

27
27
27
2015-07-24 13:00:33 +0000

So mache ich das.

  1. Option 1: Füllen Sie alle leeren Zellen mit einem “N/A” und verwenden Sie dann Bedingte Formatierung, um den Text unsichtbar zu machen.
  2. Oder Option 2: Füllen Sie alle leeren Zellen mit 0 und verwenden Sie eine Excel-Einstellung, um Nullwerte auszublenden.

Alle leeren Zellen füllen: (auf einem Mac getestet)

  • Bearbeiten → Gehe zu… → Spezial … (Unter Windows: Home → Bearbeiten von → Suchen & Auswählen von → Go To Special…)
  • Wählen Sie “Leerzeichen” und drücken Sie OK.
  • Alle leeren Zellen sind jetzt ausgewählt. Klicken Sie nichts an.
  • Geben Sie “N/A” oder 0 ein, und drücken Sie dann Strg+Enter†. Dadurch wird der Wert in alle markierten Zellen eingefügt.

Bedingte Formatierung zum Ausblenden von “N/A ”

  • Formatieren Sie →. Bedingte Formatierung.
  • Neue Regel erstellen.
  • Stil: Klassisch, und Verwenden Sie eine Formel, um festzulegen, welche Zellen formatiert werden sollen.
  • Formel: =A1="N/A"
  • Formatieren mit: Benutzerdefiniertes Format: Schriftfarbe weiß, keine Füllung.

Nullen ausblenden

  • Excel → Einstellungen → Ansicht.
  • Deaktivieren Sie “Nullwerte anzeigen”.

_________________ †  Das ist Strg+Eingabe, nicht Strg +Shift+ Eingabe.

13
13
13
2017-04-17 12:50:46 +0000

Versuchen Sie die Formel =“”“ einzugeben (das sind zwei doppelte Anführungszeichen) in der benachbarten Zelle, wo Sie den Überlauf nicht sehen wollen. Dies wird zu "null” ausgewertet, was nichts anzeigt und die Mathematik nicht beeinflusst.

7
7
7
2017-12-13 19:27:48 +0000

Dies ist vielleicht nicht für jeden eine Option, aber wenn Sie das Dokument in Google Sheets importieren, wird diese Funktionalität standardmäßig unterstützt. In der oberen Menüleiste werden drei Arten von Textumbruch unterstützt. Überlauf, Zeilenumbruch und Clip. Sie suchen nach Clip

Abhängig von den Anforderungen kann dies für einige Personen eine praktikable Option sein.

4
4
4
2018-11-28 00:26:59 +0000

Erweitert man die Lösung, ' zu verwenden, um Excel‘s rechtes Überlaufen von Text in angrenzende leere Zellen zu blockieren, so möchten Sie manchmal Ihre Datenspalte nicht modifizieren/beschädigen, indem Sie diesen Wert dort einfügen.

Anstatt die ' in Ihre eigentlichen Datenwerte einzufügen, können Sie für diesen Zweck eine neue dedizierte vertikale Spalte erstellen, die bis zum Ende vollständig mit ' Zeichen gefüllt ist.

1. Barrierespalte

2. Fügen Sie die Spalte “Barriere” links von der/den Spalte(n) ein, die geschützt werden soll(en).

3. Klappen Sie die Barrierespalten zusammen, indem Sie ihre Spaltenbreite auf einen kleinen Wert setzen

Setzen Sie die Spaltenbreite auf einen Wert wie z.B. .1, oder halten Sie die Barrierespalten alternativ breiter, um als Rand oder Zwischenspalten-Whitespace zu wirken.

Beachten Sie, dass Sie eine Breite größer als Null setzen müssen; wenn Sie die vertikale Barrierespaltenbreite auf Null setzen, kehrt das unerwünschte Zellüberlaufverhalten zurück.

4. Voila!

4
4
4
2017-10-31 15:09:07 +0000

Verwenden Sie die horizontale Textausrichtung “Füllen” für die Zelle. Sie finden sie an der gleichen Stelle wie andere Ausrichtungsoptionen, die Ihr Problem lösen sollten

1
1
1
2019-06-24 08:59:09 +0000

Passen Sie in Excel die Spalte an die erforderliche Breite an, aktivieren Sie dann die Wortverdrehung auf dieser Spalte (wodurch alle Zeilenhöhen zunehmen) und wählen Sie schließlich alle Zeilen aus und passen Sie die Zeilenhöhen an die gewünschte Höhe an. Voilà! Sie haben jetzt Text in Zellen, die nicht in die angrenzenden Zellen überlaufen.

(Anmerkung: Ich habe dies gefunden und als Kommentar in der ausgewählten Antwort gepostet, aber auch als Antwort gepostet, damit es für andere leichter zu finden ist).

0
0
0
2019-09-23 04:17:44 +0000

In der gleichen Denkweise, dass Google Sheets vielleicht nicht für jeden ist, ist dieses Makro vielleicht nicht für jeden, aber es möglicherweise für jemanden.

Es läuft durch den markierten Bereich und ersetzt überlaufende Zellen durch abgeschnittenen Text.

Flags bestimmt, ob:

  • der anstößige Text an dieselbe relative Adresse in einem neuen Arbeitsblatt kopiert oder verworfen wird.

  • der abgeschnittene Text hartkodiert oder über eine Arbeitsblattformel verlinkt wird =LEFT()

  • der abgeschnittene Text mit der vollständigen Zeichenfolge im neuen Arbeitsblatt verlinkt wird.

Standard ist es, die Daten beizubehalten und beide Links zu verwenden.

Option Explicit

Sub LinkTruncatedCells()
    Dim rng As Range: Set rng = Selection
    Dim preserveValues As Boolean: preserveValues = True
    Dim linkAsFormula As Boolean: linkAsFormula = True
    Dim linkAsHyperlink As Boolean: linkAsHyperlink = True
    Dim w As Single
    Dim c As Range
    Dim r As Range
    Dim t As Long
    Dim l As Long
    Dim s As String
    Dim ws As Worksheet
    Dim ns As Worksheet
    Application.ScreenUpdating = False
    Set ws = rng.Parent
    For Each c In rng.Columns
        w = c.ColumnWidth
        t = 0
        l = 0
        For Each r In c.Rows
            If Len(r) > l Then
                s = r
                If CBool(l) Then r = Left(s, l)
                Do
                    r.Columns.AutoFit
                    If r.ColumnWidth > w And Len(s) > t Then
                        t = t + 1
                        r = Left(s, Len(s) - t)
                        l = Len(r)
                    End If
                Loop Until t = Len(s) Or r.ColumnWidth <= w
                r.ColumnWidth = w
                If r <> s And preserveValues Then
                    If ns Is Nothing Then
                        Set ns = ws.Parent.Worksheets.Add(after:=ws)
                    End If
                    ns.Range(r.Address) = s
                    If linkAsFormula Then r.Formula = "=LEFT(" & ns.Name & "!" & r.Address & "," & l & ")"
                    If linkAsHyperlink Then ws.Hyperlinks.Add Anchor:=r, Address:="", SubAddress:= _
                            ns.Range(r.Address).Address(external:=True)
                End If
            End If
        Next r
    Next c
    ws.Activate
    Application.ScreenUpdating = True
End Sub

Schlussbemerkung: Ich habe es für persönliche Projekte verwendet und fand es zuverlässig, aber bitte sichern und sichern Sie Ihre Arbeit, bevor Sie ein unbekanntes Makro ausprobieren.