Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1876to1880
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
Inhaltsverzeichnis

Übertragen Zeilenhöhe falsches Ergebnis

Übertragen Zeilenhöhe falsches Ergebnis
08.04.2022 09:38:38
Caro
Hallo,
ich möchte die Zeilenhöhe aller Zeilen von einem Worksheet in ein anderes übertragen. Zuvor wurden schon die Inhalte übertragen, die Daten und die Schrift sind also gleich. Die Zeilenhöhen variieren stark. Die Zieltabelle enthält keine Formeln, die Ursprungstabelle enthält Formeln.
Folgenden Code habe ich hier im Forum gefunden:

Dim iZeile%, iStartZeile%, iEndZeile%, iZeilenHöhe%
Dim sQuellTabelle$, sZielTabelle$
iStartZeile = 1
iEndZeile = 150
sQuellTabelle = "Tabelle5"
sZielTabelle = "Tabelle6"
For iZeile = iStartZeile To iEndZeile
iZeilenHöhe = Sheets(sQuellTabelle).Rows(iZeile & ":" & iZeile).EntireRow.RowHeight
Sheets(sZielTabelle).Rows(iZeile & ":" & iZeile).EntireRow.RowHeight = iZeilenHöhe
Next
Tendenziell funktioniert es auch, allerdings weichen die Höhen je um 1mm ab.
Beispiel:
Starttabelle Zeile 1 Zeilenhöhe 0,48cm, Zeile B 0,34cm
Zieltabelle Zeile 1 Zeilenhöhe 0,49cm, Zeile B 0,35cm
Woran liegt das und wie kann ich das beheben? Leider führt es nämlich zu verkehrten Umbrüchen in der Zieltabelle.
Vielen herzlichen Dank im Voraus!
Caro

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Übertragen Zeilenhöhe falsches Ergebnis
08.04.2022 09:43:06
onur
Wieso kopierst du nicht einfach das Blatt?
AW: Übertragen Zeilenhöhe falsches Ergebnis
08.04.2022 09:51:31
Caro
Hallo onur,
vielen Dank für deine Nachricht.
Ein Teil der Daten aus dem Startblatt wird über ein automatisches Dropdown ausgelesen und in das Zielblatt übertragen, die Anzahl der herausgefilterten Zeilen muss unterhalb der Tabelle in Form von Leerzellen wieder eingetragen werden. Außerdem möchte ich an keiner Stelle im Zielblatt Formeln haben UND es sind im Startblatt zudem Grafiken. Die Zeilenhöhen automatisch anpassen geht auch nicht, da die Zeilen verbundene Zellen enthalten.
VG Carolin
AW: Übertragen Zeilenhöhe falsches Ergebnis
08.04.2022 09:48:59
Rudi
Hallo,
versuchs mal ohne Schleife:

With Sheets(sQuellTabelle)
.Range(.Rows(iStartZeile),.Rows(iEndZeile)).Copy
End With
Sheets(sZielTabelle).Cells(iStartZeile, 1).Pastespecial xlpasteFormats
Gruß
Rudi
Anzeige
AW: Übertragen Zeilenhöhe falsches Ergebnis
08.04.2022 10:00:06
Caro
Hallo Rudi,
vielen Dank! Ich bin ja ein Idiot, ich habe viel zu kompliziert gedacht! Ich habe kaum Erfahrung in VBA und ganz offensichtlich vor Bäumen den Wald nicht gesehen.
Du bist mein Held :)
VG
Caro
AW: Übertragen Zeilenhöhe falsches Ergebnis
08.04.2022 09:53:08
UweD
Hallo
da du die Zeilenhöhe als Integer dimensioniert hast, weichen die Werte um die Nachkommastellen ab.
Hab deinen Code mal vereinfacht

Dim iZeile%, iStartZeile%, iEndZeile%
Dim sQuellTabelle$, sZielTabelle$
iStartZeile = 1
iEndZeile = 150
sQuellTabelle = "Tabelle5"
sZielTabelle = "Tabelle6"
With Sheets(sZielTabelle)
For iZeile = iStartZeile To iEndZeile
.Rows(iZeile).RowHeight = Sheets(sQuellTabelle).Rows(iZeile).RowHeight
Next
End With
LG UweD
Anzeige
Ergänzung
08.04.2022 10:01:25
UweD
&GT&GT weichen die Werte um die Nachkommastellen ab
genau genommen:
Excel rechnet die Zeilenhöhe intern in Pixel
aus 60,75 wird durch die Integerzuweisung 61
aus 60,25 wird durch die Integerzuweisung 60
Es wird also gerundet
AW: Ergänzung
08.04.2022 10:11:57
Caro
Hallo UweD,
ich danke dir sehr für die gute Erklärung!
VG
Caro K.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige