ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   How to get handle of Combobox in worksheet (https://www.excelbanter.com/excel-programming/376971-how-get-handle-combobox-worksheet.html)

[email protected]

How to get handle of Combobox in worksheet
 
Can anyone please help me, I'm trying to adjust the dropdown list of
the combobox
but I need the exact string size. I already searched the net and found
that it is computed in pixels
and used an API SendMessage

For i = 0 To cCmb.ListCount - 1
lResult = SendMessage(hWnd, CB_GETLBTEXTLEN, _
i, ByVal 0)
'MsgBox lResult
If (lResult lItemMaxLen) Then
sItemText = cCmb.List(i)
lItemMaxLen = lResult
End If
'MsgBox cCmb.List(i)
'MsgBox lItemMaxLen
Next i

The problem is that I don't know how can I obtain the handle for the
combobox.

I also found a code saying how to manipulate the "Name box" and tried
to change other
parts but it didnt work.

Please help me...

Thanks a lot in advance...


NickHK

How to get handle of Combobox in worksheet
 
If you looking for the handle of a combobox that you have placed on a
worksheet, AFAIK you are out of luck, as its handle is not exposed. Hence no
way to use API calls.
The "Name Box" code would be (I guess) to change the combox normally to the
left of the formula bar. This works, because its handle is exposed, so you
can manipulate it.

NickHK

wrote in message
oups.com...
Can anyone please help me, I'm trying to adjust the dropdown list of
the combobox
but I need the exact string size. I already searched the net and found
that it is computed in pixels
and used an API SendMessage

For i = 0 To cCmb.ListCount - 1
lResult = SendMessage(hWnd, CB_GETLBTEXTLEN, _
i, ByVal 0)
'MsgBox lResult
If (lResult lItemMaxLen) Then
sItemText = cCmb.List(i)
lItemMaxLen = lResult
End If
'MsgBox cCmb.List(i)
'MsgBox lItemMaxLen
Next i

The problem is that I don't know how can I obtain the handle for the
combobox.

I also found a code saying how to manipulate the "Name box" and tried
to change other
parts but it didnt work.

Please help me...

Thanks a lot in advance...




dantz

How to get handle of Combobox in worksheet
 
Thanks a lot NickHK! Atleast I need to end up my burden.
by the way, what does AFAIK means?

NickHK wrote:
If you looking for the handle of a combobox that you have placed on a
worksheet, AFAIK you are out of luck, as its handle is not exposed. Hence no
way to use API calls.
The "Name Box" code would be (I guess) to change the combox normally to the
left of the formula bar. This works, because its handle is exposed, so you
can manipulate it.

NickHK

wrote in message
oups.com...
Can anyone please help me, I'm trying to adjust the dropdown list of
the combobox
but I need the exact string size. I already searched the net and found
that it is computed in pixels
and used an API SendMessage

For i = 0 To cCmb.ListCount - 1
lResult = SendMessage(hWnd, CB_GETLBTEXTLEN, _
i, ByVal 0)
'MsgBox lResult
If (lResult lItemMaxLen) Then
sItemText = cCmb.List(i)
lItemMaxLen = lResult
End If
'MsgBox cCmb.List(i)
'MsgBox lItemMaxLen
Next i

The problem is that I don't know how can I obtain the handle for the
combobox.

I also found a code saying how to manipulate the "Name box" and tried
to change other
parts but it didnt work.

Please help me...

Thanks a lot in advance...



NickHK

How to get handle of Combobox in worksheet
 
You could quite easier make a custom control (in VB6 maybe) that exposed
this as a property. Otherwise, no joy.

And
http://slang.acronymfinder.com/af-qu...&acronym=AFAIK

NickHK

"dantz" wrote in message
oups.com...
Thanks a lot NickHK! Atleast I need to end up my burden.
by the way, what does AFAIK means?

NickHK wrote:
If you looking for the handle of a combobox that you have placed on a
worksheet, AFAIK you are out of luck, as its handle is not exposed.

Hence no
way to use API calls.
The "Name Box" code would be (I guess) to change the combox normally to

the
left of the formula bar. This works, because its handle is exposed, so

you
can manipulate it.

NickHK

wrote in message
oups.com...
Can anyone please help me, I'm trying to adjust the dropdown list of
the combobox
but I need the exact string size. I already searched the net and found
that it is computed in pixels
and used an API SendMessage

For i = 0 To cCmb.ListCount - 1
lResult = SendMessage(hWnd, CB_GETLBTEXTLEN, _
i, ByVal 0)
'MsgBox lResult
If (lResult lItemMaxLen) Then
sItemText = cCmb.List(i)
lItemMaxLen = lResult
End If
'MsgBox cCmb.List(i)
'MsgBox lItemMaxLen
Next i

The problem is that I don't know how can I obtain the handle for the
combobox.

I also found a code saying how to manipulate the "Name box" and tried
to change other
parts but it didnt work.

Please help me...

Thanks a lot in advance...






All times are GMT +1. The time now is 04:16 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com