Bom dia,
Primeiro, não utilize letras maiúsculas, isso é o mesmo que gritar. (Além de ser uma convensão para a informática, é desagradável mesmo).
Segundo, eu não entendi muito bem a sua dúvida, vc quer fechar o arquivo "A.xls", renomeá-lo como "B.xls", abrir e rodar a macro novamente?
Outra coisa, pelo código que vc postou, não tem a mudança de arquivo (pasta de trabalho), que é o que vc destacou em vermelho.
Parece que v usou o gravador de macros, e colou somente um pedaço do código todo. O ideal é colocar o código completo, e a planilha compactada tb.
Em todo caso, seguem 2 possibilidades (alterações em vermelho):
1. Usando um inputbox, assim vc digita diretamente o nome da planilha quando precisar:
Dim nome_da_planilha As String
Range("N12:P12").Select
Range("P12").Activate
Selection.Copy
Sheets("F").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.Goto Reference:="FSE"
Application.CutCopyMode = False
Selection.Copy
Range("A4").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=-21
nome_da_planilha = inputbox("digite o nome da planilha:")
Windows(nome_da_planilha).Activate
Sheets("ENTRADA").Select
2. Pegando automaticamente o nome da planilha quando começar a rodar o código:
Dim nome_da_planilha As String
nome_da_planilha = ThisWorkbook.Name
Range("N12:P12").Select
Range("P12").Activate
Selection.Copy
Sheets("F").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.Goto Reference:="FSE"
Application.CutCopyMode = False
Selection.Copy
Range("A4").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=-21
Windows(nome_da_planilha).Activate
Sheets("ENTRADA").Select
Porém, se tivesse o código completo e a planilha, daria pra melhorar esse código.
Abs
Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.
Gilmar
Postado : 01/06/2014 8:11 am