I have a hidden worksheet (in my add-in) where I store various configuration options for my processing. Among these are some cell formats that I apply to a target worksheet for the user to reformat their sheet.
I want to give the user the option to change some of these formats (font name, size, color, interior color). Is there a way to use a userform textbox to let the user format the text and fill options, or how would you recommend I do this?
I want to be able to store these options in my hidden config sheet so they can be applied every time, but do not want to unprotect the user worksheet for them to make the changes there.
I have a userform which allows data to be entered onto a worksheet. One of the fields (a textbox with the standard calendar control) is the date. When the transaction saves, it correctly saves the date as dd/mm/yyyy using
ActiveCell.Value = TxtDate.Text
I also have a form which allows the user to amend a transaction by loading the data onto the form, amend it and save it back to the worksheet.
The problem is that when it picks up the data and re-saves it, it's resaved in the format mm/dd/yyyy which is a problem because I use the month as one of the categories that users can filter the data by.
I also have the following line immediately after each time the data is saved from the form to the worksheet:
I am importing data (using filestream) from txt files with comma delimited values. When I import dates into General type cells it turns a date of dd/mm/yyyy into mm/dd/yyyy only if the date makes sense.
I would like it to import dd/mm/yyyy as dd/mm/yyyy.
I am also interested to know how Excel/VBA deals with dates coming from various sources, what quirks or mode of thought it follows.
I have a file here that already has macros in it. The file is basically a excel document generator. When you click create sku, the document will generate multiple documents based on the user inputs.
1) In the generated documents the original "generator" file creates, I need generated files to have column B and D formatted to TEXT, currently all the generated files are formatted to general. (This code is in module 1, line 84 col 34.)
2) The other problem is I need to append the value in Cell N1 in the "sku data entry" sheet to be appended to the generated file names. (this part of the code is is in module 1, line 150 col 28.)
I was unable to attach my file to this thread because it was to big. however I copied the module where I think the code is causing problems:
Sub procData() ' Starting point for read/extract process Cells(4, 6).Select ' Range = F4 (row 4, col 6) For x = 6 To 52 Step 2 ' col F to col AZ
I receive sales data from my wholesalers every month and I continually have to format them to fit the structure of our in-house database. I wanted to design a macro that would automate this process. However, in some months, the files are recieved in a format that is a bit different from the wholesaler's usual format.
Is there such thing as an initial "litmus" test where I could try running the macro and if it doesn't fit the usual structure, there's an error code and I could do it by hand?
I have a spreadsheet that is very large and formated a certain way. I want to make sure that a user cant put the cursor in the lower left corner and copy cells by dragging, copy & paste, or do anything other than input data and be able to highleght text and reinput data in case they mistyped or misspelled the data.
ex: user clicks on cell E33 and types in '1234568' and then move to next cell. The user can click back on E33 and can correct by retyping. That is all the user is allowed. The cells in question are also in ranges if this helps. EX: 'E33:AJ67'
In the toolbar there's a section titled "Number" which allows you to change cell formats with selections named General, Number, Accounting, Date, Time, etc. I want to permanently change some of their default formats.
For instance, currently when I select Number the default is -4000.00. I want to PERMANENTLY change its default to (4,000.00). How do I do this?
i have some existing code which is trigerred when anything is input into column c. The code then adds various information in another three columns. One of which pastes a vlookup formulae, and i would like this forumlae pasted into the column c cell which i initialy edited, in order to remove the requirement for one additional column.
The existing code i have is:
Code: Private Sub Worksheet_Change(ByVal Target As Excel.Range) Dim MyText As String MyText = Environ("username") If Target.Cells.Column = 3 Then With Target If .Value "" Then .Offset(0, 2).Formula = "=VLOOKUP(D:D,'P:TAOffshoreTAOffshoreTreasuryRecsGeneralCommit ID''s for control Sheet - Do not move or delete[commit ids - DO NOT DELETE OR MOVE.xls]Sheet1'!$A$1:$B$65536,2,0)"
[code].....
I have tried changing the offset to (0,0) or changing the offset to 'target = ', which does add in the vlookup but then the macro debugs at the 'If .Value "" Then' code?
I have a workbook with 4 worksheet that store different type of data. It also has a userform that load at start of the application which is to search the data in the workbook. The userform has a combobox where the names of the sheets are stored. when the user selects say Sheet2 in the combobox, it enables the relevant textboxes on the userform and activates the worksheet at the change event. The userform has a search button that searches all the worksheets based on the text entered in a textbox.
The problem: how to search based on 1 textbox. What I want is: say for e.g the end-user selects sheet2 from the combobox, this intern enables 4 textboxes (Name, DOB, Nationality, ID #) on the userform. The end-user should have the liberty to enter data in 1 and/or any of the textboxes. The search should be performed, that if data is only in 1 of any of textboxes then give all rows that fit that criteria and display in a temp worksheet. if say the name and dob is filled by the user than what matches both should be displayed in a temp worksheet. if say dob, name and ID# given so the search button should narrow down to fit all 3 criteria and then display result in temp worksheet. As if mentioned data can be entered in either just 1 or any or all textboxes.
E.g. the worksheet is (Columns are Name, Nationality, DOB, ID#)
row 1 = name: Steven Martin, DOB: 27-may-1993, Nationality: Trinidad & Tobago, ID #: 1234567 row 2 = name: Gary Richards, DOB: 2-FEB-1993, Nationality: British, ID #: 456789 row 3 = name: David Cohen, DOB: 27-May 1993, Nationality: American, ID #: 98765 row 4 = name: Roberto McDonalds, DOB 21-Jul-1962, Nationality: British, ID # 654321 row 5= name: Gary Richards, DOB: 01-Dec-1978, Nationality: Australian, ID # 1234567
Now if the user enters only name as "Gary Richards" and search then row 2 and 5 should be displayed in a temp worksheet. if user enters name Roberto McDonald and ID# 1234567 then it should not display anything. if user enters DOB 27-may-1993 and nationality British and ID # 1234567 then as well shouldn't display anything and should a msgbox "no data found".
Attached is book in which, when a choice is selected from Drop Down list in ColumnF the macro has to do the need.
When the macro was written it was working well. But when I tried to change it as a Worksheet_SelectionChange event nothing is happenning even though a choice is selected from drop down list.
Basically the situation I have is Sheet2 has many references to cells in Sheet1. Sheet2 is for all intents and purposes a kind of nicely formatted report form, and Sheet1 is the input form.
My ultimate goal is to automatically resize row heights on Sheet2 when cell contents change on Sheet2.
Using a worksheet_change event isn't working I presume because it doesn't see the formula output change as a worksheet change, the worksheet_change is firing only when the input is changed in Sheet1.
how can I capture these formula output changes on Sheet2 (triggered from input on Sheet1) OR is there a way of making a particular sheets rows always adjust in height to best fit?
How would I add this formula as a worksheet function with VBA. I can't see INT, MOD or Year in VBA. Also want to change C2 to change to activecell column + row 2.
I am fairly new to macros and have trouble with VBA. I have a file with multiple worksheets. Each worksheet contains the name of a specific location in cell A8. I want this name in cell A8 to be the name on the worksheet tab for each worksheet in my file but do not know how to accomplish this. Is that even possible?
Workbook contains the following sheets : PIR TrackerChartsSAMPLEFINALValidations
When a change occurs on PIR Tracker, the following occurs:
VB: Private Sub Worksheet_Change(ByVal Target As Range) Application.ScreenUpdating = False Dim Rng As Range Set Rng = Intersect(Target, Range("A1:A500"))
[Code] .....
I also want the pivot tables on SAMPLE and FINAL to be updated. What do I need to do?
In cell A1, I have the month number (eg, 1, 2, 3,). The month number reflects current month and will automatically change with every month. For example, right now it’s 6, next month it will automatically change to 7. Each two columns in Range A10:X20 represents the data from January to December. I want to use a worksheet event to change the background of the current month two columns in the range to yellow color and the two columns in the range will be visible when I activate this sheet.
I have embedded a worksheet called Rawdata" into a userform. Is has a number of text boxes on the userform, all the text boxes copy correctly to a worksheet called Rawdata, however i cant get the spreadsheet data to copy from the Userform to the sheet called Datapad.
The worksheet in the userform is from A1:G600, this data needs to be copied back to the Datapad worksheet B2:F601.
code so far:
Private Sub cmdadd_Click() Dim iRow As Long Dim ws As Worksheet
looking to only allow a check ("x") in a column for a reconcile - type worksheet. Am I close?
Private Sub Worksheet_Change(ByVal Target As Range) 'Data protection. Only allow "x" in the "cleared" column. If anything else is entered, a message box informs the user 'and the cell contents are cleared. Dim val As Variant Dim msg As String If ActiveCell.Value "x" Then msg = "You can only enter an X in the cleared column." ActiveCell.ClearContents End If End Sub
I have used a database template from this site and changed it to suit my needs but I have a bit of a problem with some of the code. I know how to update the worksheet with the relevant userform text fields and in another project I did I have successfully sent userform text fields in the body of an email.
For this project I want to update the worksheet AND send an email at the same time. However, using the two pieces of code together is causing an error that I can't seem to solve (using my very limited vba knowledge!). The code I am working on is below and I have highlighted the line that is getting the error message. C
VB: Private Sub cmdSubmit_Click() 'Submit new record Dim ws As Worksheet, lRow As Long, Str As String [code]....
Is there a way to either change this so that it lets me to select the whole area or a way to make a macro to do what this does to one cell?
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Target, Range("M13:IR458")) Is Nothing Then Select Case Target.Value Case "1" Target.Font.ColorIndex = 20 Target.Interior.ColorIndex = 10 Case "Good" Target.Font.ColorIndex = 2 Target.Interior.ColorIndex = 35 Case "Stable" Target.Font.ColorIndex = 2 Target.Interior.ColorIndex = 27......................
or it's text box/ labels depending upon learning of how many records the application is working with?
I remember some body here has said that you could either 1 - create many labels and text box and then once run the application hides the number of the ones not use or
2 - you could once run the application have visual basic create label and text of the right number associate with the number of records working with.
I have looked at both these option and have found nothing. So is this possible and show some examples if you have them.
Below is code i wrote to change a password. password value is hidden in cell iv4 in different sheets. My userform contains 3 textboxes and button to run macro. As long as old password matches cell value AND new password is entered twice correctly then it will change value in cell iv4.
I've got a userform for entering data in a workbook with sheets for each month. ie: Jan'06 , Feb'06, etc. I've added a combobox that looks at my list of these sheets and when a certain month is chosen I would like that months sheet to come up behind the userform, so that the data is entered there when the form is completed.
The other option is to not change the sheet focus but to direct the data to the appropriate sheet based on the combo box. (No matter what sheet is currently selected)
On a related note, I have a text box showing the last date entered and I would like to make shure that it is updated based on the sheet selected in the combobox.
Background: I currently have an some VBA code that will kick off a series of calculations on a remote server (7 calcs). I am showing a modeless form, to allow the user to continue to work in Excel while the external calculation is taking place. The code checks every few seconds (using .OnTime) to check the status of the calcs, and as one finishes, it starts the next calc, and updates the form (ie - "Running Calc #3 of 7", etc).
Problem: when I change the label on the form, it gives the form focus. So, if the user is in the middle of doing something, they are suddenly stopped, and have to click back on the spreadsheet to continue.
Questions: Is there a way to update content (label) on a form, without that form getting focus? If not, is there another way to provide updated feedback without disrupting what the user is doing? My fallback is to simply not update the form with progress reports, but since the calcs can take 5min or so, it would be good if they knew things were progressing.
I present a form (a calendar) twice in my routine to the user but I want to change the Caption of the Label on each pass?
e.g.
The first time it's displayed: 'Please select a start date' (calendar closes & goes off and does stuff) ... and on the 2nd display: 'Please select an end date'.
I have a Password login userform on my workbook for users to enter their username and passwords.
Now i want to make a userform where users can change their passwords.
With the login userform i used a application vlookup function to see if the username and password are corresponding. how can i code a userform to look for the username in column A and then change the password in column B?
I have a userform that i have set the showmodal property to false.
This form has a list box that is populated with a huge list of items. I have a textbox in the userform that i use as a filter. so as the user types in something it filters the results in the listbox.
This was working fine but I added to the code to put a tooltip in when hovering over a item in the listbox. (using windows API to achieve).
The problem now is after i type one letter in the text box and it runs the change event it doesnt place the cursor at the end of the textbox anymore to continue typing.
I have tried setting focus to the textbox at the end of the event but nothing happens. I have searched all over the internet with no luck.