Userforms And Message Boxes Do Not Show Properly
Apr 2, 2014
I am close to finishing making up an Excel tool that takes data input from the user, does some analysis, accepts further input then prepares a report. My coding skills are not what you would call high level, so my code could probably be more efficient, but it works (well, except for this issue).
The tool opens a main multipage userform for data entry, then allows the user to view the data in the spreadsheet tables with the ability to call separate userforms to modify, delete or add records. The user then calls another userform to do some calculations and enter the appropriate results from a separate piece of software, then presses a button to prepare a report. All userforms are called from buttons in a separate userform (I'm not proficient enough and haven't had enough time to create a new ribbon in excel). At various times, messageboxes are used to convey information or prompt the user to do something - these are all simple ones with either only OK button, or OK and cancel buttons.
My problem is that when userforms are called, they sometimes appear but are totally blank (white) - see image.
blank_form.jpg
Clicking anywhere on the screen or pressing any key will bring them up properly and they seem to function normally thereafter.
In addition, the messageboxes sometimes do not appear - pressing any key will make them do so. Other than this they function normally.
The frustrating thing is that these problems occur inconsistently. I can add or change some code and it stops happening, then after testing (entering data and using the tool) starts happening again. Sometimes it just stops happening with no apparent reason, but starts again later after fixing some code or just entering some data. Not all userforms are affected at any one time and not all messageboxes have the problem at any one time.
The problem seems to occur in those subroutines where I access or manipulate data from other sheets before showing the userform or message box (but in most instances, I need to do this manipulation in order to present the correct information in the userform).
Some thought processes I have had, and unsuccessfully tried to fix the problem with (some coming from various web forums):
I thought I may have done "Application.ScreenUpdating = False" without resetting it to true, so I commented out all the "Application.ScreenUpdating = False" statements - problem stopped for a bit then started again.
Some of the userforms were modal, and even though they were not showing were still loaded so thought that this may be impacting on other userforms/message boxes, so changed all userforms to non modal - still had the problem when I opened the tool again.
Tried using "RePaint" and "DoEvents" at various points in the code after opening a userform or message box - no change.
I have tried exporting a form and its code, removing from the tool, then re-importing it. No success.
Tried the tool on another computer and the same problem occurred.
View 10 Replies
ADVERTISEMENT
Jun 29, 2007
I designed some userforms on a worksheet for users to click and input information. However, i am wondering if it is possible to have an additional feature to the userform.
Currently the userform only have labels such as Title, Dept, Branch, Unit and the respective textboxes for user to input information. As it might be unclear to some users i would like to have an additional feature such that when user roll their mouse over the label "Branch", the user will see a box where more information is given or rather an example such as "Dept XYZ", allowing user to have a clearer idea of what to fill in. Is there any way for me to add this feature?
View 10 Replies
View Related
Oct 4, 2009
I have worked out (through reading and what not) how to link a combo box to a range in a worksheet. What I need to do is relate what is selected in that combo box, to another combo box which picks from another range. I have a data spreadsheet called "Offices". It's set up as follows
(Sorry, it's really frustrating trying to format it to a table type thing but you get the gist)
ROW NUM______COLUMN A____________COLUMN B
---------------------------------------------------------------
1_____________DistrictOffice1_______...fice1@test.com
---------------------------------------------------------------
2_________________________________OFFICE 1
3_________________________________OFFICE 2
4_________________________________OFFICE 3
5_________________________________OFFICE 4
---------------------------------------------------------------
6_____________DistrictOffice2_______...fice2@test.com
---------------------------------------------------------------
7_________________________________OFFICE 2...............
View 4 Replies
View Related
Feb 26, 2008
i have a form that creates a pop-up (another form) and i want that pop-up to remain on top of the original form until the pop-up's "submit" or "cancel" button is clicked - the original form should be inaccessible while the pop-up is there.
is it possible to do this in VBA?
View 6 Replies
View Related
Apr 27, 2008
I'm writing an application for myself, running on Windows Vista & Office 2003, I have no intention, as things stand, of this being used on any other PCs or by anybody using an older version of Windows or Office. I am a Mainframe programmer so my logical way of thinking is not always in line with the best way of using VBA, but I try my best & seem to be getting by, but I have a problem & question as follows:
I "SHOW" a UserForm with an option to Add or Delete. I choose Delete & a new UserForm is opened, populated with data from an Access database, I choose my option from a DropDown box, click OK & I then want the data to be deleted and to return to the first UserForm. I "UNLOAD" the latter UserForm and then try to "SHOW" the original one, but get an error message saying "Form already displayed; can't show modally" ... the first port of call:
You can't use the Show method to display a visible form as modal. This error has the following cause and solution: You tried to use Show, with the style argument set to 1 – vbModal, on an already visible form.........
View 4 Replies
View Related
Jul 22, 2009
I am trying to find the right format that will show a variety of account numbers properly.
I have these types of numbers displaying like this right now:
9.04585E+13 (should be 90458524211818)
785656.001 (showing properly)
NRDE1312089 (showing properly)
SCGA 396.00 (showing properly)
The formatting is set to general, which works for all but the top type of account number. I tried setting to a custom format like "#.#######" ...The only problem with that format is that the "." shows up whether there is a decimal in the number or not. What's the way around that?
View 9 Replies
View Related
Sep 18, 2006
I have a commandbutton that when clicked, it would make monthview1 visible. I can do this via the following
Private Sub CommandButton3_Click()
MonthView1.Visible = True
MonthView1.Value = Date
End Sub
However, I do not know what code to add so that when the same commandbutton is clicked, the monthview object would hide.
View 2 Replies
View Related
Dec 17, 2007
I have created several userforms within my excel spreadsheet and i want to be able to click a command button on one form which will then hide the current form and show the next form. In previous spreadsheets i have used the following:
Private Sub CommandButton1_Click()
Form1.Hide
Form2.Show
End Sub
However, i am having trouble with this spreadsheet as when i am typing my code after the Form1. the hide command (and show) does not appear in the little pop scroll bar that predicts what command you plan to use. (If i type it regardless then it doesnt execute)
What is even stranger is that if i write a sub routine in a module such as:
Sub Test_Form()
Form1.Hide
Form2.Show
End Sub
And then call it:
Private Sub CommandButton1_Click()
Call Test_Form
End Sub
View 5 Replies
View Related
Jan 25, 2007
This used to run correctly at the end of a macro. But, it doesn't now. I haven't used it in about 4 months.
Error is "Variable not defined." and highlights the 'Msg=' in the debugger.
Msg = " WSPrepSuper is finished! "
Msg = Msg & vbNewLine & vbNewLine
Msg = Msg & "The customers have been broken out, to their appropriate tabs."
Msg = Msg & vbNewLine & vbNewLine
Msg = Msg & " This should Save and Share, automatically. "
Msg = Msg & vbNewLine & vbNewLine
Msg = Msg & " Everything should be ready to go. "
Title = "WSPrepSUPER Macro"
Msg = MsgBox(Msg, 64, Title)
Msg = "Oh, yeah. Have a Nice Day."
' Msg = Msg & vbNewLine & vbNewLine
Title = " "
Msg = MsgBox(Msg, 0, Title)
View 9 Replies
View Related
Sep 6, 2007
I'm just beginning to work with userforms and have created a couple of forms for workbook navigation. The Menu form is set to appear only on the menu worksheet and the Navbar form is set to show on several database sheets. Both forms are set th hide when the workbook is deactivated.
Private Sub Workbook_Deactivate()
Menufrm.Hide
Navbar.Hide
End Sub
The problem is that when I return to the workbook the forms do not unhide. Using the workbook_activate event causes both forms to show simultaneously. I also have the worksheet_activate event set to show the applicable form.
Private Sub Worksheet_Activate()
Application. ScreenUpdating = False
ActiveWindow.DisplayGridlines = False
Navbar.Show
Navbar.Left = Range("B3").Left
Navbar.Top = Range("B3").Top
Application.ScreenUpdating = True
End Sub
Upon returning to this workbook, I only want the appropriate form to show relative to the worksheet that is active. That is, if I was on sheet2 when I switched to another workbook, sheet2 would be active when I return to the workbook and should show the Navbar form. The menu form should show on sheet1, and the navbar form on sheets 2-5. How do I get the correct form to show when I re-activate the workbook?
View 4 Replies
View Related
Jan 11, 2009
What is the simplest way to display a "Please Wait.." message during the execution of a macro.
Tried the WshShell.Popup but did not work.
View 10 Replies
View Related
Nov 19, 2012
I am new to excel vba. I want to show a pop-up message when user tries to save the workbook keeping cell(1,3) blank.
View 1 Replies
View Related
Dec 9, 2009
we are having a excel sheet which has data in it.
ex:
In sheet3:
D |F
Columns: Logic |Field
Rows: market |business
proposed |consumer
In sheet2:
A |B
List of sheet | Field
sheet3 |business
sheet4 |other
In Sheet1:
A |B
List of sheet |Field
sheet3 |consumer
When a user points to the particular cell(f2,f3) in column F of sheet3, it should display a message weather the data in particular cell is in which sheet( Sheet1 or sheet2 or not specified) and hyperlink must be displayed. when we click on the hyperlink it should go to the data particular row of the sheet.(Sheet1 or sheet2)..
View 11 Replies
View Related
May 27, 2009
I need to refer the LAST ROW OF COLUMN "D" to appear in the message box for the below code along with " Receipt number" which is in Sheet2.
Sub saveit()
With Sheets(2)
r = .Range("B65536").End(xlUp).Row + 1
InvN = Cells(15, 4).Text
If Range("c18") = "" Or Range("c20") = "" Or Range("c20") = "" Or Range("c24") = "" Then
MsgBox "Please fill all required fields", vbCritical, " Missing data"
Exit Sub
End If...............................
View 9 Replies
View Related
Feb 19, 2009
This seems like a very simple question but I can't find the answer that I'm looking for. I have a spreadsheet with a drop-down ( validation) list. Based on what the person selects, I then would like to have a message box to come that would direct them that certain cells then need to be filled in.
View 4 Replies
View Related
Nov 16, 2006
Is it possible to display a dialog box or msgbox that doesnt have an OK button ?
i.e I want a message that comes up on the screen that says "Links Updating...Please Wait" which then automatically changes to "Links Sucessfully Updated" on completion...I dont want the macro to be interrupted by the msgbox/dialog....
View 7 Replies
View Related
Aug 28, 2007
I have a spreadsheet where I have input all of my technicians service calls and installations.
In Column C Row 5 and up to the max I assume because I'm not sure how many rows I would use in a year, I have an estimated completion date.
In Column D and the same Rows as above I will input the Actual Completion date.
What I want is if the current date is past the estimated completion date (Column C) and there is no date entered in the Actual Completion date (Column D) I would like a MsgBox to pop up saying "Please enter a new completion date on row _"
"_" would be which ever row the estimated completion date has expired without an actual completion date being entered.
View 9 Replies
View Related
Nov 2, 2012
What i am trying to do:
1) check whether any value in column J, rows 7-18 is changed,
2) check whether the value is above the value in col H, respective row multiplied by 1,25,
3) if point 3 true, clear the contents of cells E24, F24, and show up a messagebox,
4) run another macro by pressing button in cell C24 in order to fill the E24 and F24 cells again.
What happens: Points 1-3 work perfectly well, but then i have a problem in point 4 - the messagebox of point 3 appears again and the work of macro of point 4 interrupts showing an "Application-defined or object-defined error".
The file with the code is attached : Example.xlsm
View 3 Replies
View Related
Jul 29, 2014
How to show via a message box the difference between rows 2 and 3 on a worksheet (row 1 is headers).
In the message box per the attached workbook, i should only see something like the following....
Drawing Rev was A is now B
Planner was Joe is now Fred
The attached example is abbreviated, the actual data will span multiple columns (approx. 30 - 40)
View 7 Replies
View Related
May 16, 2006
In a range of cells (e.g. B26-B40) I have names (first name and second name or first initial and second name). This data is carried from sheet 1 to the second sheet via formula. Some cells may be blank as well.
A VB code to display a message when the user changes the name in any of these cells with data or adds a new name to a cell that is blank, in sheet2
View 3 Replies
View Related
Aug 31, 2006
I have a userform with a combobox (cmbSearch) , a textbox (textbox1) and a listbox (listbox1)....and a commandbutton (cmbFind). This userform is used for searching records in my worksheet....where user selects a "Search By" category from the combobox and then enters relevent text search criteria in the textbox....and all the search results are shown in the listbox. This part works fine untill someone tries to search a "non-existent" record. e.g. a customer name thats not in the database and it gives an error. I would incorporate in my code to have a Message box pop up on these type of searches saying "textbox1.value Not Found!" insetad of error message.
Private Sub cmbFind_Click()
Set c = Range("a65536").End(xlUp).Offset(1, 0)
'write userform entries to database
Dim DataSH As Worksheet
Set DataSH = Sheets("ComplaintData")
With DataSH
.Range("L1").Value = cmbSearch.Value
.Range("L2").Value = TextBox1.Text
.Range("N1"). CurrentRegion.Clear
.Range("A1").CurrentRegion. AdvancedFilter Action:=xlFilterCopy, criteriarange:=.Range("L1:L2"), copytorange:=.Range("N1")
End With
lstSearch.RowSource = vbNullString
lstSearch.RowSource = "outdata"
End Sub
View 5 Replies
View Related
May 2, 2012
I need a macro where user choose a value from validation, automatically lock the other cells and should show an error message.
Here is what I am looking for. User will choose Yes or no from cell H15 validation. If user choose "NO" from the validation then all other cells has to be locked in the workbook automatically except Cell H15 and a msg box needs to appear stating: "Select Yes from the validation".
View 3 Replies
View Related
Aug 18, 2006
I'm trying to check and prompt a message box if there is a empty cells found in the pivot table.
If Activesheet.PivotTables("PivotTable1").NullString = "" Then
MsgBox "No Match Data Found"
End If
I have try out the code caption above but not the result as I want.
View 7 Replies
View Related
Aug 27, 2007
Below is a macro I recorded to help copy 'Paste Special - values only' data between two spreadsheets that have different colour and conditional formatting in cells.
However, if this is run and there is no data to paste, it throws up the End and Debug error.
Any chance that someone knows that if there is no data sitting on the Clipboard, then a msg box would appear saying "Please select the data you require to be copied" in the message box.
Sub data_input()
ActiveSheet. Unprotect
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("B5:AG4804").Select
Selection.sort Key1:=Range("B5"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("B5").Select
ActiveSheet.Protect
End Sub
View 4 Replies
View Related
Oct 1, 2008
I have a file that the user selects and when they enter a value (in this case, a job title) into the input box, my macro looks for the value in that file. If the value is there, a msgbox pops up that lets the user know that the value was found and it then goes to that cell, displaying in the next msgbox the cell address of where the value was found. I already have the code down for this part of the macro.
My problem is what happens if the file has the same value more than once. Ideally, I'd like to display a message box that returns the addresses of both cells with the same value and then prompts the user to select one of these values as the value they are looking for. I am not sure if a msgbox or a msgbox and then an input box are most appropriate for this situation. Once the user does this, the macro continues. The rest of my macro is built on the cell where this value is, so it is crucial that I make sure there is at least one value selected. Any help is much appreciated. I have included a sample worksheet of what this situation might look like.
Here is the code I presently have for this part of my macro.
Sub GetOpenFileName()
strFind = InputBox("Please enter the job title you wish to search for:", "Search for job title in this file")
If strFind = vbNullString Then Exit Sub
With Sheets(strSheetsMainCompProfile)
If WorksheetFunction. CountIf(Range(Cells(1, 1), Cells(100, 100)), "*" & strFind & "*") = 0 Then
MsgBox strFind & " cannot be found on this sheet"
Else
View 9 Replies
View Related
May 17, 2008
I cannot figure out how to get my error handler to work, or actually, not work. It seems to work fine when there is an error, but the code still gets read even when there was not an error. Basically, I am trying to open a file, which may or may not be there. When it is not there I want a message to pop up informing the user. However, when the file is there and it opens, the error handler still gives the message box. Any ideas what I am doing wrong?
Private Sub btnOK_Click()
Application. ScreenUpdating = False
Dim LCSfile As String
LCSfile = frmSelectFile.Listbox1.Value
On Error Goto ErrHandler
Workbooks.Open Filename:=sPath & sDate & "" & LCSfile & "QUANT.CSV"
ErrHandler:
MsgBox ("File is not quantitated. Please select another file.")
Application.ScreenUpdating = True
End Sub
View 2 Replies
View Related
Jan 22, 2008
I have the following code to compare two columns and delete adjacent rows if 1 is greater than or equal the other...
Sub LastReceipt_GT_Confirmed()
Dim intLstRow As Integer
For intLstRow = Range("E" & Rows.Count).End(xlUp).Row To 2 Step -1
With Range("E" & intLstRow)
If .Value > .Offset(0, 1).Value Then .EntireRow.Delete
End With
Next intLstRow
For intLstRow = Range("E" & Rows.Count).End(xlUp).Row To 2 Step -1 .............
View 9 Replies
View Related
Oct 7, 2006
I need to check a range of cells (B4:B35) and see if any of the contents are less than a specified cell (M1) and then show a message, (the message part I can do). I have tried using For Each but I then get the message for every cell that is below the specified cell (which in theory could be all of them). I have also tried using an If Any statement but didnt work.
View 5 Replies
View Related
Feb 17, 2010
I use the following macro to save my worksheet. However, if I click cancel when the save box is open, then I am presented with an error. How do I get it to skip the error and show a message box instead that says "File not Saved!".
View 2 Replies
View Related
Jul 26, 2006
I am developing a spreadsheet with numerous information on our different suppliers offices in the country for each of our outlets. I am tryin to define a way to do the following:
If a colleague selects a company another list will appear with the region and when the region is selected a list of the offices will appear.
View 3 Replies
View Related