Hallo,
unter VB6 ist es ja kein Problem die hwnd zu ermitteln. Allerdings geht dies in VBA nicht so. Ich hatte mal gelesen, dass man die hwnd aber ermitteln könnte.
Weiß jemand wie das geht?
ich habe google schon gefragt, aber die Seite nicht wieder gefunden.
mfg
             
            
              
              
              
            
            
           
          
            
            
              Hallo,
das Handle der Form kannst Du z.B. mit GetActiveWindow holen wenn die Form im Vordergrund und aktv ist.
Private Declare Function GetActiveWindow Lib "user32" () As Long
Oder auch über den Fenstertitel …
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Die Steuerelemente haben in den VBA-Versionen, die ich kenne, anders als in VB6 kein Handle.
Gruß Rainer
             
            
              
              
              
            
            
           
          
            
            
              OT Wo ist der Scrollbalken geblieben?
Private Declare Function FindWindow Lib „user32“ Alias
„FindWindowA“ (ByVal lpClassName As String, ByVal lpWindowName
As String) As Long
Hallo Rainer und Mitleser,
das Obige wird bei mir nur so kurz angezeigt:
Private Declare Function FindWindow Lib „user32“ Alias „FindWindowA“ (ByVal lpClass
Markiert man die Zeile bzw. klicke ich auf Antworten stehts komplett.
Es fehlt auf einmal dieser waagrechte Scrollbalken für lange Textzeilen.
Bei Euch auch?
FF 3.0.11 auf WinXP
Gruß
Reinhard
             
            
              
              
              
            
            
           
          
            
            
              Hallo Reinhard,
Private Declare Function FindWindow Lib „user32“ Alias
„FindWindowA“ (ByVal lpClassName As String, ByVal lpWindowName
As String) As Long
Es fehlt auf einmal dieser waagrechte Scrollbalken für lange
Textzeilen.
Bei Euch auch?
ja, das war ich, sorry. 
Ich habe erst global behauptet, in VBA hätten Steuerelemente keine Handles, dann ist mir aufgafallen, daß ich das ja gar nicht genau weiß. Die Neuesten kenne ich nicht, das kann sich geändert haben.
Also habe ich meinen Text kopiert, Beitrag gelöscht und neu eingestellt.
Beim Kopieren habe ich da einen Fehler gemacht …
Gruß Rainer
             
            
              
              
              
            
            
           
          
            
            
              
unter VB6 ist es ja kein Problem die hwnd zu ermitteln.
Allerdings geht dies in VBA nicht so. Ich hatte mal gelesen,
dass man die hwnd aber ermitteln könnte.
Hallo blietzau,
von was genau willst du denn die hwnd wissen mit Vba?
Gruß
Reinhard
             
            
              
              
              
            
            
           
          
            
            
              Hallo,
mein Ziel ist es, bei einer Listbox es hinzubekommen auch mit Rechtsklich einen Eintrag auszuwählen. Eine Eigenschaft dafür habe ich nicht gefunden. In VB6 habe ich es aber über SendMessage gelöst. Dafür brauche ich aber die hwnd der Listbox.
Von Fenstern weiß ich bereits wie man den Handler bekommt. Aber scheibar ist mehr unter VBA auch nicht möglich.
mfg
             
            
              
              
              
            
            
           
          
            
            
              Hi,
danke für die Antwort.
Ich bräuchte leider das Handel von einer Listbox. Aber wenn das gar keins hat bekomme ich das wohl auch nicht. Schade.
mfg
             
            
              
              
              
            
            
           
          
            
            
              Hande etwas gefunden
Hier eine Möglichkeit:
http://www.vbarchiv.net/tipps/details.php?id=667
Jetzt ein anderes Problem: VBA hat gesagt, dass er Screen.TwipsPerPixelY nicht kennt… hatte den Code von VB6 kopiert…
             
            
              
              
              
            
            
           
          
            
            
              deutsch sollte gelernt sein…