Validate Userform Data Before Executing Sub Procedure
Jul 2, 2014
I have a Userform that has 4 Textboxes (named TextBox1, TextBox2, TextBox3 and Textbox4) and 7 Option Buttons (named OptionButton1, OptionButton2, OptionButton3, OptionButton4, OptionButton5, OptionButton6 and OptionButton7). I need to validate that the following criteria is met:
TextBox1.Value Does not = ""
TextBox2.Value Does not = ""
TextBox3.Value Does not = ""
TextBox4.Value Does not = ""
One Option Button is selected. (It can be any one of them 1-7, Just one needs to be selected).
Is there an easy way to check this data before executing a sub procedure to move the data?? Here is my try at it:
Code:
Sub CheckData()
'Is this the correct way to check data ?
If TextBox1.Value = "" Then
TextBox1.SetFocus
MsgBox "Please enter a Batch Date", vbCritical
[Code] .......
View 9 Replies
ADVERTISEMENT
Jul 9, 2009
I have a simple user form with 8 frames each containing four option buttons. I need a routine to validate that a each frame has had a single option button selected once a command button is clicked.
Here is the code I'm currently using but it isn't working correctlt.
Private Sub CommandButton2_Click()
Dim Cnt As Integer
Dim Ctrl As MSForms.Control
Dim WS As Worksheet
For Each Ctrl In Me.Controls
If TypeName(Ctrl) = "OptionButton" Then
If Ctrl.Value = False Then
MsgBox "Please answer ALL questions"
Exit Sub
End If
Else
MsgBox "Thankyou for completing the questionnaire"
Unload Me
Exit Sub
End If
Next Ctrl
End Sub
View 9 Replies
View Related
Dec 3, 2006
I am in the process of creating a module to validate a MulitPage UserForm that is composed of, among other controls, multiple frames, each containing a TextBox and two OptionButtons. I need to identify those frames where the TextBox value is not null and neither of the OptionButtons have been selected. The module will pass as variables the TextBox value, OptionButton captions and Frame caption to another module that will create a UserForm with the invalid Frame/TextBox/OptionButtons sets for the user to correct.
The interim code listed below runs as a command button on a test UserForm. The MsgBox displays only the first of the OptionButton’s caption as Opt1 and Opt2. Can anyone tell me why and where I went awry?
Public WithEvents As MSforms.TextBox, Opt1 As String, Opt2 As String, vtxt As Long, vFrame As String, vTag As String
Private Sub CommandButton1_Click()
Dim pPage As Page, cCont As Control, vCont As MSforms.Control
'Dim Opt1 As String, Opt2 As String, vtxt As Long, vFrame As String, vTag As String
Is there a more elegant way of accomplishing this? (Control Tags are already spoken for.)
View 4 Replies
View Related
Jun 28, 2007
I am creating a userform, and in this form I have two text boxes and four radio buttons. For one of the text boxes, the user is to insert a number. I have to make sure this number is not already in a range in the workseet. How can I make the userform not accept numbers in a text box that are already in the range in the worksheet?
View 2 Replies
View Related
Feb 15, 2010
I have a userform that has a number of cascading comboboxes, however i wish to use the same cascading feature in a number of other userforms. So what i am trying to achive is calling the cascading element from a public macro, to do this i need to pass the userform name to the procedure. The snippet of code i am using is:
Form:
Private Sub ComboBox1_Change()
If ComboBox1.Value <> "" Then
myform = Me.Name
Call Cascade1(myform)
End If
End Sub
Module:
ub Cascade1(myform)
myform.Label2.Visible = True
myform.ComboBox2.Visible = True
myform.ComboBox2.RowSource = Range(myform.ComboBox1.RowSource).Cells(myform. ComboBox1.ListIndex + 1, 1)
End Sub
View 2 Replies
View Related
Jun 18, 2012
Using Excel2010 in Windows7. I have a UserForm
1: TextBox for Input Username (txtUsernameIn)
2: TextBox for Input Password (txtPasswordIn)
3) Submit Button (cmdSubmit1)
I have a Worksheet
ColA: Username
ColB: Password
And this entire Range A:B, I have named "UserRegister"
I have code, attached to the cmdSubmit1 button on my UserForm. The purpose is to allow access to a veryhidden Worksheet "ADMIN".
The code 'works' if I enter in both the correct UserName and Password (ie: the code completes & Admin sheet opens up).
The code 'works' if I enter in the correct UserName and the wrong password (ie: code completes it's run, my msg pops up to say there is wrong input, unloads the form & sheet ADMIN stays veryhidden).
However, if I enter the wrong username (with either right or wrong password) the code breaks and I get a debug error. I know my code is obviously wrong/missing something etc - but I can't work it out! The line of code highlighted on the break, is between the *** below
VB:
Private Sub cmdSubmit1_Click()
Dim Username As String
Username = txtUserNameIn.Text
Dim password As String
password = txtPasswordIn.Text
[Code] ......
View 9 Replies
View Related
Aug 22, 2014
I have a procedure that opens workbooks from a list and then searchs for a phrase given by user. If nothing is found it closes workbook and opens next one. If phrase is found it highlights it on workbook. I wanted to give user some options when phrase is found: to search further in next workbook and to search further, but leaving current workbook open. Here my misery starts.
The only way i made up to perform it was to use Userform and code: userform.ActiveControl.Name. But it seems that Userform called in other workbook than one where the module is, interrupts somehow the procedure. When workbook, where the userform was used, closes the procedure doesn't go on. Evidently Userform is the issue here as without it, macro works.
See my code below :
[Code] .........
View 8 Replies
View Related
Mar 14, 2008
I have constructed a Userform with two button options - Run a Sub that I have already written and runs fine, the other to close the userform.
how to correctly assign the completed macro ( Name: "Run_Report") to the button click action. The code below is what I have, but it does not run:
' This is the run macro code
Private Sub CommandButton1_Click()
Run_Report
End Sub
' This is the quit UserForm code
Private Sub CommandButton2_Click()
Unload Me
End Sub
The quit command works, just not the run macro - do I need quote marks, parenthesis, or a .Run command or something?
View 5 Replies
View Related
May 7, 2008
I am currently building a workbook with 2 tabs.
The first is a data dump tab. The number of rows used in this tab will change each time it is used.
The second tab currently has a header row and in cells A2-H2 are formulas based on data in the first tab.
I am creating a macro to autofill those formulas, but I don't know how to determine what is the last row of data in the 1st tab and use that as reference in my macro.
View 9 Replies
View Related
May 19, 2009
I have a spreadshhet which has data by month, year, week and bi-weekly. I would like everything to be monthly. How can I put a formula which will look up the cell and see if it monthly it will the value of the cell beside it, if it is weekly it will take the cell value and multiply by 2 and so on.
View 4 Replies
View Related
Feb 2, 2012
I need to make sure people enter City State and Zip correctly,
I need somehow to validate: City, NC 21312
Validate City with a comma right next to it with a space and then 2 letters and then space or 2 space and 5 numbers.
Is there any way to do this using Validation.
I guess I could separate the cells, but I would rather not do that. Or I could have a message box pop up and ask individually to enter each one, but I would rather not do that.
View 6 Replies
View Related
May 7, 2008
I have some data stored in a database and when it is extracted into excel each entry's data is presented in both horizontal and vertical formats. e.g.
Entry1 value1 value2 value3
value4
value5
value6
Entry2 value1 value2 value3
value4
value5
value6
I have a macro that will transpose the vertical data into horizontal format but if there are not the expected number of 'value' items below the entry it will not work correctly. If in the above example Entry2 only had value4 and value5 below it the macro would fail.
What I need is a way to validate that each entry has the correct number of values below it before the macro is run and some way of highlighting or drawing attention to these problems.
View 9 Replies
View Related
Apr 12, 2012
I'm making a data entry form for a user, and one of the fields is in a time format (mm:ss). Is there any way that I can validate that field in "cmdOK_Click()" so that when the user clicks "ok" on the data entry form, if they haven't entered a date a msgbox comes up.
I tried IsNumeric with an If function but to no prevail.
View 4 Replies
View Related
Dec 10, 2007
I have a question that is bugging for quite some time, see if you know. Is it possible to insert a data validation drop-down menu to a pivot tables drill down data automatically?
I really do believe that pivot tables should have this option, it would make data validation much more easier. I going to suggest that to the guys developing Office 14, according to them the new Office will more Business roled based. Lets wait and see a !
View 5 Replies
View Related
Dec 8, 2009
I am creating a spreadsheet where the user enters food they have eaten that day. The way this is done at the moment is with validated list boxes, one depending on the other using the indirect function. I want to be able to make this into a user input form. Is there a way of adding these validations from the spreadsheet, to an input form.
I want the input form to have an input for the day, food group, food item, and quantity of the food. The food item needs to depend on the food group.
View 9 Replies
View Related
Jan 17, 2008
I have coded a simple array. I have Checked its contents (I know it works as it returns values that i expect) with a message box successfully. All within a procedure in my only module of code. When i run a new sub routine, i can not code it successfully to extract the contents of the array previously created in my original sub routine. errors like
syntax
sub or function not defined.
View 3 Replies
View Related
Oct 14, 2009
I have an Excel workbook which contains data entry fields, which have different types of data validation rules - like Lists, Date, Whole Number.
I do not want end users to remove these data validations as well as the formatting of these cells by doing copy/paste. So, I have implemented techniques mentioned in the following post, and elsewhere - to override the paste functionality and implement PasteSpecial values automatically.
[url]
To keep it simple, I'm only supporting pasting a single cell at a time.
Now my problem is this:
Doing the PasteSpecial values programmatically doesn't prevent the user from pasting values in the cell that violate the data validation rules. So, I can paste a string into a cell having data validation as Whole Number, or a invalid string into a cell having data validation as List.
The following post just suggests disabling paste whenever data validation is present:
[url]
But I would like to allow the paste operation if the value being pasted is a valid value for the cell's data validation.
View 9 Replies
View Related
Sep 1, 2013
I have 2 Data tables in 2 sheets of the same workbook. I want to compare my column A of table 2 with column A of table 1 and delete any rows of table 2 where (column A of table 2 has a value which is not in the column A of table 1)
In Excel I used the Vlookup function and deleted any rows which had Error in result of the formula. May I know how to execute this in VB
View 3 Replies
View Related
Jul 17, 2008
I have a combobox which is used to select data (stock symbol) from a list. Following selection of the stock symbol, a VBA routine is invoked from a radio button which accesses the internet to get data for the selected stock. Currently, this is a two step operation. I tried to cut out the need to click on the download button by calling the GetData sub inside the combobox sub as shown in the code below.
View 14 Replies
View Related
Apr 30, 2013
Why the second sub is not executing?
Code:
Private Sub RolloverYear_Click()
Application.ScreenUpdating = False
Dim s As Variant
Dim resp As Long
resp = MsgBox(prompt:="You are about to clear ALL current year payroll information. Are you sure you want to continue?", Buttons:=vbYesNo)
If resp = vbNo Then
[Code] .......
View 9 Replies
View Related
Oct 4, 2008
if it is possible to use a batch query to execute more than one SQL statement at once from Excel. Something like this:
View 9 Replies
View Related
Dec 17, 2008
I just want to have a column sorted by Z-A order and then A-Z by the same button, I recorded 2 macros on 2 buttons and tried to join codes with "if, elseif".
View 6 Replies
View Related
Aug 30, 2009
I wanted to know If there a way to hide the process of executing macrob (vba)?
I have a long macro that runs on a file and I want to hide the process. I know there is an option to it, I just don't know it.
View 5 Replies
View Related
Mar 6, 2008
I have 60 checkboxes on my spreadsheet and basically, when any of the checkboxes are clicked on, the same action should be performed.
The only way I know how to do this is if I were to write the same code 60 times... one for each checkbox_click() method.
View 9 Replies
View Related
Apr 2, 2008
I have a workbook with several worksheets. The numbers entered by the user in the cells C7:C9 of sheet "A" will be used to calculate some values in sheet "A" as well as in sheet "B".
Calculations on both sheets involve macros: macro "scale" on sheet "A" and macro "sort" on sheet "B".
I used this code to execute macro "scale" on sheet "A" triggered by the Worksheet_Change function:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C7:C9")) Is Nothing Then
Exit Sub
Else
scale
End If
End Sub
now, I want to execute macro "sort" on sheet "B" practically at the same time (with the same worksheet_change condition for sheet "A")
All off my attempts resulted in running "sort" in sheet "A" which is not what I want. I couldn't get it to execute the macro in the other worksheet.
Already tried "With Worksheet("B") and "Dim ws As Worksheet, Set ws = Worksheets("B") - no luck...
View 9 Replies
View Related
May 22, 2009
The error trap does work when there is an error, but it also runs at the end of the code when there isn't an error... I'm not sure what I've done wrong. When I test with data that is correct, it still runs through the code when it gets to the bottom. Have I put the error trap in the wrong place?
I have put in bold the section of the code with the error trap.
Option Explicit
Const TargetDB = "Group Life Pricing Tables v0.1.accdb"
Sub HMUK_Val()
Application.ScreenUpdating = False
'define variables to be used in the process
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim fld As ADODB.Field
Dim sSQL As String
Dim SchemeInfo As Integer
Dim CurrentAge As Integer
Dim CurrentRow As Integer
Dim CurrentSex As String
Dim Message
'check that Scheme data has already been entered
For SchemeInfo = 1 To 13
If Sheets("Working Info").Cells(SchemeInfo, 2).Value = "" Then
Message = MsgBox("Please ensure all Scheme information has been entered before processing member info", vbOKOnly, "Warning")
Exit Sub
End If
Next SchemeInfo
View 9 Replies
View Related
Dec 10, 2009
(Excel 2003)
I've a macro (I recorded) that executes a query (Oracle) and returns rows that exceeds the max (65539). How do I go about adding another sheet therefore allowing the query to continue?
I know how to do it via opening a text file and importing, but do not know how to do it with the use of a query.
View 9 Replies
View Related
Mar 21, 2007
I have a series of checkboxes that I would like to select/deselect on mass, without having to manually click them individually...
Each of the CheckBox_Click routines change the visibility properties of images.
Changing the CheckBox value with code (true/false)
CheckBox.value = True
will alter the checkbox, but not execute its code...
And
Run "CheckBox_Click"
did not do it either.
How do I simulate the clicking of the CheckBox, with code?
View 3 Replies
View Related
Apr 4, 2007
I have a Worksheet_Change method in my sheet module which has suddenly begun working selectively. I have several target ranges in my worksheet that I need to watch for changes. One range of cells is all pull-down menus (a list of electrical loads through excel's validation), another two cells are looking at the name and location of an electrical panel.
When the user selects an electrical load, the worksheet_change method updates a legend of definitions. When the user enters a new name or location, the method updates similar fields elsewhere on the same sheet.
The problem is, excel has stopped executing worksheet_change when a load is chosen or location entered. It only executes when the aforementioned load and location are deleted. However, the name field triggers worksheet_change just fine!
I have attempted to put breakpoints on the worksheet_change method; Excel does not even execute the method as described above. I've tried breaking on the toggling of Application.EnableEvents (which occurs early on in the execution of worksheet_change). I currently have a global watch on Application.EnableEvents and I'm quite sure it's TRUE before I attempt to trigger a worksheet_change event.
My next step is to create a brand new workbook and copy my spreadsheet and code into it. I'll post the results of that experiment.
View 9 Replies
View Related
Apr 26, 2007
What I want to do is make a simple text link inside of a cell so when it's clicked on it executes the CommandButton(x) VBA script.
I'm guessing =HYPERLINK is going to be the best method.
Like so:
=HYPERLINK("Forms.CommandButton1","E-Mail")
View 9 Replies
View Related