userform1 has a combobox1 (list of customers) with an commandbutton1
userform2 has many textboxes
when I click on the userform1.commandbutton1 - userform2 shows with textbox1.text being what was in userform1.combobox1
when i am done with userform2 and click close to go back to userform1, chose a different customer and click the commandbutton1, userform2 opens with the previous value.
how can i clear the previous?
currently when i close userform2 with commandbutton1 i use the following code
I have a workbook, with coding that opens many workbooks and performs several updates in each one, it seems that for some reason there is build up of memory with big files etc, is there a way with code that after each workbook has been updated and before the master workbook loads the next workbook for update that i can clear all memory, similar to closing excel down completly and reopening ?
I am currently taking over a workbook from a colleague that contains 10 pivot tables. Spaced out over a few sheets.
Each pivot table contains a lot of information and my current workaround to refreshing them all is..
Step1:Refresh 2 Pivots, Step2:Save and Close document, Step3: Re-Open document and repeat Steps 1 & 2 until all refreshed.
I was wondering if there was any kind of code to clear the memory space being used by the pivots thus leaving the hard coded information behind.
That way I can just write some vb to refresh all the pivots and not keep saving and re-opening the document which takes sometime as its on a network drive.
What codes can I use so that when I click CLEAR FORM, all the data that I encoded in the textboxes of my current userform will be erased as if I have a fresh new form?
I have a bunch of TextBoxes on a UserForm, and I would like to create a Sub to clear all of them. Something like that:
For I = 1 To 10 NameBox = "TextBox_Area" & I For Each objControl In UserForm1.MultiPage_1.Pages(1).Controls If TypeOf objControl Is MSForms.TextBox And objControl. Name = NameBox Then objControl.Text = "" End If Next objControl Next I
But of course there is no Text method for Controls. And I cannot loop directly through TextBoxes instead of Controls. So what can I do ?
I have a userform that has 3 sections. In each section are a number of text boxes which, following input of a value in the first text box in the section (master box), self populate with data from a spreadsheet.
This works apart from when I change the value of one of the first text boxes. Is there a simple bit of code that if on the change of the value in the master box will reset the 'dependent' text boxes to empty?
I have this UserForm I need to clean-up but can't figure proper ways of doing it.
There's 2 ways to call the Form: 1) The main Sheet has a Command Button that calls the blank Form, which allows the user to enter & select data to be submitted to the sheet (using combo boxes, etc.).
2) If the user wishes to modify an existing entry on the sheet, he must click on it. This will call the Form which will be populated with the existing data on the sheet (per Row, since the Form enters data one Row at a time).
My problem is that I can't figure a proper way to Initialize my Form to either be blank (as for option #1), ie. have no pre-entered or pre-selected data in it, or to be filled with pre-existing data from the sheet (#2).
I tried to handle this by setting my ActiveCell = A1 when my CommandButton is pressed and check it when Initializing the Form (to initialize for #1 instead of #2), but that's totally not working.
I would like to make up an array that includes certain userform controls, such that I later on can use a loop to run through those controls.
My Problem:
First, in line 1 the Sub cbStep1_Click calls the Sub unloadSlotValues, but then the latter throws me back directly to the Sub cbStep1_Click into the next line (line 2). There is no error or something, the rest of unloadSlotValues simply gets ignored. How can I ensure to loop through all my userform controls listed in that array? (Finally, there'll be around 15 controls, I think.) Maybe my array-initialisation is incorrect?
This thread extends a simillar one you can find How to clear userform controls
Private Sub cbStep1_Click() Call unloadSlotValues '<-- 1. line frmStep2.Enabled = True '<-- 2. line frmStep3.Enabled = False '<-- 3. line End Sub
Function FindNth(Table As Range, Val1 As Variant,Val1Occrnce As Integer, _ Val2 As Variant,Val2Col As Integer, ResultCol As Integer) Dim i As Integer Dim iCount As Integer Dim rCol As Range For i = 1 To Table.Rows.Count If Table.Cells(i, 1) = Val1 And _ Table.Cells(i, Val2Col) = Val2 Then iCount = iCount + 1 End If If iCount = Val1Occrnce Then FindNth = Table.Cells(i, ResultCol) Exit For End If Next i End Function
To use this function, push Alt+F11 and go to Insert>Module. Paste in the code, push Alt+Q and save. Use the function as shown in graphic example. You can access it under "User Defined" in the Paste Function (Shift+F3).
Type Amount Sex Cost Purchased Cat 1 Male $ 5.00 22/05/01 Cat 2 Male $ 5.00 15/00/00 Dog 3 Male $ 20.00 25/04/00 Rat 5 Female $ 1.00 15/08/01..................
I have a list of account entries on sheet1 that go from 1/1/2014 to 2/05/2014. I want a userform that prompts for a cutoff date, where I will enter 1/31/2014, and it will then clear all entries AFTER the date that I enter into the userform.
I will be doing this on a monthly basis, and the number of rows will change each month.
I have the existing code below. What I would like to do is clear the ListBox of all previous records found prior to the next Find All event occurring. For Example I search for "M" and it finds 3 records and these are listed in the ListBox for the user to select from, then if the user searches for "Grealy" it finds 1 record and puts it in the list but the 2nd and 3rd record from the previous Find All event still remain.
I tried using the following code
Me.ListBox1.Clear
which clears the listbox but then as soon as you hit Find All following the above mention sequence you get the result as outlined.
Private Sub cmdFind_Click() Sheet1.Select Dim strFind, FirstAddress As String 'what to find Dim rSearch As Range 'range to search Set rSearch = Sheet1.Range("b2", Range("b65536").End(xlUp)) strFind = Me.TxtEmpName.Value 'what to look for Dim f As Integer
I'm having a problem with a macro clearing a formula in a cell. I have the same type of cell that doesn't have the problem but I can't find the difference between the 2 cells or difference in vb that's making it happen. I have to intentionally cause this to happen but don't see why it's happening. Do I need to attach workbook and describe what's happening? I have been copying and pasting from different sources as well as paying to have it created/started but it was expensive(for me) and I make nothing off of it, just use it at work. I am not proficient in Excel or vb but I'm desperately trying to learn as I go so as not to fork out a few hundred dollars again.
where the first columns has dates, the next column is bookname and the last column is the profit and loss for each book, i.e. the values that need to be addad.
Now, suddenly I do not get any numbers but just #VALUE! but if I change the range to a lot less, e.g. between Row B6 and B50, it works.
My questions is if this has to do with memory in Excel. Are there limits to how many formulas and how many names you can have before Excel crashes. I am aware that the 28 columns names are very large.
Are there any way of how to get around this, VBA-codes or other formulas that uses less power, not naming columns or what?
I have an excel sheet that has an onclose macro, and on certain computers i get an error message stating out of memory. can anyone explain why this is and how i could avoid it, by possibly clearing the memory first or something?
i have a spreadsheet on Excel 2000, which is 256 column's wide and 4000 long the only formulas are countif which start at row 1000-4000 and are copied to column 256. Just for the one sheet it is 14mb is this normal
I am currently using Excel 2003 to pull from 2 external spreadsheets to compile data. The first sheet (seniority list.xls) being referenced contains all of our employees (approximately 350 rows, but that can vary from 340 to 450) as well as some information (employee ID, full time or part time, etc.). The second sheet being referenced (pay.xls) contains a breakdown of all employees and their pay for a particular bi-weekly period.
What I'm looking to do is:
(1) Find out all of my current employees. I do this by referencing seniority list.xls.
(2) For each employee, find out how many hours they worked each week. I need to do this by referencing pay.xls. Unfortunately, that file works quite differently than seniority list.xls. Unlike the latter, which contains one employee number per row, pay.xls could contain as many or as few rows per employee as their schedule dictates. Each row contains things such as overtime, regular time, double time, alternate regular time, alternate OT, vacation, sick pay, etc. In total, pay.xls could contain as many as approximately 8000 rows. To determine how many hours they work, I'm using this CSE (array) formula:
(Note that the employee ID is in column A of the current sheet.)
I have a large amount of data on NBA teams and players that is extracted from external web pages. In order to have the data shown on separate sheets to do comparisons I have to use many array formulas and from what I have read that takes up a large amount of memory. I'm now at the point where I'm receiving a message that says "Excel cannot complete this task with available resources" when I open the workbook.
Is there any plausible way that I can resolve this situation? I have thought about converting the lookup formulas from arrays (index/match) to vlookups and hlookups.
I'm not as advanced with using Excel as most of you, and I realize I may be at a point to where I will need to use different software to analyze my data, but I would prefer to stick with Excel as it would be difficult to start from scratch and learn how to use a different program.
Regarding the Memory Leak problem with ADO, does anyone know of a workaround?
The workaround mentioned on Microsoft's website (http://support.microsoft.com/default...;en-us;Q319998) pertains to using ADO to retrieve a recordset from an Excel worksheet, not from an Access Database.
1) Does anyone know if those workarounds would also address retrieving a recordset from an Access Database?
2) If so, is the "SELECT INTO" workaround effective?
Is this Memory Leak issue relatively minor or only affecting Excel 2000? I'm guessing it must be one of those 2 things since the concensus is ADO is superior to MSQuery..
I'm using a Dell P4, 1.6Ghz, 512Mhz of memory (Win2K & Excel 2003), and it's bogging on spreadsheets that aren't that big and complicated (compared to thing's I did years ago, in the days of 386's and Win98)...
It hits the 100% CPU usage and stays there for minutes (especially when saving) on files that are only around 2M in size, yet it's not using much of the memory...
Spreadsheets large or small seem to have little effect on how much memory is being used... is Win2K allocating a fixed % of total memory for Excel to use?... can this be changed, so Excel gets to use more of the available memory?
I've been cleaning up and redesigning my spreadsheets to make them more efficient, but there seems to be a disconnect between my hardware specs and Excel's performance with files that aren't that big ~:-/
Disabling my antivirus software (Nortons) prior to saving, seems to speed it up a little, but this is not something I should be having to do...
One of my apps I run is very large and memory intensive, and there are several subsequent procedures which tend to either bog down or errors out before the program finishes running.
Is there a way to clear the memory out?
And adding more physical memory is not an option, I have 4gigs already and Excel can only utilize 1gig anyway.
I have tried Tools/Options/Security Password to modify, but it can still be saved as a copy to the network which becomes very confusing to many. If I use Tools/Potect Sheet, I need to re-enter the password for all sheets twice. I am trying have it so that everyone is read only, select people can edit (with same password). Password protect all sheets and the workbook with the same password everytime when the workbook is closed
Basically 2 questions
1) Is there a way of remembering a password so that when the workbook is closed it and all sheets are automatically protected with the same password every time
2) Is it possible to have it not copied unless it is opened by an editor
I have created an excel tool w/ A LOT of macros in it, and the tool "speaks" to the SQL server (downloads data from it and uploads it back). My big problem now is that every time I run any of the VBA code the amount of RAM that is getting allocated to Excel (2007) is increasing - I am checking it in the Task Manager. So if I work for a long time without closing down Excel - my entire RAM is getting consumed and the system slows down, and sometimes crushes.
I was wondering if there is a way in VBA to clean up memory that is used by Excel.
Do you have any hints? I am using extensively 3 things - screenupdating off; displaymessages off, and calculations off. But this speeds up Excel but doesn't reduce the memory usage.
I have a macro which filters data on one sheet and copies that data onto 34 new sheets . This works perfectly until the 25th pass when Excel advises that there is insufficient memory to continue. I assumed that this was connected to the clipboard and its ability to remember 24 chunks of data so I turned it off but still Excel gave up at the 25th pass. Is there a way that I can clear the clipboard during the macro's execution or is there something else going on?
1. The following is the VBA version of what i've been using:
Range("A1:J1000").Sort Key1:=Range("D2"), Order1:=xlAscending, Key2:= _ Range("E2"), Order2:=xlAscending, Key3:=Range("F2"), Order3:=xlDescending _ , Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _ xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _ DataOption3:=xlSortNormal now arrays are bigger than 1000 rows>> even bigger than 65536.
Such an array is stored in "arrBIG" and dimed as (1 to 10, 1 to 100000). The goal is to sort it by the 4'th, then 5th then 6th values in the first dimension - the one that is 1 to 10 - i call this the column.
I'm trying to import data into my sheet with formulae like this in row1(Columns A:I): ='F:Dir[File.xls]Sheet'!A2.
The files I'm importing the data from all have 50.000 rows and 9 columns, so I copy the formulae downward 50.000 times. This generates an error ('Not enough memory'), not surprisingly. I've also tried to do it in steps by way of VBA; first two thousand, copy and paste values, next two thousand etc. But that doesn't work either.
Does anyone know of a solution to this memory problem or a way to work around it (without opening the files with the data in them).