Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   VB in Excel: Die Y-Pixel Position einer Zelle (https://www.delphipraxis.net/139019-vbulletin-excel-die-y-pixel-position-einer-zelle.html)

xZise 21. Aug 2009 22:59


VB in Excel: Die Y-Pixel Position einer Zelle
 
Hallo ihr,

ich weiß VB ist Sünde :D aber mein Bruder hat im Urlaub (ich war nicht dabei), damit angefangen ein kleines "Programm" für Excel zu schreiben. Jetzt ist er da und wir verbessern das etwas. Und jetzt ist das Problem, dass ich die Y-Position einer Zelle haben und zwar relativ zum Bildschirm? Ich habe zwar die Y-Position relativ zur Tabelle, aber UserForms kann ich nicht relativ dazu positionieren.

Hat da jemand eine Idee?

MfG
xZise

sx2008 22. Aug 2009 00:49

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Die Sünde ist weniger VB als eher das unlogische Ansinnen die Y-Position einer Excelzelle wissen zu wollen ;-)
Ich meine die Zelle zeichnet sich selber und enthält nur Text.
Wozu braucht ein Programm dann die Position?

xZise 22. Aug 2009 01:22

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Damit es denn Zelleninhalt nicht überdeckt.

MfG
xZise

jfheins 22. Aug 2009 07:17

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Du benutzt aber schon die "Formular-Steuerelemente", oder? wenn ich mich nicht irre, war die Y-Koordinate immer zum Tabellenanfang - alles andere wäre ja witzlos...

Kannst du vll. eine arbeitsmappe anhängen, die das Problem verdeutlicht?

xZise 22. Aug 2009 13:12

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Liste der Anhänge anzeigen (Anzahl: 1)
In wie fern?

Also ich habe eine UserForm erstellt und dann will ich, bevor sich das Fenster öffnet, dass er entweder bei der Reihe 16 anfängt oder ansonsten in der Reihe 6.

Zur Zeit sieht das dann so aus (also exemplarisch für der erste Fall):
Code:
Top = Range("A16").Top
Nun das funktioniert auch soweit, allerdings fängt er bei dem Pixel 0 auf dem Bildschirm zu zählen.

Das gewünschte Beispiel habe ich angehangen!

MfG
xZise

EWeiss 22. Aug 2009 13:42

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Grundsätzlich hat ein pixel in VB "15" einheiten.
Vielleicht hilft dir das weiter.

also 1 Pixel = 15 , 2 Pixel = 30 usw...

gruss

jfheins 22. Aug 2009 14:10

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Also ich habe die Funktion ActiveWindow.PointsToScreenPixelsY() gefunden, aber (zumindest bei mir) ist das auch nicht das glebe vom Ei ;)

xZise 22. Aug 2009 17:19

Re: VB in Excel: Die Y-Pixel Position einer Zelle
 
Zitat:

Zitat von EWeiss
Grundsätzlich hat ein pixel in VB "15" einheiten.
Vielleicht hilft dir das weiter.

also 1 Pixel = 15 , 2 Pixel = 30 usw...

gruss

Nein, und zwar wenn man bei MSO 2k7 denn Offset (zumindest bei mir) auf 145 Pixel stellt, dann passt das ganz gut. Jetzt kann es aber verschiedene Excelversionen geben, und manchmal ist dass auch im "Vollbild". Das heißt der "Offset" ist immer verschieden.
Und bei VB ist 1px = 1 LE ;) Also .Top = 100 heißt, zum oberen Bildschirmrand 100 px entfernt. Ich möchte aber 100px vom oberen Tabellenrand!

MfG
xZise


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz