Haha nope! So I changed it to all capitals and it works when I click the 'run' icon (green play arrow) in Visual Basic but that is the only way it seems to work.
For example, if I copy/paste your code into the sheet module for Empty1, Empty2 & Empty3, then click on the button in column D in APPLIANCE ORDER to bring the KTXXs into row 8, the tabs still have the 'Empty' names.
Is there anyway of getting the code to work without havinbg to go into Virtual Basic and clicking 'run'? I can't seem to get your code to function any other way other than running it in Virtual Basic...
Thank you for putting up with me all day and responding as quickly and concisely as you have.
This is exactly what I need.
I could stop there but, seeing as we're on a roll, is there any way to make it so that, if you manually delete all the KTXXs from row 8 in APPLIANCE ORDER, then press the button again (or another new button), the KTXX tab names would go back to reading 'EmptyX'?
No worries if not, would just allow the user to conveniently start again should errors be made.
Are you able to help me out again regarding one of the VBA codes you sent me?
I'm finding that this one will only cover so many rows in Column C before it tells me 'subscript out of range':
Dim arrList As Object, a As Variant, i As Long, j As Long
Set arrList = CreateObject("System.Collections.ArrayList")
a = Sheets("1. DRAWING REG").Range("C19:D" & Sheets("1. DRAWING REG").Range("D" & Rows.Count).End(xlUp).Row)
j = Sheets("APPLIANCE ORDER").Index
For i = 1 To UBound(a)
If a(i, 1) = "*******" Then arrList.Add CStr(a(i, 2))
For i = 0 To arrList.Count - 1
Sheets(j + i + 1).Name = arrList(i)
Sheets("APPLIANCE ORDER").Range("G8").Resize(1, arrList.Count).Value = arrList.toArray
Happy to explain further and upload the spreadsheet if you're still about!