View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 27,285
Default Paste text from a ComboBox into a cell

Kevin, this code will show you the names of the listboxes from the forms
menu

Sub showNames()
Dim lbox As ListBox
For Each lbox In ActiveSheet.ListBoxes
Set rng = lbox.TopLeftCell
MsgBox "Listbox over cell " & rng.Address & " is named " & lbox.Name
Next
End Sub

However, I have designed this so you don't need to know the name. Right
click on the list box and select assign macro. Assign this macro.

Sub Lbox_click()
Dim lbox As ListBox
sName = Application.Caller
Set lbox = ActiveSheet.ListBoxes(sName)
ActiveCell.Value = Trim(ActiveCell.Value & _
" " & lbox.List(lbox.ListIndex))
lbox.ListIndex = 0
End Sub


--
Regards,
Tom Ogilvy


Kevin wrote in message
...
Some people here in the forum where trying to help me with a problem I
have, but I was incapable of fallowing their instruction, can anyone help
with step by step instructions, please, I'm sure I'm missing something

very
simple!
I made a Combo Box from the Forms Menu and input a range of cells
(Notes!$A$2:$A$21) that contain a list of names. What I would like to do
is,to select a any cell and then go to the Combo Box select a Name and

then
it would just copy that name to the previously selected cell. just a cut

and
paste of the text, but I what the option of been able to just add to the
pasted text.
I think part of the problem is that is no a Control type list box but a
plain Forms(non-VBA) list and the help is for a Control box?

James S. was nice enough to help me with this code so I can add to my

excel
sheet but I could not find the name of the Listbox
Here is the original email that James S. posted:

Hi Kevin,


You can try the code below. You will need to do the
following:

1) Add the code below to workbook.
2) Right-click your list box and select "Assign Macro",
then select the Macro named "ReturnListBoxSelection".
3) I used the worksheet name "Notes", so if your
worksheet name is different you will need to change it.

Sub ReturnListBoxSelection()
Dim lbcf As ControlFormat

Set lbcf = ThisWorkbook.Worksheets("Notes").Shapes
("List Box 2").ControlFormat

ActiveCell.Value = lbcf.List(lbcf.ListIndex)
End Sub

also forgot to mention that you will need to change the
name of the ListBox "List Box 2" to the name of your
ListBox.

Regards,
James S

Thank you in advance for all your help!
Kevin Brenner