I have an application using two userforms. Following sequence is used:
1. Open Userform1 (with uf.show) 2. click on a commandbutton in userform1 opens a second userform on top of userform1. 3. Close userform2 with commandbutton on userform2 (userform2.hide) (I did not want the user to close the UF via the "X" )
Runtime error 402 : Must close or hide topmost modal form first
So, I changed my code so when the user clicks the commandbutton in userform2
userform1.hide (which is the topmost) userform2.hide
Ive created a userform that I want to have input data into specific cells in my worksheet. I have the userform created, and some of the other VB stuff written, but it is far from being functional. I have come across the first of what to is to be many problems (Im pretty rusty at VB).
I have a button on my spreadsheet that is supposed to show the userform using this macro
[Code] .....
When I click the button, it breaks at "Form1.Show" giving me "Run-time error 424 : Object Required".
I've created several UserForms, for some reason this one won't co-operate!
Issue are: 1. Have to click the OK button 3 times for the code to execute (this does not occur when I filter through the code in debug/F8 mode).
2. Before processing I have a label and image set to visible = true that won't appear on the form at runtime (this works when I filter through the code in debug/F8 mode).
Following bit of code runs fine if placed in Word VBA:
Code: Public Sub TaskUsageInExcel() Dim tsk As Task For Each tsk In Tasks 'Gives RTE 429 when run through Excel Debug.Print tsk.Name Next tsk End Sub
So I referenced 'Microsoft Word 12.0 Object Library' in Excel and ran the code and it gave me this error 429. Noticeable part was, no instance of word was running at that time.
So I modified the code as below:
Code: Public Sub TaskUsageInExcel2() Dim wdApp As Word.Application Dim tsk As Task
I have a code that adds a couple of ComboBoxes to a UserForm (the number of ComboBoxes is variable). Now that I want to control a certain ComboBox based on the selected value of another ComboBox (change or click event), how do I do that via VBA code?
I use the following (work in progress) function to add the controls to the userform (usually added to page or frame).
Code: Public Function AddControls(ByVal objTarget As Object, ByVal strUiName As String) Dim rngControls As Excel.Range, rngProperties As Excel.Range Dim rngControl As Excel.Range, rngProperty As Excel.Range Dim objControl As Object
With shtFormUI Set rngControls = .Range("D2:D" & .Range("D" & .Rows.Count).End(xlUp).Row)
[Code] .....
Now I need a means of trapping the controls events. I thought I could use a class, e.g.: cFormEvents
Code: Option Explicit
Public WithEvents lblLabel As MSForms.Label Public WithEvents tbxTextBox As MSForms.TextBox Public WithEvents cbxComboBox As MSForms.ComboBox Public WithEvents lbxListBox As MSForms.ListBox Public WithEvents cbtCommandButton As MSForms.CommandButton
Private Sub lblLabel_Click()
[Code] .....
It seems I cannot reference the controls because I they are added at runtime. For the given example, I want to run whatever procedure name appears for lblPrimaryContact in column AC (click event). So in my userform module I instantiate the class, but I get an error when I try and reference the control:
Code: Set m_clsFormEvents.lblLabel = Me.lblPrimaryContact Error is "method or data member not found".
Any alternative method to grab the click event for the control added at runtime?
I have a userform that has one combobox at the top created manually. When the userform is opened, the user select an option in the combobox (these options are taken from a range on 1 worksheet). From the selection of the combobox, I use the comboxbox's change event to create and display 5 columns of textboxes and 2 columns of command buttons on the userform.
The number of rows of textboxes created depend on the option selected from the combobox since each option links to a different range of cells. Each of the 5 textboxes in each are set to be ".enabled = False" and display text as per the cell values within a range on another worksheet. 2 Columns of command buttons are created at the end of each row of textboxes - 1 is enabled and the other is not.
The creation of the textboxes and command buttons works as required. However, I am having problems with setting click events for each command buttons. When the 1st column of Command buttons are created, I need the click events to be created and filled out with 2 actions:
1. Enable all textboxes in the same row as the command button
2. Enable the other command button in the same row.
Here is the code I have so far that creates the textboxes and command buttons.
Each of the 5 textboxes and 2 command buttons have a unique name so the 1st row will have textbox and command button names of cTxtA1, cTxtB1, cTxtC1, cTxtD1, cTxtE1, CmdAmend1 and CmdConfirm1. The 2nd row will have the same names but with 2 on the end and so on. The bold sections is the code for the creation of the command buttons that I want click events for.
Code:
Private Sub CboTeamSelect_Change() Application.ScreenUpdating = False If CboGroupSelect.Value = "" Then Exit Sub Dim cTxtA As Control, cTxtB As Control, cTxtC As Control, cTxtD As Control, cTxtE As Control Dim CmdAmend As Control, CmdConfirm As Control Dim iNum As Integer Dim TxtTop As Long
i want to create one user form like shown in this picture below. right side 3 options need to input form the user and clicking on the button get option chain, it gets the data from www and fills all the columns frm expiry to optn int..
I have created an order form and what I am trying to do is:
I would like that when our customers open the order form they should get a page with our Terms and conditions (maybe as User form), which they have to accept it or not. If they accept it, they should get the message i.e. “welcome to ....." but if they don't accept it they should get the message i.e. “the order form will close in 5 seconds " (and it should close after 5 sec.).
Enclosed is a copy of a workbook in Excel 2003, in which I copied the VBA from a web site to see how that works. I am not a guru in Excel but always curious to see how things can be achieved to maybe enhance it in the future use. I have tried everything based on my knowledge but did not succeed.
I am trying to create some controls in a userform on the fly based on the data in a sheet. The part of my code is the following:
summaryForm.Controls.Add bstrProgID:="forms.label.1", Name:="LAWts", Visible:=True With summaryForm.Controls("LAWts") .Top = 120 .Left = 20 .Height = 18 .Width = 300 .Caption = "Weights: " End With
Question I is that how can I connet this textbox to a click event or just to a procedure when it is clicked? I tried to use OnAction but it does not work for textbox in a userform. Question II is that how can I find the all properties of a textbox or any other controls? Is there a manuel or reference available on the internet?
i want to make my UserForm Adjustable ( Resizer )............i m posting here a sample of Adjustable ( Resizer) UserForm, and also pasting my own UserForm
make my Userform Adjustable ( Resizer )
my user form My own UserForm.xlsm example of Resizer Form Resizer Form.xls
I would like to create a simple right mouse button popup menu for the text box on a userform. I just want Copy and Paste and the functionality that goes with them if possible.
I want to create a listbox on a userform with 3 columns. The source data comes from the sheet "Data". After selecting a value from a combobox (which can also be found in the "Data" sheet), I want the first coloumn to display the matching LJHs, sorted ascending. Second column the matching date and the 3rd column to be the total quantity (maybe with SUMIFS).I dont know if you can refer to a listbox element for the worksheetfunction SUMIFS.
This is what the Listbox is supposed to look like and some sample data.
We are working on a project at work with our suppliers which will require much redoing of the same sort of things, so I've started to learn and use VBA in excel.
Intro done, I have started a sheet with parts data held on it, and created a user form to allow the operator (me ATM) to input part details into the form, this includes the part number, revision etc.
The next thing I need to do is gather some additional information about the parts. one of the things I need is the number of places each dimension needs to be measured in, the others are sizes tolerances etc.
each part could have a different number of dimensions, and each dimension could have a different number of places to be measured. The operator has already input the number of dimensions on the previous form and this is assigned a variable name 'myDim'
I need a new user form with a number of boxes matching myDim, and labels (letters) to match for inputting the next chunk of information. Once I have this figure out I can replicate for each requirement.
Is there any way to make the number of text boxes in one form be dictated by an input from another form. I can play with the input if needed, it is currently a string, but should be an integer.
I wrote some macros that allow me to check info when i input employee number and dates on a worksheet. There are three buttons in my macro which are "Prepare" (do some preparation for the origional data in order to perform check ups later on), "Clear" (clear info in order to perform next check up), "Check" ( Check the info that i need). I already finished the code for all three buttons and they are all functioning.
My question is how to create a userform that allows me to do the same thing as a macro. for example, on the userform window, there should also be three command buttons ("Prepare","Clear","Check") and also there should be three textbox labeled as "Employee Number","DateFrom","Date To" and the value of these textboxes are just the same as the input value for the macro( ie. In the macro, these three inputs are located at cells "B2","C2","D2")
sometimes i'll have some text i want to show in a userform textbox. let's say the text happens to be in a sheet named story, and it is in A1 of the worksheet.
A1 says, for example:
" The next big thing can be found by clicking here " if the note above were on a web page, all you'd have to do is click on 'here' and you are off the the next big thing. but so far, when i use this code to bring the text in story!A1 into the userform textbox all i get is the text. there is no 'clickability' as it were.
Me.textbox.Value = Range("story!A1").Value is there some bit of code magic one can use to make a userform textbox function with html code?
I have downloaded the sample file at the bottom of the 'Contextures' webpage that explaines how to create a simple userform...
[url]
at the very bottom there is a 'Download the sample file' link
This simple form alows the user to input 4 bits of data, PartID, Location,Date and Qty. This data is saved in another part of the worksheet called 'Partsdata'
What I want is somehow for the user to be able to seach for a PartID from the list in the Partsdata worksheet. When this PartId is found, display the userform in a way that the data relating to that PartID can be edited and then re-saved when the user clicks on the 'add this part' button.
For example....
Msg Box or user form dispalyed stating...."Enter PartID to edit" a search of the PartID column (columnA) in PartsData worksheet is carried out and when the matching PartID is found the corresponding information is displayed in a user form that can be edited by the user.
Once the user has made any changes to the data shown, the user clicks on the 'Add this part' button and the new data is re-saved using the same partid reference.
How would I go about making a user form that has an input box where you can type in a year (in yyyy format), and then two radio buttons that allow you to choose either "Jan-Jun" or "Jul-Dec", and a submit button to run a corresponding macro.
The purpose of this is I have two macros that run the same report, one is for first half of the year, second is for second half of the year. For simple purposes we will call them "JanJun" macro and "JulDec" macro ...
I am working on a dynamically produced userform but the dynamically created Cancel and OK buttons don't work. I have been able to get round it by adding the buttons to the top of the form (non- dynamic) but I'd really like to be able to create them dynamically based on variable for other parts of the project. How can I produce dynamic command buttons that actually work?
Here's my code but I'd be happy with generic code I could use.
Private Sub UserForm_Activate() ' Define variables Dim LabelV As MSForms.Label Dim CheckboxV As MSForms.Checkbox Dim rngFields As Excel.Range Dim field As Excel.Range Dim lngNextTop As Long Dim lngTitleBarHeight As Long Dim ColumnNum As Integer
' Set constants ' Choose height and width of Label box Const cTextBoxHeight As Long = 12..............