Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: relative Cursor-Position in Punkt

relative Cursor-Position in Punkt
08.04.2014 11:40:31
David
Hallo zusammen,
ich möchte im aktiven Dokument an der Position der aktuell ausgewählten Zelle ein Rechteck einfügen.
Laut Hilfe muss ich als Position die Ecke definieren in Relation zur linken oberen Ecke des Dokuments in Punkt. Wie kann ich diese Position der aktuell ausgewählten Zelle auslesen?
Mein erster Ansatz war über die Position auf dem Bildschirm (über System-Metrics), aber das hat nicht funktioniert.
Sub Umrandung()
Dim Pos_B, Pos_H
Pos_B = GetSystemMetrics(SM_CXSCREEN) / 192 * 144 - 100
Pos_H = GetSystemMetrics(SM_CYSCREEN) / 192 * 144 - 100
'MsgBox Pos_B '(nur zum Testen)
'MsgBox Pos_H '(nur zum Testen)
ActiveSheet.Shapes.AddShape(msoShapeRectangle, Pos_B, Pos_H, 100, 30).Select
Selection.ShapeRange.Fill.Visible = msoFalse
With Selection.ShapeRange.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 0, 0)
.Transparency = 0
.Weight = 4.5
End With
End Sub
Im Prinzip hat das Makro funktioniert, nur kam das Rechteck an der falschen Stelle.
Der Cursor befand sich in Zelle 70.000, er hat es aber nun ganz oben platziert, sozusagen Abstand ca. 1000 vom oberen Dokumentenrand.
Beim Test mit dem Recorder hat er übrigens die Position wie folgt aufgezeichnet:
....AddShape(msoShapeRectangle, 351.75, 1055187#, 90.75, 27.75)....
Den zweiten Wert weiß ich nicht zu interpretieren.
Kann mir hier bitte jemand helfen?
Danke vorab und Gruß
David

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: relative Cursor-Position in Punkt
08.04.2014 11:45:32
Hajo_Zi
Hallo David,
mal einen Code für einen Kreis.
Option Explicit
Sub Kreis_um_Auswahl()
'   von xxx Herber.de (Udo RiHü)
'   Kreis um Auswahl
Dim X As Long
Dim w As Long
Dim y As Long
Dim rngSel As Range
Set rngSel = Selection
X = Selection.Left
w = Selection.Width
y = Selection.Top + (Selection.Height - w) / 2
ActiveSheet.Shapes.AddShape(msoShapeOval, X, y, w, w).Select
With Selection.ShapeRange
.Fill.Visible = msoFalse
.Line.Weight = 1.5
.Line.DashStyle = msoLineSolid
.Line.Style = msoLineSingle
.Line.Visible = msoTrue
End With
Application.Goto reference:=rngSel, Scroll:=True
End Sub
Sub Löschen()
Dim Ini As Integer
For Ini = ActiveSheet.Shapes.Count To 1 Step -1
If Left(ActiveSheet.Shapes(Ini).Name, 4) = "Oval" Then
ActiveSheet.Shapes(Ini).Delete
End If
Next
End Sub

Anzeige
AW: relative Cursor-Position in Punkt
08.04.2014 11:49:52
David
Hallo Hajo,
das ging schnell!
Damit kann ich arbeiten, die restlichen Anpassungen kriege ich hin.
Vielen Dank.
David
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige