1. Can I omit With & End With? I did try to use the following to find lRow = range("A" & rows.count).end(xlup).row and it did not work.
You can, but don`t forget to use full path for the cell:
You must remember, that there is no guarantee that you will get real last row in such way. In 3 - 8 rows cells are empty in column "A", so it could happen that last rows of the table also can be empty, and macro won`t see them.
2. Can I change the column signature "P", "Q" into constant, lets say cells(i, 16) for "P"
Yes you can, because cells(i, 16) = cells(i, "P") (as well as cells(i,1)=cells(i,"A"), cells(i,3)=cells(i,"C") etc.). For me the second way is more anderstandable because you don`t use R1C1 reference style.
3. Can I change I into let's say left(range("P2"), 1), where cell P2 contains INSP?
If you use only this 4 chars (I, L, T & R) you can. Other chars code won`t see, because I put them ito constant string in function rplc:
Bookmarks