• Hi All

    Please note that at the Chandoo.org Forums there is Zero Tolerance to Spam

    Post Spam and you Will Be Deleted as a User

    Hui...

  • When starting a new post, to receive a quicker and more targeted answer, Please include a sample file in the initial post.

Preventing White Screen Flickering (App.ScrnUpdting) = False... Etc...

I've tried all of the following they work great. But when running a particularly lengthy piece of code my screens completely goes white temporarily (until it finishes past this long code). Performance wise my PC is pretty tough, so the fault is in my code somewhere. Is there anything else I can do to prevent this other than the items beneath?


I guess I should ask, which of these are really unnecessary(because I've just been using all of them under the assumption it could only help make things faster).


Application.ScreenUpdating = False

Application.Calculation = xlManual

Application.EnableEvents = False

ActiveSheet.DisplayPageBreaks = False

Application.DisplayAlerts = False

Application.StatusBar = False

Application.WAIT Now + TimeValue("00:00:01")


Here is an example of the long multiple search and replaces I'm running when the screen goes white.


I should warn anyone who looks at this it's organized with notes, but ridiculously long. I'm also open to any ideas to make this faster (the search and replaces MUST be ran in the order they appear though).


http://www.iandmyself.me/Snippet.It.Flickers.On.txt


http://www.iandmyself.me/Entire.Module.txt


What this code does is places start & end markers at the beginning and end of suspected links, and then deletes them.
 
A few points here


1. You have defined MyRange as Set MyRange = Range("A2", Range("A65536").End(xlUp))

but then you dont use it ?

[pre]
Code:
eg:
Range("A1", Range("A65536").End(xlUp)).AutoFilter Field:=1, Criteria1:="=*.*"
should be
MyRange.AutoFilter Field:=1, Criteria1:="=*.*"
2. Problem is you are doing a lot(252) reads and then writes of your data to/from the worksheet

This can be simplified by reading all the data into an array and then doing the compare in VBA and then writing it out again all in one pass


I am reluctant to show you this because it will create more questions than I'm sure it is worth, but it will fix your problem

[pre][code]Sub h()
Dim i As Integer
Dim myRange() As Variant
ReDim myRange(1 To Range("A2", Range("A65536").End(xlUp)).Count, 1)

myRange = Range("A2", Range("A65536").End(xlUp)) 'This will read all data into myRange in one pass
For i = LBound(myRange) To UBound(myRange)
myRange(i, 1) = Replace(myRange(i, 1), ".ac ", "URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1), ".ad ", "URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1), ".aero ", "URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1), ".ae ", "URLExtentionMarker")
'etc
'see my next post for the rest of the codes
Next

Range("A2", Range("A65536").End(xlUp)).Value = myRange 'This will write all data back in one pass

End Sub
[/pre]

==========


IMPORTANT

A Practice Exercise.

Now before you go and jump in I would suggest you setup a new workbook

put some values values in a2:a20 (doesn't really mater how many)

Try the following code


Sub h2()
Dim i As Integer
Dim myRange() As Variant
ReDim myRange(1 To Range("A2", Range("A65536").End(xlUp)).Count, 1)

myRange = Range("A2", Range("A65536").End(xlUp)) 'This reads the data

For i = LBound(myRange) To UBound(myRange)
myRange(i, 1) = i * myRange(i, 1)
Next

Range("A2", Range("A65536").End(xlUp)).Value = myRange 'This writes it back
End Sub[/code][/pre]
Now PLEASE work through this last example until you understand what it is doing
 
and you might need this later on

myRange(i, 1) = Replace(myRange(i, 1),".ad ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ad ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".aero ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ae ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".af ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ag ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ai ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".al ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".am ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".an ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ao ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".aq ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ar ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".asia ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".as ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".at ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".au ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".aw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ax ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".az ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ba ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bb ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bd ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".be ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bf ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bh ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bi ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".biz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bj ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bo ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".br ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bs ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bv ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".by ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".bz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ca ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cat ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cc ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cd ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cf ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ch ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ci ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ck ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cl ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".com ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".coop ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".co ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cs ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cv ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cx ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cy ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".cz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".de ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".dj ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".dk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".dm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".do ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".dz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".edu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ee ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".eg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".eh ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".er ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".es ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".et ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".eu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".fj ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".fk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".fm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".fo ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".fr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gb ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gd ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ge ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gf ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gh ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gi ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gl ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gov ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gp ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gq ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gs ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".gy ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".hm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".hn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".hr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".htm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ht ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".hu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ie ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".il ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".im ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".info ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".int ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".in ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".io ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".iq ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ir ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".is ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".it ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".jm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".jobs ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".jo ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".jp ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kh ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ki ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".km ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kp ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ky ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".kz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lb ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lc ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".li ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ls ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".lv ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ly ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mc ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".md ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".me ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mh ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mil ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ml ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mobi ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mo ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mp ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mq ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ms ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".museum ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mv ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mx ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".my ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".mz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".name ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".nc ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".net ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ne ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".nf ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ng ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ni ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".nl ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".no ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".np ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".nr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".nu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".nz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".org ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pe ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pf ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ph ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pl ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pro ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ps ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".pw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".py ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ro ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".rs ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ru ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".rw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sb ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sc ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sd ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".se ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sh ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".si ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sj ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sl ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".so ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".st ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".su ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sv ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sy ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".sz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".td ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tel ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tf ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".th ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tj ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tl ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".to ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tp ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".travel ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tv ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tw ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".tz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ug ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".uk ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".um ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".us ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".uy ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".uz ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".vc ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ve ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".vg ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".vi ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".vn ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".vu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".ws ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".yt ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".yu ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".zm ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".zr ","URLExtentionMarker")
myRange(i, 1) = Replace(myRange(i, 1),".zw ","URLExtentionMarker")
 
Absolutely Beautiful.


My screen no longer flickers, which answers my question and solves my problem.


My understanding of this is it reads everything once, and writes it back once in one pass (an array).


However (here comes the side questions you feared... lol)


-I only have 3 questions, and no more afterward.


1. How do I adjust this to search for both UPPERCASE & lowercase?

*in this particular case the url extentions should all be lowercase, but how do I modify the code to look for either or if needed.


2. Is it faster if I filter the range before I run search-replacements?

*in theory I'm thinking that if you trim the range before you run the search it's faster.


3. If so, how would I filter this range first before running the array?

*what I'm really asking here is how do I set the read & write parameters to only the filtered selected visible cells.


eg:

Dim i As Integer

Dim myRange() As Variant

ReDim myRange(1 To Range("A2", Range("A65536").End(xlUp)).Count, 1)


MyRange = MyFilteredRange.SpecialCells(xlCellTypeVisible).Select 'Reads all data in one pass


Set MyFilteredRange = Range("A2", Range("A65536").End(xlUp)) ''selects all visible filtered cells


With ActiveSheet

Range("A1", Range("A65536").End(xlUp)).AutoFilter Field:=1, Criteria1:="=*.*" 'criteria here trims unecessary range for speed

MyFilteredRange.SpecialCells(xlCellTypeVisible).Select

End With


With Selection

For i = LBound(MyRange) To UBound(MyRange)

MyRange(i, 1) = Replace(MyRange(i, 1), ".ac ", "URLExtentionMarker")

MyRange(i, 1) = Replace(MyRange(i, 1), ".ad ", "URLExtentionMarker")...etc.

End With

Next


Range("A2", Range("A65536").End(xlUp)).Value = myRange 'This writes it back
 
1. Check out the UCase/LCase methods to compare uppercase and lowercase scenarios.


2. Don't filter it. XL will have to treat the filtered region as several small ranges, grouped together (eg, A2:A4,A5:A7,A9:A10,etc...), rather than 1 large range (eg A2:A10).


3. See #2
 
Thanx Luke

@Indi

To clarify your statement "My understanding of this is it reads everything once, and writes it back once in one pass (an array)."

The array is the storage container which holds the data in VBA, in this case using myRange = Range("A2", Range("A65536").End(xlUp))

myRange is the array.

it consists of 1 column of data which holds ubound(myRange)-lbound(myRange) records

Reading and writing the data is not the array.
 
Back
Top