Microsoft Excel

Herbers Excel/VBA-Archiv

Bildschimkoordinaten einer Zelle ermittlen

    Betrifft: Bildschimkoordinaten einer Zelle ermittlen von: Mathl
    Geschrieben am: 02.09.2003 13:30:13

    Hallo!

    Mein Problem ist folgendes: Ich brauche für einen externen Dialog, den ich als Eingabeeditor genau über eine Zelle legen möchte, die Bildschirmkoordinaten und Größe dieser Zelle.

    Ich hab bereits versucht mit hilfe der win32api Funktionen (Findwindow) den Fenster-handler(hWnd)der Arbeitsmappe ausfindig zu machen und somit mit der win32api Funktion GetWindowRect() die Koordinaten rauszukriegen jedoch besitzt die Arbeitsmappe anscheinend keinen Handler.

    Wenn ich mich nicht irre ist Excel doch als MDI aufgebaut ?!? Also müsste doch eine Arbeitsmappe als eigenständiges Fenster auch einen zugreifbaren Handler besitzen, oder ?

    Danke !!!

      


    Betrifft: GetActiveWindow() von: sergiesam
    Geschrieben am: 02.09.2003 13:33:02

    Hi,

    hast du es schon mit getActiveWindow-Call versucht?

    aus der API-Hilfe:
    Declare Function GetActiveWindow Lib "user32.dll" () As Long

    Platforms: Win 32s, Win 95/98, Win NT

    GetActiveWindow returns a handle to your program's currently active window. This only works with windows created by your application -- in other words, it won't find the active window of other programs. If your program is in the background, the function will get the window that would be active if the program were active. If an error occurs, or if there is no active window to your program, the function instead returns 0.

    Example:


    ' Use FlashWindow to flash the title bar of the program's
    ' currently active window once.
    Dim hactive As Long ' handle to the active window

    hactive = GetActiveWindow() ' get the handle of the program's active window

    Gruß,
    Sam


      


    Betrifft: AW: GetActiveWindow() von: Mathl
    Geschrieben am: 02.09.2003 14:01:24

    Danke für deine schnelle Antwort !

    Leider funktioniert auch das nicht.
    GetActiveWindow() lifert mir "nur" den Handler des gesamten Excelfensters.


      


    Betrifft: AW: Bildschimkoordinaten einer Zelle ermittlen von: GerdW
    Geschrieben am: 02.09.2003 13:33:34

    Zellen haben eine Kft und Top- Eigenschaft, die sich aber immer
    auf die Tabelle bezieht. A1 hat also Left = 0 unf Top = 0

    Gerd