View Single Post
  #5   Report Post  
Ron Coderre
 
Posts: n/a
Default

I think I came up with a fairly easy and slightly automated solution to this:

1)Create a new sheet in the workbook

2)In cells A1:A26, enter the letters A through Z.

3)Name the A1:A26 range "AlphaList".

4)Name cell B1 "LetterOpt".

5)Name cell B2 "LetterNew".

6)Name cell B3 "TargetCell"

7)Put this formula in cell B2: =INDEX(AlphaList,LetterOpt,1)

8)Put this formula in cell B3:
="A"&MIN(IF(Sheet1!$A$10:$A$500=NewLetter&"*",999 999,ROW(Sheet1!$A$10:$A$20)))
Note: Hold down [Ctrl]+[Shift] when you [Enter] to commit that array formula.

9)Next, on the data sheet:
-place a combo box control from the Forms toolbar up in Cell A.
-Name the control cboLetter.
-Set the Input Range to AlphaList.
-Set the Cell Link to LetterOpt.

10)Right click on the control and select Assign Macro and select a New macro.

11) IN the cboLetter_Change sub put this code:
On Error Resume Next
Sheet1.Range([TargetCell]).Select
If Err 0 Then
MsgBox "No Match"
End If

Note: replace the Sheet1 ref anywhere above with whatever your data sheet
name is.

I think that should do it.

Does that help?

Regards,
Ron