Anzeige
Archiv - Navigation
1576to1580
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Textgröße an Zelle anpassen
30.08.2017 13:58:15
Simon
Hallo Leute :D
Ich habe wieder folgendes Problem mit Excel:
Ist es möglich über VBA den Text in einer Zelle so anzupassen das sich die Textgröße automatisch ändert.
Manchmal ist so viel Text in einer Zelle, dass dieser am Ende nicht mehr sichtbar ist.
Gibt es per VBA die Möglichkeit, die Grösse der Schrift so anzupassen, dass immer der komplette Text in die Textbox passt ? Also je mehr Text, um so kleiner die Schriftgrösse.
(BITTE NICHT ÜBER DIE MÖGLICHKEIT Zellen formatieren - Ausrichtung - An Zellgröße anpassen)
Gruß, Simon

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textgröße an Zelle anpassen
30.08.2017 16:09:43
yummi
Hallo Simon,
Cells(reihe,spalte).ShrinkToFit = True
Gruß
yummi
Event-Makro, aber warum?
30.08.2017 16:23:10
KlausF
Hallo Simon,
man könnte ein Event-Makro schreiben, dass immer dann automatisch ausgeführt wird,
wenn Du z.B. etwas in eine Zelle schreibst. Dieses Makro müsste man so schreiben,
dass es entweder gelten würde
für alle Zellen im Blatt
für einen zusammen hängenden Zellbereich
für einzelne Spalten oder Zeilen
für einzelne nicht zusammen hängende Zellen
für eine Kombination dieser Auswahlen
In jedem Falle müsste aber der Bereich vorher geklärt sein.
Da stellt sich die Frage, wieso Du nicht An Zellgröße anpassen nutzen willst?
Das ist mV der einfachste und schnellste Weg. Hier ist also ein Makro völlig überflüssig.
Es sei denn, Du findest noch eine überzeugende Erklärung ...
Gruß
Klaus
Anzeige
Begründung
31.08.2017 14:45:49
Simon
Danke für deine schnelle Antwort jedoch hilft mir der klein Makro leider nichts da er die Schriftgröße nur optisch verändert und nicht umstellt.
Zu meiner Begründung:
Ich habe mein Excel-File mit einer Word-Datei verknüpft und diese Word-File holt sich bestimmte Daten aus der Excel-File automatisch. Jedoch habe ich im Word nur einen kleinen Bereich frei den ich im Excel wie im Word festgelegt habe. Nun wird jedoch wenn man das Tool an Zellgröße anpassen verwendet nicht wirklich der Text verkleinert sondern nur optisch an die Tabelle angepasst, somit ist der Text nur in der Tabelle kleiner und nicht kleiner formatiert.
Anzeige
nur Workaround
31.08.2017 18:38:18
KlausF
Hi Simon,
mir fällt da nur eine Krücke ein (falls hier nicht noch jemand eine zündende Idee dazu hat).
Mit diesem Makro
Sub FontMinus()
With ActiveCell
If .Value  "" Then .Font.Size = .Font.Size - 1
End With
End Sub
wird der Schriftgrad immer 1 pt kleiner gemacht. Du müsstest also mehrmals hintereinander
den Button drücken und Dich an das Ergebnis ran tasten. Man könnte das Makro auch auf einen
Tastaturbefehl legen, dann geht es relativ schnell. Wenn der Finger einmal zu schnell gewesen
ist könntest Du dann mit diesem Makro gegen steuern:
Sub FontPlus()
With ActiveCell
If .Value  "" Then .Font.Size = .Font.Size + 1
End With
End Sub
Wie schon gesagt, nur eine Krücke. Vielleicht hilft es ja trotzdem ...
Gruß
Klaus
Anzeige
AW: nur Workaround
01.09.2017 07:44:59
Simon
Hallo, danke nochmals für deine Antwort diese Methode hilft mir nicht direkt weiter ist aber denke ich mal ein sehr guter Ansatz.
Ich hätte noch eine Idee. Kann man vielleicht einen Makro schreiben wenn eine bestimmte Anzahl von Buchstaben erreicht wurde dann z.B.: Schriftgröße um 10 verringern. Ich denke mal so würde es vielleicht klappen. :D
Gruß Simon
AW: nur Workaround
01.09.2017 08:39:38
yummi
Hallo Simon,

Sub FontMinus()
With ActiveCell
If Len(.Value) > 10 Then
.Font.Size = .Font.Size - 10
Else
If .Value  "" Then .Font.Size = .Font.Size - 1
End If
End With
End Sub
Gruß
yummi
Anzeige
AW: nur Workaround
01.09.2017 09:09:07
Simon
Danke dieser Makro hilft mir weiter.
Kann man diesen vielleicht umschreiben das dieser Makro in bestimmten Spalten und Zeilen ausgeführt wird?
AW: nur Workaround
01.09.2017 11:53:57
yummi
Hallo Simon,
ja kann man.
Das Makro gehört dann in den Code des Tabellenblattes als Worksheet_Change
Dann fragst Du dort folgendes ab:

if target.column = 3 then 'für Spalte C musst Du auf deinen Bereich anpassen also Target.Column  _
>= 3 and Target.Column  10 Then
.Font.Size = .Font.Size - 10
Else
If .Value  "" Then .Font.Size = .Font.Size - 1
End If
End With
End If
End if
Gruß
yummi
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige