HallO!
Dieses Problem stellte sich schoneinmal bei mir, nur finde ich jetzt auf anhieb den Artikel nicht. Gelöst wurde es da aber auch nicht.
Also ich habe eine Arbeitsmappe mit zwei Blättern.
Das erste Blatt Schriftgröße 10 - also „normal“. Diverse Zellen haben einen Zeilenumbruch und vor dem Audruck wird mit …autofit die Zeilenhöhe angepasst. Funktioniert super!
Im zweiten Blatt sind die gleichen Zellen allerdings mit Schriftgröße 11 und 12. dort sind auch Zeilenumbruch usw. aktiviert. und vor dem Ausdruck wird auch hier mit …autofit versucht die Zeilenhöhe anzupassen. Aber es funktioniert nicht.
Noch komischer:
Zeilen, welche ich händisch an die Größe anpasste (zB doppelte Höhe) werden wieder auf einfache Höhe „verkleinert“.
Ich habe übrigens Excel XP SP3.
Vielen Dank schonmal im Voraus
Gruß
LE
Hallo LE,
Autofit in EXCEL hat mE ne menge Macken, und ich kenne keine wirkliche Lösung. Trotzdem ein paar Hinweise:
Ich verwende 2002, SP3.
Autofit funktioniert grundsätzlich nicht bei:
Verbundenen Zellen
Texten ab ca. 1000 Zeichen
Daneben gibt es eine menge Möglichkeiten die Probleme betreiten:
IMHO sind Spaltenbreite und -höhe in "Anzahl Zeichen … (ein W?) der Standardschriftart und -größe angegeben. Wie dann ein „realer“ Inhalt dahin übersetzt wird? Keine Ahnung.
Tatsächlich hat sogar die Schriftart des Desktops einen Einfluß auf das Layout!
Ein Test mit Inhalten unterschiedlicher Zeichngrößen und Autofit (ohne die oben geannten no goes) war aber bei mir erfolgreich.
Abhilfe (eh: besser Workaround):
Autofit funktioniert grundsätzlich nicht bei:
Verbundenen Zellen
Texten ab ca. 1000 Zeichen
Erstes Problem: Es handelt sich um verbundene Zellen!
Daneben gibt es eine menge Möglichkeiten die Probleme
betreiten:
IMHO sind Spaltenbreite und -höhe in "Anzahl Zeichen … (ein
W?) der Standardschriftart und -größe angegeben. Wie dann ein
„realer“ Inhalt dahin übersetzt wird? Keine Ahnung.
Tatsächlich hat sogar die Schriftart des Desktops einen
Einfluß auf das Layout!
Ein Test mit Inhalten unterschiedlicher Zeichngrößen und
Autofit (ohne die oben geannten no goes) war aber bei mir
erfolgreich.
Abhilfe (eh: besser Workaround):
Grüezi LicifersErbe
Autofit funktioniert grundsätzlich nicht bei:
Verbundenen Zellen
Texten ab ca. 1000 Zeichen
Erstes Problem: Es handelt sich um verbundene Zellen!
Ja, das ist wirklich ein Problem, das Du IMO umgehend beheben solltest…
Also hier die genaue Formatierung:
Zellen E-K verbunden
Wie gesagt, das ist suboptimal, Du solltes den Verbund aufheben.
So, ich hoffe das hilft, das man mir evtl. weiterhelfen
kann…
Gegebenenfalls könntest Du die folgende VBA-Routine einsetzen um die Zeilenhöhe anzupassen, ob das mit der integrierten Formel klappt musst Du mal testen:
Function ZeilenHoeheVerbundeneZellen(ByVal rngZelle As Range)
'passt die Zeilenhöhe bei verbundenen Zellen automatisch an
'von Hans Herber / angepasst von Thomas Ramel ([email protected])
'Aufrufen per Übergabeparameter mit der folgenden Zeile:
'
'Sub test()
'ZeilenhoeheVerbundeneZellen (ActiveSheet.Range("A1"))
'End Sub
'
Dim CurrentRowHeight As Single
Dim MergedCellRgWidth As Single
Dim CurrCell As Range
Dim CellWidth As Single
Dim PossNewRowHeight As Single
Dim iX As Integer
If IsEmpty(rngZelle) Then
Set rngZelle = ActiveCell
End If
If rngZelle.MergeCells Then
With rngZelle.MergeArea
If .Rows.Count = 1 And .WrapText = True Then
Application.ScreenUpdating = False
CurrentRowHeight = .RowHeight
CellWidth = rngZelle.ColumnWidth
For Each CurrCell In rngZelle.MergeArea
MergedCellRgWidth = CurrCell.ColumnWidth + \_
MergedCellRgWidth
iX = iX + 1
Next
MergedCellRgWidth = MergedCellRgWidth + (iX - 1) \* 0.71
.MergeCells = False
.Cells(1).ColumnWidth = MergedCellRgWidth
.EntireRow.AutoFit
PossNewRowHeight = .RowHeight
.Cells(1).ColumnWidth = CellWidth
.MergeCells = True
'.RowHeight = PossNewRowHeight
.RowHeight = IIf(CurrentRowHeight \> PossNewRowHeight, \_
CurrentRowHeight, PossNewRowHeight)
End If
End With
End If
End Function
Mit freundlichen Grüssen
Thomas Ramel
Hallo Thomas!
Perfekt!
Danke Dir, habs (ein wenig angepasst) in meinen Quellcode integriert.
Funktioniert 1A!
Danke Dir
Gruß
Lucifers Erbe
Hi LE,
Erstes Problem: Es handelt sich um verbundene Zellen!
tja nu, die bringen immer Ärger 
Der Ausdruck wird über ein Makro gestartet, da folgende Dinge
vor dem Druck abgearbeitet werden:
- Alle Zeilen zwischen 16:95 die nicht benötigt werden, werden
ausgeblendet.
- und eben der nicht funktionierende .autofit
Probier dieses mal miteinzubauen:
Option Explicit
'
Sub MyAutofit()
Dim Zei As Variant, Spa As Long, S, H
For Each Zei In ActiveSheet.UsedRange.Rows
H = 0
For Spa = 1 To Cells(Zei.Row, Columns.Count).End(xlToLeft).Column
S = Split(Cells(Zei.Row, Spa), Chr(10))
If UBound(S) \> H Then H = UBound(S)
Next Spa
Cells(Zei.Row, Spa).RowHeight = (H + 1) \* 16
Next Zei
End Sub
Gruß
Reinhard
Grüeziu Lucifers Erbe
Perfekt!
Danke Dir, habs (ein wenig angepasst) in meinen Quellcode
integriert.
Funktioniert 1A!
Fein, das freut mich sehr - und Danke für dein Feedback 
Mit freundlichen Grüssen
Thomas Ramel
OT Feedback
Grüeziu Thomas
(wegem dem u, hattet ihr auch Rechtschreibreform? *kicher*)
Fein, das freut mich sehr - und Danke für dein Feedback 
Ob wohl LE weiß daß jedweder Feedback schön ist, also auch daß mein Code nicht perfekt läuft?
Denn damit kann ich was anfangen und mich neu daran versuchen.
Und zum Code von Hans, wenn da Zellen übereinander verbunden sind macht der irgendwie gar nix!?
Mein Code schon *glaub* aber ich muß zugeben ich hatte ihn nur kurz getestet mit verbundenen Zellen in einer Zeile.
Deshalb wäre mir ein Feedback von LE schon wichtig, denn wer verbundene Zellen benutzt hat sicher noch mehr Schweinereien im Blatt versteckt und wird später in der Hölle schmoren, naja, das macht ihm sicher nix aus bei dem Nick *grien*, als da wären ausgeblendete Zellenreihen, Teilergebnisse, Pivottabellen, Gruppierungen, Autofilter usw. und halt auch verbundene Zellen über Zeilen hinaus.
Btw: Meine Anfrage im VB-Brett, da würde ich ja gerne ein Feedback zu den Antworten geben, leider gibt’s keine Antworten 
Es geht im Betreff um Formulare im IE.
Wäre nett wenn du da einige der Beispiele von MS zum Laufen bringen könntest, ich schaffe das nicht 
Gruß
Reinhard
Mit freundlichen Grüssen
Thomas Ramel
Grüezi Reinhard
Grüeziu Thomas
(wegem dem u, hattet ihr auch Rechtschreibreform? *kicher*)
Hups, nein, da ist mir bloss ein Jodler entwischt… 
Fein, das freut mich sehr - und Danke für dein Feedback 
Ob wohl LE weiß daß jedweder Feedback schön ist, also auch daß
mein Code nicht perfekt läuft?
Denn damit kann ich was anfangen und mich neu daran versuchen.
…daher lobe ich auch ab und zu die lieben Feedback-Geber in der Hoffnung dass solches künftig öfter vorkommt…
Deshalb wäre mir ein Feedback von LE schon wichtig, denn wer
verbundene Zellen benutzt hat sicher noch mehr Schweinereien
im Blatt versteckt und wird später in der Hölle schmoren,
naja, das macht ihm sicher nix aus bei dem Nick *grien*, als
da wären ausgeblendete Zellenreihen, Teilergebnisse,
Pivottabellen, Gruppierungen, Autofilter usw. und halt auch
verbundene Zellen über Zeilen hinaus.
Tja, ich bin auch gegen solche Unschönheiten - gegen verbunden Zellen verwende ich schon bald Weihwasser und Koblauch… 
Btw: Meine Anfrage im VB-Brett, da würde ich ja gerne ein
Feedback zu den Antworten geben, leider gibt’s keine Antworten
-(
Hmmm, vielleicht setzt Du die Latte zu hoch an…?
Es geht im Betreff um Formulare im IE.
Wäre nett wenn du da einige der Beispiele von MS zum Laufen
bringen könntest, ich schaffe das nicht 
Na, du hast ja Gottvertrauen - wenn Du es nicht schaffst, wie soll ich dann?
…aber denoch sehe ich mir die Sache vermutlich mal näher an - ‚travelling salesman‘ ist da doch das Thema, nicht?
Mit freundlichen Grüssen
Thomas Ramel
Grüezi Thomas,
Hups, nein, da ist mir bloss ein Jodler entwischt… 
nach Jodeln konnte ich ja nicht nachfragen, da hätteste deine Flinte aus dem Schrank genommen und mich besucht.
Schweizer sind da empfindlich, ich habe Kishon gelesen *grins*
Btw: Meine Anfrage im VB-Brett, da würde ich ja gerne ein
Feedback zu den Antworten geben, leider gibt’s keine Antworten
-(
Hmmm, vielleicht setzt Du die Latte zu hoch an…?
Nö, keinesfalls, sicher, ich kann nicht drüberhopsen, aber du oder/und Rainer/Alex könnten drüberhopsen *gehofft hab*
Na, du hast ja Gottvertrauen - wenn Du es nicht schaffst, wie
soll ich dann?
Mein Zweitnick ist BigHope 
…aber denoch sehe ich mir die Sache vermutlich mal näher an
Dankeschön.
- ‚travelling salesman‘ ist da doch das Thema, nicht?
? Sorry Thomas, verstehe ich grad nicht.
Lieben Gruß
Reinhard
Grüezi Reinhard
Hups, nein, da ist mir bloss ein Jodler entwischt… 
nach Jodeln konnte ich ja nicht nachfragen, da hätteste deine
Flinte aus dem Schrank genommen und mich besucht.
Schweizer sind da empfindlich, ich habe Kishon gelesen *grins*
Ja, genauso wie wir reinlich sind - das hat Herr Kischon auch sehr gut getroffen 
Hmmm, vielleicht setzt Du die Latte zu hoch an…?
Nö, keinesfalls, sicher, ich kann nicht drüberhopsen, aber du
oder/und Rainer/Alex könnten drüberhopsen *gehofft hab*
…schaue mer mol…
…aber denoch sehe ich mir die Sache vermutlich mal näher an
Dankeschön.
- ‚travelling salesman‘ ist da doch das Thema, nicht?
? Sorry Thomas, verstehe ich grad nicht.
Ein erster Blick auf die verlinkte Webseite hat mir den Eindruck gemacht als ginge es darum beliebige Adressen zu übergeben und dann die optimale (kürzeste) Reiseroute ausgeworfen zu bekommen - da kann ich mich aber auch täuschen…
–
Mit freundlichen Grüssen
Thomas Ramel
Hallo Reinhard!
Ja Dein Code funktioniert auch super! *grinst*
Sorry, aber nachdem ich den laufenden Code hatte, guckte ich nicht mehr so tief im Forum! Erst gerade ist mir Dein Vorschlag aufgefallen! ^^
Und mangelndem Feedback kann man mir nicht vorwerfen *empört sich aufbaut* Sonst muss ich mal den, den ich beerbe verschicken! *lool*
Und Nein, außer verbundenen Zellen (ich gestehe: ich arbeite sehr viel damit) keine bösen, gemeinen und hinterhältigen Fiesheiten!^^
Lieben Gruß
LE
PS: Hab sogar im „Lob/Kritik“ mich schon über die Hilfen hier bedankt! 