Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zelleninhalt mit VBA zentrierten

Zelleninhalt mit VBA zentrierten
16.03.2017 07:46:09
Rico
Hallo zusammen
Ich bin schon sehr oft bei Euch im Forum gewesen und habe Super viele Tipps gefunden und umgesetzt. Vielen Dank dafür :-)
Ich stehe dennoch vor einem Problem was ich nicht gelöst bekomme. Ich habe ein Makro was mir QR Codes generiert. Mein Makro platziert den Code an eine bestimmte stelle und zwar 15 Schritte von links und 1 Schritt nach oben. Ich Arbeite mit verschiedenen Zellenbreiten. Ich möchte gern das mein QR Code statt 15 Schritte von links immer mittig in der Zelle platziert wird. Die Positionshöhe soll gleich bleiben. Den Teil des Makros wo der Code platziert wird findet Ihr unten. Habt Ihr einen Tipp für mich?
In der Zeile "Selection.ShapeRange.IncrementLeft 15" soll der Code mittig platziert werden.
---
Sheets("data").Shapes(i + 1).Copy
ws.Select
Trouve.Offset(1, 0).PasteSpecial
Selection.ShapeRange.ScaleWidth 0.9, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 0.9, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.IncrementLeft 15
Selection.ShapeRange.IncrementTop -1
Range("A1").Select
----

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Beispielmappe, bitte! (owT)
16.03.2017 08:09:46
EtoPHG

AW: Beispielmappe, bitte! (owT)
16.03.2017 09:54:56
Rico
Ich habe die Datei hochgeladen. Ziel ist es in den Registerkarten den Code Zentrisch unter die fett gedruckten Daten zu bringen. Danke schon mal im voraus :-)
https://www.herber.de/bbs/user/112220.xlsm
Bei Lösung, bitte antworten und schliessen!
22.03.2017 08:51:32
EtoPHG
Hallo Rico,
Muss man annehmen, dass der Vorschlag von Daniel zur Lösung geführt hat?
Warum antwortest du nicht mehr?
So:
        Trouve.Offset(1, 0).PasteSpecial
With Selection.ShapeRange
.ScaleWidth 0.9, msoFalse, msoScaleFromTopLeft
.ScaleHeight 0.9, msoFalse, msoScaleFromTopLeft
.Top = Trouve.Top + Trouve.Height
.Left = Trouve.Left + ((Trouve.MergeArea.Width - .Width) / 2)
End With
Gruess Hansueli
Anzeige
AW: Zelleninhalt mit VBA zentrierten
16.03.2017 09:00:52
Daniel
Hi
im Prizip so
deinShape.Left = Zelle.Left + (Zelle.Width - deinShape.Width)/2
.Left ist die Position der Linken Ecke des Objekts
.Width ist die Breite
für deinShape und Zelle bitte die entsprechendne Objekte (Selection, Trouve) einsetzen.
Gruß Daniel

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige