I have several checkbox and adjacent to it there is a textbox. Also I have a command button.
On Form initialize, all checkbox and textbox are hidden, except first check box and textbox.
The first checkbox1 is enabled and textbox1 is empty. On Exit event of textbox1, the checkbox2 and textbox2 gets visible, with checkbox2 enabled.
On exit event of textbox1, the cursor goes to command button on Tab
My requirement:
The cursor should go to textbox2.
Note:- I have Tabindex set to as following:
Textbox1 = 0
Textbox2 = 1
Commandbutton1 = 2
can i disable/remove a control from the being in the tab order. i no i can move to the bottom but there is too many too use that option. i need it to be elimated from user input alltogether. it is filled automatically
I am using stuff from loops http://www.ozgrid.com/VBA/control-loop.htm to loop through all the controls on a UserForm. But I can't find a way of controlling the order in which this is done. I tried both TabIndex and moving the controls around without success. Is there a property of a control that controls the loop order.
I looked at threads realted to printing but wasn ot able to find something similar to what I need. So here is my problem:
I have a file with more than 100 worksheets (each sheet contains the invoice for one store). I would like to create a macro that would enable me to determine the order in which worksheets would be printed. How to do it?
Idea #1: the printing order would be based on the value in cell L1 that would contain the route number for each store. Stores belonging to the same delivery route will have the same value in L1. So, the macro should first print all sheets with 1 in cell L1, then print all sheets with 2 in cell L1 and so on...
Idea #2: Creating a separate data sheet with the list of all stores and their corresponding route number. Let's say info is contained in range A1:B150, where Column A contains the name of the stores and column B contains the route numbers. The macro then should look at that list to determine the printing order of the subsequent worksheets (the name of the store in column A would be the same as the name of the worksheet corresponding to that store).
Idea #3: sorting my 150 worksheets manually. It does not solve my problem fully, though, because stores do not always belong to the same route. So the manual sorting should be carried out daily and would not save time at all.
I need a way to re-order an excel worksheets columns based on another worksheet.
Data is extracted from a database into excel however users can configure the columns in the initial system. to how they like This causes problems when the data is copied into an excel spreadsheet I have created as the data copied will not be in the same column order as is required.
How can i reorder the columns without physically having to cut and paste the columns to match?
I have attached a sample spreadsheet.
You will see on the spreadsheet that 'fixed columns' is the order that i require the data however 'variable columns' is not in the same order.
I have created a userform and a command button to bring up the user form but when I click on the command button and the user form pops up I am not able to enter any data, the entire page freezes
This is the code
Private Sub CommandButtoncancel_Click() unloadme End Sub Private Sub CommandButtonOK_Click() With Workbooks("RETS results version 2.xlsm")
This is weird - if you delete a sheet that contained a control then
a. showing a modeless userform resluts in a userofrm that goes invisible at subroutine End b. public variables lose their value
These things do not happen if the sheet did not contain a control. Attached is an example file - put the inputfile.xls in your default file location (or add a path in the code) then open the ProblemDemo.xls and run the main macro to see it fal - isthis another Excelbug I've found?
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 several non-modal userforms in my App, some of them have date-fields that require manual entry typing of dd/mm/yy etc (No single userform has more than one date-box in it, this I think may be pivotally useful)
Now the Userform 'Calendar' that is built on the class of the same (cCalendar) name, has the write value line 'ActiveCell.value = theCal.value'
I'm looking to change this to refer to the correct userform.Textbox value, depending on which form is open.
I would imagine I could simply have a global string, whose value is set (or re-set) whenever a Userform is initialized (some sort of 'ActiveUF.value = Me.Name), where I get lost is referring to the components by name, so as to have a case statement by where I go:
Code:
Private Sub theCal_AfterUpdate() Select Case ActiveUF Case "AddForm" application.vbe.components("AddForm").controls("AddFormDatePicker").value = theCal.value Case "EditForm" '.... etc end select end sub
better way of doing this (instead of passing around the userform name as a variable) - or proper syntax for referring to controls outside of the 'active' userform (but an open userform nonetheless)?
Every time I have to do this particular thing with userforms, I completely forget how, and the object browser always leads me on an infinite loop of Application.vbe.activevbproject.vbcomponents.vbe.active....
PS - there may be one slight complication to the process - one of the forms, has a 2-tab page in it, each page having similar (but named differently) fields. So I may need to be able to throw in 'Activepage' or whatnot
I Have a Userform which Have My Data i Print User Form Using Print Command Button And My Code Is
[Code] ......
But Its Printout Whole Form I only Wants To Print contents of Text Box's Or only Text From Userform TextBox. How To Print out Only Content of User Form Not The Whole Form ...
What I would like to do is to be able to open a second workbook from a user form, preform some work on it then save and come back to the same place in the original user form.
So in steps:
1 : user clicks command button to open user form 2: user then clicks on command button on userform that opens 2nd workbook via a yes / no message box, but closes userform on 1st workbook (would be ideal if this could stay open, but hidden) 3: user then does work on 2nd workbook, 4: userform on 2nd workbook saves then activates the 1st workbook and reopens the userform
This is where no matter what I try I cant get the command button on the 1st userform to be clicked automatically so the yes / no message box appears.
This is part of the code in the 2nd sheet commandbutton that saves / closes / opens
Code: Unload Me ActiveWorkbook.save Windows("ABC.xlsm").Activate Sheets("Request Sheet").Activate Call Sheets("Request Sheet").ForceClickOnBouttonXYZ Call UserForm1.CommandButton6_Click 'this is where I cant get it to work!! Windows("xyz.xlsm").Close ABC is the 1st workbook xyz is the 2nd workbook
This is the code on the 1st workbook I use to call on the 2nd workbook
Code: Public Sub ForceClickOnBouttonXYZ() Call CommandButton1_Click End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then Application.ScreenUpdating = True Unload Me RestrictedOptions.Show Else Cancel = True End If End Sub
Trying to use above code to unload active userform and show new userform when red X (close) selected by operator. With the code as is, the Unload Me leaves the form on the screen and displays the RestrictedOptions form. If i remove the Restrictedoptions.Show, the Unload Me does remove the original form.
When I run the userform initialize procedure to reset the values in text boxes and the like instead of resetting like it should, now it closes the userform completely and then won't allow me to show it again, what could be the problem?
Private Sub UserForm_Initialize() Me.MultiPage1.Value = 0 TextBox3.Value = ActiveWorkbook. Sheets("Sales Invoice"). Range("G15").Value Dim hWndForm As Long Dim hMenu As Long hWndForm = FindWindow("ThunderDFrame", Me.Caption) 'XL2000 hMenu = GetSystemMenu(hWndForm, 0) DeleteMenu hMenu, SC_CLOSE, 0& End Sub
The Dim stuff down is to gray out the x button, there are also some module level declarations to go with that...
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, ByVal bRevert As Long) As Long Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long Private Const SC_CLOSE As Long = &HF060
the userform shows when the workbook opens and is then hidden when the user has finished entering values, then when the user goes through the process of being asked to print and save, they are then asked if they would like to create a new record, if yes then it shows the userform again, but the userform is still filled with all the stuff previously entered. I tried using the unload me instead of hiding and that wouldn't work at all, didn't give errors just didn't show the userform either, this at least shows the userform, but now when the user goes to clear the information by initializing the userform again, it simply closes the userform and then it can't be shown again either.
[url]
This is the link to the ZIP, and here are some instructions for setting it up to work.
The contents of this need to be unzipped into a folder called SyntheticShield that is placed in the C: drive that way all paths begin with C:SyntheticShield and then the other folders or files will be referenced correctly. The template I'm having problems with is the SyntheticShieldInvoiceMaker template, when you open it you'll be prompted whether you want to create a new invoice, number is final blah blah blah, say yes, then it will ask if you are importing from the Quotemaker which you aren't say no, it should then show the userform as it should. Then you can go through that process and by pressing either the create invoice or go to template directly whatever, you can hide the userform. Then you press the command button (red) a userform is brought up asking if you'd like to save without emailing, save with emailing or close controls, as for right now, I'm just getting the save without emailing to work the rest is all the same just a few tidbits of code. So click save without emailing, it should then prompt an are you sure message box, click yes it will do some things, then it will ask if you want to print, click no, then it will ask do you want to create a new invoice, click yes, this should then start the process all over again by calling the workbook_open procedure, however, when you go through everything, and click no to the import from quotemaker part it won't show the userform. And at one point it would, but then I couldn't initialize the userform without it disappearing and not being allowed to be shown...I tried putting a command button on the template to show the userform, but it wouldn't do it either.
having trouble with the details of actually making these features work for me. I figured out how to create a UserForm with a ListBox and 2 buttons, but I don't know how to proceed from here.
1. Populate the ListBox in the UserForm with a list of names from the sheet "Totals_Dropdowns", cells K2:K11
2. Make the UserForm pop up and enter the user's selection into cell C40 of the "Regenerate Request"
I know these are very basic operations, and I'm pretty sure I can figure out the rest of my problems once I can get past the above.
I would have like a chance to be able to remove the apparent potenitial dangerous problem from the thread below and not close it after 10 mins. I'm not on the site permenantly and keep dipping back in eveynow and again. I dont know what the issue is as when I open the file up I dont get any error messages. I have tried this on my machine using Office 2003 and Vista also another PC using Office 2003 and XP
[url]
The only error I get is a message saying Disk or Network error, when testing it on the XP Machine this is because doesnt have access to the Database it sends the data to.
I'm trying to find 4 digit duplicate in any order from 0-9 in 4 different columns and because they are from 0-9 in each column it doesn't seem possible.
Can i take a name that is in "normal" order and change it so that it is in the format of "Lastname, Firstname Middlename" regardless of how many names are represented?
I have used a simple concatenate formula along with some left/right formulas to get this working if every single person in the list has only their first and last name, but I get errors if the person has 3 or more names listed.
So what I want, is a formula that will turn these names:
Carl Johnson Carl Robert Johnson Carl Joseph Robert Johnson
into these names:
Johnson, Carl Johnson, Carl Robert Johnson, Carl Joseph Robert
I have a master order sheet with 100's of items on it which I use to go through my stock room and enter the qty's I would need to order. I have then created a seperate sheet that I use as a P/O to my supplier, this picks up all the info from my order sheet. everything works well except when I do NOT need a paticilaur item. On the P/O it still shows but with 0 qty, I would rather it not show at all and move on to the next item that does have a QTY.
I have a list of some 200 odd items on one sheet that is my price list; what I would like to do is have another person - who may only have very basic, or virtually no excel skills at all, be able to select items from the price list and have each of those items go to the top of an order form on another page.
It needs to be automatic, and anybody that has only basic excel should be able to use it.
I need a macro that will copy a row from Sheet1 and paste it in sheet2 but the row must be inserted in ascending order based on the enties in sheet2. The order in sheet2 should follow colums A, B & C
The tab order in an Excel spreadsheet is driving me nuts. I could not get it on my own and found some code that seemed to solve my initial problem. However, I still can not figure out why I can't go backwards. It will ONLY go forward no matter what you do. If you try to select a cell behind or in front, it just tabs to the next cell in the array. Can anyone help before end up sitting in the corner of the nut house crossed-eyed and drooling
I need to create many XY charts in a VBA macro. For each chart, I need to select a particular column for the X dimension, and a particular column for the Y dimension. When I use a named range to define the X and Y columns, my macro works fine for those instances when the X comes first. However, if my desired Y dimension comes first, I cannot find a way to correctly select these.
The context is such that my spreadsheet always has the same data fields in the same columns, but the numbers of rows vary. In addition, I need to dynamically select which rows to use, based on the values in the columns to be plotted. I’ve figured out how to do this within the macro, except for those instances when the Y column comes before the X. An example when this works:
In the above example, variable ‘FirstBias’ is computed previously in the macro. I realize that I can rearrange columns in my spreadsheet to avoid this, but that is much less convenient, and less elegant, and I think there must be a way for a macro to do this automatically. I can do it interactively by cutting and pasting the data ranges in the chart wizard dialog, but I need this to be automated. I also figured out how to automate it in the case where the X and Y columns have fixed rows, by adding the commands below:....................