Fill ComboBox With Unique Entries Based On OptionButton
Feb 5, 2008
I have a user form with a group of several option buttons. When an optionbutton is selected, programatically, I want a worksheet's named column to be parsed through to find unique entries and then have those entries passed to the form's combobox. I've spent the last hour searching for an answer but to no success
i have a list of surnames in column A in a spreadsheet i want to use this for the source of the combo box also i want this list to be unique and if the surname is not present i want to be able to put the name in the combo box and add it to the sheet
I need to create a drop-down (or a combo list) list based on a column in a separate worksheet (in the same workbook). The values in the column have many duplications, and I simply want the combo box to return a unique list.
After trying this using various options like drop-down boxes, combo boxes etc it does not seem to work. A drop-down box will return a complete list (including all of the duplicates). In addition the drop-down was linked to a cell and the value returned to the cell was a number based on the position in the list when what I actually wanted was the text. For example - my list in Worksheet 2:
PETS Cat Dog Dog Cat Horse Rabbit...
In Worksheet 1 if I choose 'Dog' from my Combo box (or drop-down) along with showing all of the duplicates it returns '3', instead of what I want 'Dog' and no duplicates.
In that file, you can see there is a list of somewhat similar data across 5 columns. Some of the entries are duplicates, some are different by only one character. What I want to be able to do is generate a list of all the unique rows of data, taking into account the data from ALL 5 columns. The list can be on another sheet or simply just further down on the same sheet, that doesn't matter too much.
I could do it if it were just one column of data, but struggling trying to do it with several columns.
I want to dynamically list items in combobox placed in excel sheet. I have a list of 10 values in a column in excel sheet. I have placed two comboboxes in the same sheet. Now depending on the first combobox selected value i want to list either all or only few values from the available 10 values.
Basically from Sheet OEE V20:V500 I have a list of problems being selected from a drop down list validation (which users can add to the list for new problems). Along side these "problems" in Sheet OEE U20:U500 I have a number which represents the number of minutes the problem caused them. Some cells in both these columns will however be empty if there was no problem occour. But wherever there is a problem selected, there will be a number alongside it, there will never be one without the other.
What I want to do is look down Sheet OEE V20:V500 and get two lots of information -
The unique problem names (no duplicates of the same problem) in Sheet Reports A1:A100 for example (I may change the range of this). The number of occurances of each of the problems it lists in Sheets Reports B1:B100. Count up the total number of minutes of each problem. So for every occurance of "Paper problem" there will be a unique number in Column U in the same row as the problem and place this in Sheet Reports C1:C100.
I would ideally like to have this as VB code as I am going to tie it into a command button which formats and prints my report page.
I have found various bits of code dotted about the forums for counting unique cell entries but they always seem to produce a list with lots of blank rows (I would like a list one after another without blank rows all over the place) and I'm really struggling to figure out how to make it count up the numbers in the adjacent cell of each entry it sees.
Just in case the list of problems for the cell validation in Sheet OEE V20:V500 is found in Sheet OEE AQ16 downwards.
There is a small command button in cell A11 that brings up the userform. I have a multi-tab user form the userform contains a number of combo boxes with an associated textbox right of each. I would like to populate the textbox based on the value selected in the combo box. For example when Ice Foot is selected (Type of Fast Ice) populate the textbox (txtFastIceEncoded) with the value of 6. These values are located on 'decode' sheet. I then want to take the four values and place them in the textbox 'txt_Tw_Tw_Et_DE_ai_group'. Ultimately I want the values to end up back in the worksheet 'Synoptic Ice Obs'. Perhaps there is a better way to do this than I am trying. I have poured through countless threads in this forum and have tried a number of these. I however always seems to run into some problem that I do not understand fully. I have included a copy of the workbook.
Ihave 2 functions which are called in my main program which should return a value due to what the user selects on a userform using option buttons and check boxes.
Function getnum() As Integer If userform1.OptionButton1.Value = True Then getnum = 1 End If If userform1.OptionButton1.Value = True Then getnum = 3 End If If userform1.OptionButton1.Value = True Then getnum = 5 End If End Function
Function getlevel() As Double If userform1.CheckBox1.Value = True Then getlevel = 1.2 End If.......................................
I have a worksheet with Coulmn A and B , wherein , Column A has a list of values that can be duplicated. Based on the values in Column A, I want to fill corresponding cells in Column B. see the attached.
I have in "column A" an accountnumber and in "column D" a lastname. The lastname can appear more than once and the accountnumber also. Though I want combobox1 on userform1 to contain the lastnames. It's possible to contain a double lastname as long as the accountnumber isn't the same.
For instance: accountnumber: Lastname: 1234 Johnson 7890 Johnson
here Johnson will be insert twice into the combobox.
accountnumber: Lastname: 1234 Johnson 1234 Johnson
I'm trying to take a list of names from a worksheet and create in a userform a combobox that lists the names.
Private Sub Combo_Box_Leadoff_Click() Dim counter As Integer Combo_Box_Leadoff.Clear For counter = 3 To 16 Combo_Box_Leadoff.AddItem Worksheets(5).Cells(counter, 2).Value Next counter
In the properties window, I set the value equal to the first name in the list. The above code yields a combobox that is blank except for the value set in the properties window. When I do not set an initial value, I get a completely blank combobox. I'm pretty new to VBA, and I've manged to figure out all of the macros I need so far, but setting up the user form has proved surprisingly difficult.
I was wondering if there might be a better way to write this macro. What it does is clears unique items from a Range( leaves duplicates ) I've looked all over the net I can find all kinds of function and subs to remove duplicates but haven't been able to find anything that just removes single entries. I"ll bet there's a more elegant way to write this maybe using a Collection or a Dictionary.
Sub Dummy() Dim MP1_Rnge As Range Set MP1_Rnge = Range("A1:A100") For Each Cell In MP1_Rnge If Not IsEmpty(Cell) Then If Cell.Row = 1 Then..........
I have the below table of data, in Column A there is a list of entries and there may be duplicates in them, what I want to do in column B is be able to list all the unique entries in there and basically remove any duplicates.
I have a worksheet, where in C3:C100 (or even higher) i will have text strings. A lot of these will be repeated, and i want to pick out just one instance of each text string and display it in E3:E10 (or higher).
So, for example, if i had the following values in column C:One Two Two One One Three Seven Two Four Seven One Three
I would want the following values in column E:One Two Three Seven Four
I have this 2 columns, A(region) and B(location), and I need a macro to filter the unique entries in Columns A and return both the unique values in A and their corresponding values in B. I've attached a file on it with sheet 1 having the data to be worked on and sheet 2 being the output that I require.
I'm trying to write an Excel program to calculate golf handicaps. In column A, I have 20 unique dates. In column B, I have corresponding 20 scores. In column C, I'm trying to create a corresponding notational mark, "*", indicating the 10 lowest scores that are also the oldest. However, I'm running into problems as I may have duplicate scores with different dates, i.e. 3/22/06 will have a score of 85 and will be the 10th lowest score, but 4/1/06 also has a score of 85.
I am hoping this can be done with formulae. Starting at C7 and continuing down the C column there is a list of names which could potentially run from C7 to C5000. This list of names will contain duplicates. For each name there is a corresponding 'reason' in the F column which will contain the word 'Truancy' or 'Late'.
I need a formula that can count the number of UNIQUE names in the C column which correspond to the word 'Truancy' or 'Late' in the E column.
[Name].....................[Reason] C7 ...........................E7 John Potts.................Truancy 2 Matt Jones................Truancy 10 John Potts.................Truancy 4 Matt Jones ...............Late AM Pete Burns................Late PM Pete Burns ...............Late Both Steve Lopez..............Truancy 6
Count of unique names with the word Truancy in the corresponding E column = 3 [John Potts has 2 instances of the word truancy in column E but this is only counted once]
Count of unique name with the Word Late in the corresponding E column = 2 [Pete Burns has 2 instances of the word late in the E column but this is only counted once].
This is a paricular problem I'm having in the middle of lots of problems, hoping you can help.
I had created a macro to transfer information from a sheet into a seperate sheet, for storage.
I have sinced changed the data entry sheet to use comboboxes instead of normal text, as it was important to ensure the text is entered identically each time. Now, however, my macro transfers the numerical position on the list of data for the combobox instead of it's value
I am populating a ComboBox with entries from a Range. The entries have a different Interior.Color depending on whether the individual project represented by the entry is complete. If the entry is complete is has an Interior.Color of blue; if not, it is red. I want to populate the ComboBox with both, but if the Interior.Color is blue, I want to change the font.color displayed in the ComboBox to blue. Just the color of the completed (blue) entries. The other (red) entries can have a normal (black) font. Is there a way to do this?
Here is the code I have been working with, but nothing I have tried has worked. Maybe another strategy, or whatever.
LastRowTF = Sheets("Shipsets").Range("F65536").End(xlUp).Row Set myArray1 = Sheets("Shipsets").Range("F2:F" & LastRowTF) For mA1 = 1 To myArray1.Count If myArray1(mA1).Interior.Color = 255 Then
I have an worksheet with a UserForm. On this UserForm is a ComboBox with the RowSource set to a named range called lVender. This ComboBox is setup to post & sort new entries into lVender apon exiting the ComboBox.
If a mistake is made and it is not caught before exiting the ComboBox, then I need a way to remove the bad entry from the lVender list.
I have included a small sample to better show the problem.