Ich möchte in der Lage sein, ein Diagramm zu erstellen, mit dem oberen linken von es auf meiner Cursor-Position. Ist das möglich? Kann die (X, Y) meiner Maus in ein Bereichsformat umgewandelt werden?Wie bekomme ich die (X, Y) Koordinate meines Cursors auf einem Arbeitsblatt?
Antwort
Nicht sicher über die Maus x y, aber Sie könnten den Bereich bei der Arbeitsblattauswahl ändern. Setzen Sie das Diagramm an diesem Ort.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Chart.Left = Target.column
Chant.Top = Target.row
End Sub
Hm, es ist nicht genau in AFAIK gebaut, aber ich fand this page, die einen Vorschlag gibt, die für mich gearbeitet:
In einem Modul, setzen diese an der Spitze:
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function ScreenToClient Lib "user32" (ByVal hWnd As Long, _
lpPoint As POINTAPI) As Long
Private Type POINTAPI
X As Long
Y As Long
End Type
Dann wird für die Subroutinen der mouseX und mouseY, setzen Sie diese irgendwo unten zu bekommen:
Function MouseX(Optional ByVal hWnd As Long) As Long
' Get mouse X coordinates in pixels
'
' If a window handle is passed, the result is relative to the client area
' of that window, otherwise the result is relative to the screen
Dim lpPoint As POINTAPI
Application.Volatile(false)
GetCursorPos lpPoint
If hWnd Then ScreenToClient hWnd, lpPoint
MouseX = lpPoint.X
End Function
und
Dann, in Excel, wenn Sie einfach in eine Zelle eingeben =mouseX()
es gibt die mouseX-Position zurück, wenn Sie ENTER
treffen. Gleiches mit =mouseY()
.
es aus Probieren, ich tat:
Sub chart_Test()
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlLine
ActiveSheet.Shapes("Chart 1").Top = MouseY()
ActiveSheet.Shapes("Chart 1").Left = MouseX()
End Sub
und bekam es zu arbeiten.
edit: Hinweis, ich bin nicht so gut mit Diagrammen als andere Dinge in VBA, so dass Sie den .Shapes("Chart 1").
Teil zu dem Diagramm Namen/Nummer, die Sie arbeiten, bearbeiten müssen, wie Sie Diagramme erstellen. Oder iteriere sie durch.
- 1. Wie bekomme ich die untere y-Koordinate
- 2. Regex X/Y-Koordinate
- 3. Wie berechnet man die (x- oder y-) Koordinate eines Punktes auf einem Kreisumfang?
- 4. Finden Sie die nächste X, Y-Koordinate mit R
- 5. Wie kann ich die Pixelposition meines Cursors überprüfen?
- 6. Senden (X, Y) Koordinate durch XBee mit Arduino
- 7. Wie bekomme ich die CropperJS-Koordinate für Cropped Image?
- 8. wxPython plot Y-Achse bei angegebenen x-Koordinate
- 9. Wie bekomme ich eine Komponente einer Tikz/PGF-Koordinate?
- 10. Wie kann ich eine zufällige X- und Y-Koordinate innerhalb eines Kreisradius erhalten?
- 11. Wie bekomme ich die X, Y-Position eines TWinControl (relativ zum Bildschirm)
- 12. Wie bekomme ich x, y Koordinaten mit Python?
- 13. Wie mache ich eine unendliche Schleife mit "x <= y && x > = y && x! = Y"?
- 14. Wie bekomme ich die X & Y auf PinchOpen und PinClose-Events in JGest Jquery Bibliothek?
- 15. Hash eine ID zu einem Random x, y-Koordinate innerhalb eines Grenzquadrats
- 16. Falsche Y-Koordinate von TextView auf Bitmap mit Canvas.drawText
- 17. Gegeben eine x, y-Koordinate, muss ich alle HTML-Elemente darunter finden
- 18. Wie bekomme ich den Cursor vom Namen des Cursors?
- 19. Wie bekomme ich die ersten X-Elemente?
- 20. Mit OpenCV, wie könnte ich ein Bild basierend auf den X- und Y-Koordinaten zuschneiden und erlauben, dass diese X- und Y-Koordinate der Mittelpunkt des Ausschnitts ist?
- 21. Ruby Seltsamkeit: x == y && [x, y] .uniq == [x, y]
- 22. Wie bekomme ich den Punkt/die Koordinate, die der Benutzer auf eine Android-Ansicht geklickt hat?
- 23. Kann ich die Blockierung auf einzelne Schleifen innerhalb meines SQL-Cursors beschränken
- 24. Wie bekomme ich x, y Koordinaten einer Bildansicht auf verschiedenen Geräten und Dichten in Android
- 25. Stellen Sie die x- und y-Koordinate in der Grafik dynamisch ein
- 26. Wie gebe ich die y-Koordinate eines Pfades in d3.js zurück?
- 27. Cursor-Position in einem Textfeld (Zeichenindex, nicht x/y-Koordinaten)
- 28. Wie bekomme ich die andere Anwendungsliste meines Facebook-Anwendungsbenutzers?
- 29. Wie überschreibe ich X Bytes auf Offset Y mit fwrite()?
- 30. Ich versuche, Ashapefile von X, Y-Koordinaten aus einem TXT zu erstellen. Datei, aber ich bekomme den folgenden Fehler
Obwohl es nicht das ist, was OP verlangt, denke ich, dass dies Ihre bessere Wette wäre. Die mouseX/mouseY funktioniert möglicherweise, aber wenn Sie es tun können, würde ich die Position des Diagramms anhand der Position einer Zelle definieren, anstatt mit mouseX/mouseY, da Ihre Maus genau dort sein muss, wo Sie sie haben möchten Code, den ich sowieso gepostet habe). Nettes Denken @matthewD – BruceWayne
Denken Sie daran, dass die Verwendung von Windows-Bibliotheksfunktionen Ihren Code nutzlos macht, wenn er auf Excel für Mac ausgeführt werden muss. Eine reine VBA-Lösung wird wahrscheinlich auf beiden Plattformen unterstützt. – Lumigraphics