Referenciar nome da Sheet com uma função personalizada

Referenciar o nome da Sheet criando uma Função Personalizada. [Reference current sheet tab name in a cell with a user defined function]
Referenciar nome da Sheet com uma função personalizada

Resumo

Podemos usar uma Macro em VBA para criar uma Função Personalizada (User Defined Function) para a tarefa de referenciar o nome da sheet e preencher esse campo. Se também precisares de extrair o nome do ficheiro segue a ligação a este artigo.

Macro para colocar o nome da Sheet na célula

1. Começa por abrir a janela do Microsoft Visual Basic com as teclas ALT + F11.

2. Abre uma janela de código selecionando no friso as opções INSERT > MODULE.

Chamar a janela do microsoft visual basic com alt+f11

3. Copia o código abaixo e insere-o na janela de código. E fecha a janela carregando em ALT + Q.

Insere o código vba na janela de código da macro
Function NomeSheet()
  NomeSheet = ActiveSheet.Name
End Function
4. Dentro de uma célula vazia basta agora introduzir a função =NomeSheet() e teremos sempre o nome da sheet actual devolvido.

Função nomesheet() em utilização

5. Se esta for uma tarefa recorrente podes adicioná-la ao teu Livro Pessoal de Macros (PERSONAL.XLSB) para automatizar o processo no computador em que trabalhas. Desta forma, de cada vez que necessitares de escrever o nome da sheet numa célula basta chamares esta função. Explora neste artigo Como criar Macros e onde guardá-las para perceberes como criar esta automatização.

Descargas

Descarrega aqui o ficheiro com os exemplos do artigo para referenciar o nome de uma sheet com uma função personalizada