The code below extracts unique distinct values from column A, except cell A1. Then the code adds the extracted unique distinct values to the combo box.
Sub FilterUniqueData() Dim Lrow As Long, test As New Collection Dim Value As Variant, temp() As Variant ReDim temp(0) On Error Resume Next With Worksheets("Sheet1")
The vba code below copies the selected value to cell C5 whenever the combobox is selected
Copy the code into a standard module.Assign this macro to the combobox
Sub SelectedValue() With Worksheets("Sheet1").Shapes("Drop Down 1").ControlFormat Worksheets("Sheet1").Range("C5") = .List(.Value) End With End Sub
Vba code belows instanly refresh the combobox when values are added/edited or removed from column A,
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("$A:$A")) Is Nothing Then Call FilterUniqueData End If End Sub
My problem is this:
Everything will be working fine if the all combobox and data can be found in 1 sheet, but how could i make some tweaks if the combo box is located in sheet 2 provided your data to be populated is in sheet 1, i tried everything but the combobox doesnt update,
how can I build a userform to display all values from a row? in order to select a row, i was thinking to use a combobox to display values from one column and based on that selection, display all values in that row? the reason i want to use a userform is because i would also like to be able to edit that data.
I have created a User form with Combobox's, which in turn look up cell references in another sheet. In order to make maintainence of the combobox's as easy as possible I'd like the look up as many cells as possible, therefore anyone can easily add additional text to go into the user forms. However I don't want the blank spaces to show until something has been added.
Populate Adv Filter Criteria from Inputbox with valid data
I've set up a macro to extract 3 different sets of data using Advanced Filter (same data range, different criteria & extract ranges)
There are multiple options (different individual dates) to satisfy the criteria (a date) for each of the 3 extracts and I want the user to select the criteria (a specific date) from the range of unique values in the data range upon which the Advanced Filter criteria is going to be applied. (A bit like the effect provided by Autofilter)
My initial attempt was to capture the criteria date from the user and populate a cell, and then have a vlookup function in another cell check if that crieteria value exists in the specified range. I then ran a loop in the VBA code until the value is valid (ie. exists in the range). However, to streamline this I was hoping to allow the user to see a list of the valid (available) dates when they respond to my Inputbox request for the criteria.
I want it to populate a combobox in a userform. Should it go in the code segment for the userform, in a module, or some other place? The following is code I originally found (by Leith Ross of this board) to find the last row in column "A", and load the combo box "ComboBox1"
I am trying to populate (via VBA) a textbox/combo box from one user form to another user form.
The first user form has a room number in a text box1. If certain conditions exists, a button is selected to bring up another user form (both forms are modeless).
I want to pass/populate some of the 1st user Form info into the other user form.
I have tried the on initialize textbox1.value = textbox other.value but no dice. I can populate a user form text box from a spreadsheet but from box to box in separate user forms has me a little stumped.
I need to populate the textBoxes from the selection from ComboBox I've created in a UserForm. I have attached the file that I was working on. I want to be able to keep selecting then populate the text box until I have finsihed.
I have a userform which inputs data based upon a chosen item from a combobox. Combobox3 pulls numerical items from Rows17 and below in columnA of active worksheet. The first problem I am having is that the combobox itself is cutting numerical numbers short. Items go out to the thousandths (ex. 1.001) but in cases where there is a "0" at the end of the decimal it abbreviates it (ex.1.01) is there anyway to fix this? The second issue is I would like to populate "Textbox4" with the columnC content of the item chosen. (Ex. User choses Item 1.001 (found in row118) then Textbox4 would = the value of C18) Below is the current code utilized for this userform.
I need to populate a combo box on a form with the column name (A,B,C...etc) and the first row data. I need the code to check all columns in-case of missing column data.
Its important to note the data will be dynamic. In my add in, a form opens on requests and asks the user which column he needs to action data on. this could be on any one of several non similar spreadsheets.
E.G.: Combox to hold the following data (see column D has no data or header row):
Column A - Date Column B - Rep Column C - Customer Column D - Column E - Product
I have five comboboxes in userform1, they are link to Column A, Column B, COlumn E, Column G and Column Z of "Reference" worksheets respectively. The values in each column could contain duplicate values. However, I'd like to only display the unique values in those combo boxes and I have no clue how to achieve this.
I have one userform that loads combobox values upon userform Initialize. Though through a second userform changes can be made to anotherworkbook this workbook is saves any changes. when i close the second userform i need to rerun the 1st userform Initialize event to update the combobox's incase changes have been made.
I have a userform (uf_PaxInput) with a Combobox (cmb_flight_dest) which I am trying to populate from a worksheet range ("Dest") using the following code:
VB: Sub LoadForm() With uf_PaxInput.cmb_flight_dest For Each Item In Range("Dest") .AddItem Next Item End With uf_PaxInput.Show End Sub
The code seems to run okay however whent the form loads the combobox drops down to show only blank items to select. These blank items number them same number of items that are in my named range ("Dest").
The '-1' allows for a heading at the top of the column. This works fine when the list in col. L has more than one entry under the heading. But with only one entry I get 'Runtime error 381 - Could not set the List property, Invalid property array index' and the debug highlights on
I would like to populate a combobox with text from two different ranges:
I have an ID No in column A (range = ID) and a descripton in Column B (range = Description)
I would like the following to appear in the combobox:
"J.034 Kitchen Bench" at the moment I can only get J.034 from the following Private Sub UserForm_Initialize() Dim cBase As Range Dim ws As Worksheet Set ws = Worksheets("Matdata") For Each cBase In ws.Range("ID") With Me.cboBase .AddItem cBase.Value .List(.ListCount - 1, 1) = cBase.Offset(0, 1).Value End With Next cBase Me.cboBase.SetFocus HideTitleBar Me End Sub
I've done define name to read column C until G in 1st row, N define another name from column C until G in 2nd row.For example; NameRanges for "Year" =OFFSET(Sheet2!$C$1,0,0,1,COUNTA(Sheet2!$1:$1)-2), for "Thickness" = OFFSET(Sheet2!$C$2,0,0,1,COUNTA(Sheet2!$2:$2)-3)
I want to display list of year in combobox and then, when the user click on the first item in combobox, the textbox will display the value that correspond to the combobox. For example; when the user click Year = 1990 in the combobox, the textbox will take value from excel and display thickness for year 1990 which is 4.
This is my code, the code in UserForm_Initialize is working. unfortunately, coding to display value in TextBox1, doesnt work.
I would like to know how to automatically populate a combobox with the data in a certain range. Attached is a simple workbook with the example. I know how to do this with the additem. But I dont know how to create the array or userform initialize to populate the combobox with the range.
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.
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'm trying to get some vba to automatically find the range of data in a spreadsheet (So start from a specified point and loop until it's blank) and populate a combobox with this range accordingly. I have read numerous articles and posts but nothing seems to work!!
I'm running in to some problems on creating a Userform. I will try to explain it as best as possible. Right now I have a userform set up with 2 ComboBoxes. Here is my current code. It's not near complete.
Private Sub CommandButton1_Click() Set ufStart = Worksheets("Data"). Range("AP4") Set valNames = Worksheets("MasterData").Range("AA6") Set valMonths = Worksheets("MasterData").Range("H3") Set SelMonth = ComboBox2.ListIndex Set SelName = ComboBox1.ListIndex If TextBox1.Value > 0 Then ufStart.Offset(SelName, SelMonth).Value = TextBox1 Else: End If End Sub
The way it's supposed to go, is if TextBox1.Value is greater then 0... then go to UfStart and Offset by Row, which is ComboBox1 Selection Index Value and by Column, which is ComboBox2 Selection Index Value. I can't get the sub to get past Set SelMonth = ComboBox2.ListIndex.
Sheets("Sheet1").Shapes("ComboBox1").Select Selection.ListFillRange = "='Sheet1'!$b$15:" & comborange & "" where comborange = cell reference of the last cell in my range..
I have moved this combo box to a userform now and I'm trying to populate the box via one of the userforms triggers.. My problem is I can't figure out the syntax to select the combobox on the userform.. it doesn't seem to be handled the same way as when it was on the worksheet..