Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1552to1556
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

Makro: Transponieren von Daten, Thumbnails, ...

Makro: Transponieren von Daten, Thumbnails, ...
27.04.2017 13:53:10
Daten,
Hallo zusammen,
ich habe etwas vor und weiß nicht, ob eine Umsetzung über ein Makro möglich ist:
Ausgangssituation:
Eine Excel mit Daten zu Artikeln und Thumbnails. Jeder Artikel in eigener Zeile mit den Infos in Spalten.
Ziel soll es sein:
1. die über Filter sichtbaren Daten in dem einen Arbeitsblatt
2. in ein neues Arbeitsblatt zu transponieren.
Dabei soll vor allem das Thumbnail mit transponiert werden. Und die Spaltenüberschriften in Spalte A transponiert werden.
Hier die Excel als Beispiel: https://www.herber.de/bbs/user/113155.xlsx
Kann mir hierbei jemand helfen?
Danke und Grüße

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro: Transponieren von Daten, Thumbnails, ...
27.04.2017 14:44:32
Daten,
Hi Marcel
Sub PicTransponieren()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim Bild As Shape
Set WS1 = Worksheets("Ausgangssituation")
Set WS2 = Worksheets("Ziel")
WS1.UsedRange.Copy
WS2.Range("A1").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
For Each Bild In WS1.Shapes
Bild.Copy
WS2.Paste WS2.Cells(Bild.TopLeftCell.Column, Bild.TopLeftCell.Row)
Next
End Sub

cu
Chris
AW: Makro: Transponieren von Daten, Thumbnails, ...
27.04.2017 15:30:19
Daten,
Hallo Chris,
fast... :)
Einige Features müssten noch einstellbar sein:
1. Spaltenbreite ab Spalte B: 450 Pixel
2. Spaltenbreite A: automatisch an Textlänge angepasst
3. Es soll in ein komplett neues leeres Arbeitsblatt kopiert werden ("Ziel" exisitiert nicht)
4. Bild soll zentriert in die Spalte eingefügt werden (also zentriert bei 450 Pixeln
5. Format der Zellen ab B2: Linksbündig, oben, Zeilenumbruch, automatische Zellenhöhe
6. Wo kann ich in der Formel anpassen, welche Spalten transponiert werden sollen? (Im Beispiel waren es Spalten A-G, in meiner Datei ist es bspw. B, C, G, CG-CM)
7. Zeilenhöhe Zeile 1: 130 Pixel (Höhe des Bilds)
Danke und Grüße
Anzeige
AW: Makro: Transponieren von Daten, Thumbnails, ...
27.04.2017 16:04:40
Daten,
Hi Marcel
Danke für den Anforderungskatalog :)
Aber das ist mir dann doch zu umfangreich und ich lasse die Frage offen. Da sich die Ausgangslage geändert hat (nicht zusammenhängende Bereiche) ist der Beispielcode für den Papierkorb.
cu
Chris
AW: Makro: Transponieren von Daten, Thumbnails, ...
28.04.2017 08:31:12
Daten,
Hallo,
ja, das ist vielleicht ein bisschen zu viel gewesen...
Ich hab´ mal die Formatierungen versucht mit dem Makro-Recorder zu machen. Raus kam Folgendes (s.u.).
Was ich jedoch nicht weiß, ist: Wie kann ich bestimmen, dass nur die eingefügten Zellen die Formatierung erhalten?
Was ich auch nicht hinbekomme ist das Bild zentriert einzufügen in A2 ff.
Und dann klappt natürlich das nicht zusammenhängende Transponieren auch nicht...
Kann vielleicht nochmal jemand helfen?
Sub NichtVielAhnungWasIchDaMach()
Sheets.Add After:=ActiveSheet 'erstellt neues Arbeitsblatt
Columns("B:F").Select 'hier sollen eigentlich nur ab B die Spalten mit Inhalt ausgewählt  _
werden. Also ab B so viele Spalten wie Zeilen transponiert werden.
Selection.ColumnWidth = 50 'Spaltenbreite aber nur der Spalten mit Inhalt
Columns("A:A").EntireColumn.AutoFit 'Spaltenbreite A: automatisch an Textlänge angepasst
Rows("1:1").RowHeight = 130 'Zeilenhöhe Zeile 1
'Format der Zellen ab B2: Linksbündig, oben, Zeilenumbruch, automatische Zellenhöhe
With Selection 'stattdessen soll die nachfolgende Formatierung nur für eingefügte Zellen  _
gelten
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlBottom
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlTop
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
ActiveWindow.DisplayGridlines = False
End Sub

Danke und Grüße
Anzeige
AW: Makro: Transponieren von Daten, Thumbnails, ...
29.04.2017 11:36:41
Daten,
Hi Marcel
Transponiere erst alle Daten. Dann die Tabelle formatieren, dann die Bilder transponieren und zuletzt alle überflüssigen Spalten löschen.
Set WS2 = Sheets.Add
Bilder zentrieren würde ich ganz zum Schluss angehen. Hier ein Ansatz:
https://www.herber.de/mailing/Grafik_importieren_und_in_Zelle_zentrieren.htm
cu
Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige