VBA Slows Down And Breaks After Many Iterations
Feb 18, 2010
I have a macro running in Word (and referencing Excel) that is meant to iterate 15,000 times. But, after 100 times, the process slows and stalls.
I have put in a few "DoEvents" and "ActiveDocument.UndoClear" in Word, and I set "Application.EnableEvents = False" in Excel. These settings got me up to 100 iterations (previously the program would stop after even fewer )
Does anyone have any ideas or suggestions? I'm not sure what information you'd need to be informed about the problem, and I don't want to tell you too much! Do please ask if I'm not being clear.
View 9 Replies
ADVERTISEMENT
May 12, 2007
in getting the formula right for this:
I have a value which I want to increase with 1,5 % of last calculated value (the initial value is 40 in the example below).
0,01540
140,60
241,21
341,83
442,45
543,09
643,74
744,39
845,06
945,74
I only need 20 iterations.
View 9 Replies
View Related
Jun 11, 2014
Creating a spreadsheet to inventory cups each day. When a macro was invoked do the following:
-unprotect the worksheet
-cut/paste the completed sheet below the current
-bring in the values form the previous day's inventory
-set protection on new spreadsheet to lock the cells
-blank out old values
-reprotect the worksheet
Pretty straightforward and seems to work fine for a few iterations, then crashes with "Run-time error '-2147417848 (80010108)': Automation error. The object invoked has disconnected from its clients.".
As FYI, this code was mostly generated using a record macro session, so no variables involved.
Here is a screenshot of the spreadsheet as it sits now:
spreadsheet.png
Here is the code:
Sub NewDay()
'
' NewDay Macro
' Create new day and copy cup count from previous day[code]....
View 2 Replies
View Related
Mar 25, 2012
Is there a way to make sure iterations are turned on at all times? I have turned it on, but periodically it seems to revert back to off.
View 9 Replies
View Related
Feb 25, 2008
I'm looking for a macro that changes Iterations from 100 to 10. I have a circular reference that I can't seem to completely remove, so my endusers complain about the pop-up warning. I know I need to resolve the circular ref issue, but in the meantime I would like to create a button that makes it easy for an enduser to change the Iterations with one click. A secondary question is, "Am I sacrificing significant accuracy by limiting Iterations from 100 to 10? I'm dealing with $'s, so the nearest penny is good enough.
View 2 Replies
View Related
Apr 30, 2008
I am using solver to get a list of values that make up mulitiple known values. I would like to make the code easier to apply instead of copying it and changing it for every cell. Auto Merged Post Until 24 Hrs Passes;
Sub Macro()
SolverReset
SolverOk SetCell:="$F$28", MaxMinVal:=3, ValueOf:="0.002", ByChange:= _
"$F$31:$F$37"
SolverAdd CellRef:="$F$31:$F$37", Relation:=1, FormulaText:="100%"
SolverAdd CellRef:="$F$31:$F$37", Relation:=3, FormulaText:="0"
SolverAdd CellRef:="$F$31:$F$37", Relation:=3, FormulaText:="$E$31:$E$37"
SolverSolve userFinish:=True
SolverReset
SolverOk SetCell:="$G$28", MaxMinVal:=3, ValueOf:="0.008", ByChange:= _
"$G$31:$G$37"............................
View 5 Replies
View Related
May 2, 2008
Is there a faster method than this code? it slows way down when the range is expanded b/c it loops through every cell.
Private Sub Worksheet_SelectionChange(ByVal target As Range)
If target.Cells.Count > 1 Then Exit Sub
Set Rng = Range("A1:GA400")
clrind = 42
If Not Intersect(target, Rng) Is Nothing Then
For Each cell In Rng
If cell.Interior.ColorIndex = clrind Then cell.Interior.Pattern = xlNone
Next cell
End If
End Sub
View 9 Replies
View Related
Mar 31, 2009
I have a SheetSelectionChange event that stores the Target.Row in a cell on the active worksheet.
View 15 Replies
View Related
Mar 24, 2013
I have written this macro which I run about 1000 times in a loop. It runs solver and copies the results to a row in my spreadsheet so i end up with a sheet of solver results.
The problem is that every time it runs it eats up memory and slows down. I timed it and the first 100 runs take about 2 minutes and the last 100 takes about 15 minutes, the ram use increases by about 4gb in that time too.
As this is the first VBA code I have written and I have been learning as I go along, I assume its something I have done wrong in the code.
Sub run()
'
' run Macro
' run solver
[Code].....
View 2 Replies
View Related
Feb 26, 2005
I have an AutoFilter list of 14,000 rows by 14 columns, and the cells have some specific formating: fill color, font,
protection status, wrap, etc....
There are an additional 7 columns of formulas to the left of the filtered range.
The strange thing is----
-WITH the formating, trying to Unfilter the list takes 2 min, via a manually activated Data>Filter>ShowAll OR via a macro run of 'ActiveSheet.ShowAllData' .
(In an attempt to optimize speed, the VBA macro sets calculation to manual before the 'ActiveSheet.ShowAllData' and screen updating set to false.)
-WITHOUT the cell formating (eg. by doing Edit>Clear>Formats), the ShowAll takes about 3 sec.
Does anyone have experience or an explanation for this?
Why should the Formating affect Filtering so much?
Options for improving speed of autofilter?
I don't know if, or why it would be a factor, but note that I am using Dynamic Named Range and VBA to expand/contract the formulas
and formating to size of the list/table. Although this is not done during the filtering use.
Here is the dynamic formating code
Sub DynFmt_List()
Application. ScreenUpdating = False
With Application
.Calculation = xlManual
End With
I am wondering if some strange 'artifact' of manipulating the formating is becoming a factor?
View 4 Replies
View Related
Jan 29, 2007
I've been using the following bit of code to run a macro at the specified time:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Application .OnTime TimeValue("12:00:00"), "GetData"
End Sub
The GetData sub executes a shell script and then pulls data from the result. The problem is that the macro runs 140+ times, and so I get 140 windows popping up and the system practically stops. I can't figure out why this is happening, as there are no loops or any sort of repetition in the code. Any help is greatly appreciated as this problem occurs with more than just the one spreadsheet.
View 9 Replies
View Related
Mar 16, 2013
I like the look of when only the used columns and rows are shown. I like to hide all unused columns and rows, and have the background and a minimalist spreadsheet.
HOWEVER, is it just me, or does Excel move a lot slower when thousands of rows and columns are hidden? Particularly, opening files seems to be slower. I'd love to delete them entirely from existence, so Excel only has a few rows and columns to work with, but that doesn't seem to be an option.
View 2 Replies
View Related
Nov 28, 2006
I need to remove all existing page breaks in a document and add a page break every 72 rows. I've tried some similar codes from this forum with other functions that I don't need in it.
View 7 Replies
View Related
Aug 13, 2009
I want some code which will automatically insert a page break every time the data changes in a column. In column B- the data is structured as below;
DOG
<blank cell>
<blank cell>
DOG
<blank cell>
DOG
<blank cell>
<blank cell>
CAT
<blank cell>
CAT
<blank cell>
MOUSE
<blank cell>
MOUSE
MOUSE
<blank cell>
Etc
The code I want would insert the page break every time every time the data changed- but not where there is a blank cell. I hope this makes sense. I realise the blank cells complicate things- the blank cells separating the data cells are there because there is additional;data in columns C,D,E etc
View 14 Replies
View Related
Oct 2, 2007
I have a worksheet with 760 names on it. The first row are headers, 2nd row on is the data. I need to break the data up into 25 rows a piece, excluding the headers. I am making rosters, so each roster would have twenty five names per sheet. Of course I know I will have a couple of names left over, but this would help with the bulk.
View 3 Replies
View Related
Sep 5, 2013
I have a spreadsheet that I need to print, but Excel automatically puts in an automatic page break every cell. I have tried all other solutions to this problem posted on this site (page setup, printer issues, etc).
Spreadsheet attached.Posted Version.xlsm
View 1 Replies
View Related
Oct 25, 2007
I'm using the this code to print some info out of an existing worksheet and I'd like to force excel to remove all pagebreaks, as the last column or two is always printed onto another page. Does anyone know how to programatically remove pagebreaks?
View 12 Replies
View Related
Dec 2, 2008
how to write code to set page breaks every 4th column, or in certain intervals. For rows I have a simple .FitToPagesTall = 1, but I'm looking for something more dynamic for the columns.
View 4 Replies
View Related
Apr 28, 2009
I have a sheet named SymbolList in which I list stock symbols in the first column, and have row headings in the first row. I use the following sub to get stock quotes from yahoo. I developed a loop that works in steps of 200 because yahoo has a limit of 200 stock symbols that can be acquired in each request. The loop should go through the whole list in loops of 200 until the last row or if by mistake there is an empty row. The problem I face is that the loop does not work in a consistent manner, for example if I use 200 as the step limit, the sub skips all loops and only gets the last one, if I use a limit of 100 the sub skips the first loop and then proceeds, it only works well at a limit of 50.
View 11 Replies
View Related
Jun 14, 2009
[Solved by Myself]
.ActiveSheet.HPageBreaks(1).location.row
View 2 Replies
View Related
Oct 13, 2011
For some reason, when I 'Print Preview' an excel file, it puts the page breaks in one place.
However, when I save it as a PDF, it moves them slightly, meaning that not as much fits on one page.
View 2 Replies
View Related
Mar 17, 2012
I am working on a spreadsheet that has QTY discounts; all based on how much you buy of a certain Part#. The problem is that some Part#s use different QTY breaks. I am using VLOOKUP and I can only get it to show one QTY break level, and I need it to show multiple QTY breaks depending on the Part#.
Posted below is a sample of what I am working with:
QTY Part#
100 3
=IF(OR(B2="",A2=""),"",VLOOKUP(B2,A3:F10,LOOKUP(A2,{0,3;26,4;100,5;500,6}),FALSE))
Part# Description 0-99 100-199 200 +
[Code] ......
View 7 Replies
View Related
Apr 23, 2013
I am having serious issues inserting page breaks using VBA. I have even taken code from the Microsoft website and it still crashes.
Code:
Sub InsertPageBreaks()
With Worksheets(1)
.HPageBreaks.Add.Range("F25")
.VPageBreaks.Add .Range("F25")
[Code] ......
View 2 Replies
View Related
Dec 17, 2007
I have a macro that needs to walk down a list of values and when it finds breaks in the values, it will insert a formula for a calculation. The problem I'm having is getting the code to loop correctly until it finally finds the value "End" when it should stop (when I play around with the code, sometimes I can get it to continue the loop, but it blows past "End" and then it experiences an error because it can't end.
Sheets("Master").Select
Range("B1").Select
ActiveCell.Offset(1, 0).Select
AssetIDStartRange = ActiveCell.Address
X = 0
Do
ActiveCell.Offset(1, 0).Select
X = X + 1
Loop Until ActiveCell.Value ""
SortCriteriaName = ActiveCell.Value
ActiveCell.Offset(-1, 1).Select
ActiveCell.Formula = "=SUMIF($B13:$B5000," & """" & SortCriteriaName & """" & ",$H$13:$H$5000)"
ActiveCell.Offset(0, -1).Select
If ActiveCell.Value "End" Then....................
View 9 Replies
View Related
Apr 25, 2008
I'm importing a text document into excel, and I have these page breaks that start with a c in the leftmost space(no other lines start with a character in the 1st space) and 15 spaces underneath it are page headers. I'm trying to create a macro that scans the entire A column for any "C" in the 1st leftmost space, highlight and delete(move page up) that "c" and the 15 spaces following it. I want the macro to loop until it ends.
So far, this is what I got for selecting C:
Dim c
For Each c In Range("A1:A306").Cells
If Left(activecell.characters.value,1)="C" Then
c.Select
View 9 Replies
View Related
Oct 30, 2008
I have a file I inherited that uses many VLOOKUP formulas. It was written in Excel 2003, and works perfectly there.
However, I just had to install Excel 2007, and when I open this file, all those formulas return #VALUE! errors.
Is there a known issue with VLOOKUPs in 2007 versus 2003?
An example of one of the errored formulas is:
=VLOOKUP($C3,ItemMaster!$A$1:$N$5800,2)
It should be noted that the first row of this range is the column titles, rather than data. But as I said, the formula works fine in 2003.
What's completely bizarre is that if I edit the formula to either of the following, it works fine:
=VLOOKUP($C3,ItemMaster!$A$2:$N$5800,2)
=VLOOKUP($C3,ItemMaster!$A$1:$N$5800,2,FALSE)
Changing the first row of the range to row 2, or adding the FALSE at the end makes it work. But why would it work in 2003 and not in 2007?
This is an *enormous* file, and this is just one example of a *load* of formulas that are returning errors (so far, all seem to be related to VLOOKUPs - at least the ones I've found so far). It's 25MB worth of complicated formulas, with external links to Access databases for the source data, just to give you an idea of the scope. So going through and trying to find and then change every error that might be occurring just because 2007 doesn't like it is going to be a complete disaster. You never find them all. It might be simpler to just downgrade back to 2003!
View 9 Replies
View Related
Sep 26, 2009
If I copy for example from here ....
View 9 Replies
View Related
Jun 29, 2006
I have attached an example Excel file that shows what I am looking for. I have one sheet with a list of parts in inventory. Each part, we'll call them A-F, has a reorder point and will automatically detect whether or not the B column should say order or not. What I want is a second sheet that will list all the parts that need to be ordered continuosly, without the breaks where parts dont need to be ordered.
View 9 Replies
View Related
Mar 19, 2007
want to specify page breaks and set print areas when running a macro. Appears to work sometimes, but then breaks (hard and soft) pop up on their own). Currently using something like this to specify a 2 page wide view...
ActiveSheet.PageSetup.PrintArea = "$A:$Z"
With ActiveSheet.PageSetup
.FitToPagesWide = 2
Set ActiveSheet.VPageBreaks(1).Location = Range("P1")
End With
Can I force breaks to be more absolute (more accurately)?
View 7 Replies
View Related
Mar 20, 2007
I want a macro to assess whether there's a page break before column P, if so, remove it and continue, if not... continue.
View 7 Replies
View Related