However, your knowledge of VBA leaves much to be desired.
Feel free to study this step-by-step guide to be able to use the code you found: These lines, as their names suggest, turn off screen refresh and recalculating the workbook's formulas before running the macro.
It also means that we cannot tell the macro recorder to not record our steps of selecting cells, sheets and scrolling around, even though the selecting of cells, sheets and scrolling is not needed in true VBA code.
The reason it speeds up code is because Excel no longer needs to repaint the screen whenever it encounters such commands as Select, Activate, Large Scroll, Small Scroll and many others. Screen Updating=False should be placed at the Start of your macro like shown below Note how we have set the Screen Updating back to True on completion.
Are you looking for the solution to your computer problem? This site is completely free -- paid for by advertisers and donations.
If you're not already familiar with forums, watch our Welcome Guide to get started.
Screen Updating = False Set rng Share = This Workbook. Range("A3") 'Get names of shares into array For x = 1 To 3 str Share Name(x) = rng Share. Offset(2, 0) 'Down two rows var Share Value(x) = rng Share Find. Value 'Col B Next x 'and put the values into col B of Portfolio sheet For x = 1 To 3 rng Share.
Offset(x - 1, 1) = var Share Value(x) Next Set rng Share = Nothing Set rng Share Find = Nothing Application.
Screen Updating = True End Sub Many thanks for the tip. All the procedure does is to find three companies' names as quoted on the London FTSE100 share index (which I have downloaded into a separate worksheet) then it copies their latest share prices (using the offsets), pastes them into my portfolio and I find out if I'm rich or continue to be poor. Well, like I said, the code can be made more efficient. The FTSE100 worksheet is updated by a query (IQY) from the procedure called from the button on the Portfolio sheet 'Finds' in turn the cells containing the three named comanies on the FTSE100 sheet and gets their latest share price from that cell's offset (2,1) and copies the results to the relevant row in the Price column back in the Portfolio sheet. Option Explicit Sub Get Share Values() Dim o Cell As Range, o FTSE As Range For Each o Cell In Range(Worksheets("Portfolio").