Anexar ano à data do Excel

1

Eu tenho uma tabela dinâmica organizada por dia e ano. Infelizmente, os dias surgem como entradas em cabeçalhos "ano". Existe uma maneira de fazer com que o ano seja incluído nas entradas reais, em vez de apenas ser um cabeçalho? Se eu copiar os valores dessa tabela dinâmica, há uma maneira de acrescentar, digamos, 2014 à célula e lê-la como uma data?

A tabela parece com algo assim:

Year 1     Count
02-August   1
05-August   1
09-August   4
Year 2
02-August   3
    
por 114 24.09.2014 / 18:57

1 resposta

0

Dada sua tabela de exemplo e supondo que a célula que contém o cabeçalho "Year 1" é A1, você pode fazer isso para obter uma coluna que liste "Year X" em cada linha.

Célula C2: =IF(LEFT(A1,4)="Year",A1,IF(LEFT(A2,4)="Year","",C1))

Quebrando:

  • =IF(LEFT(A1,4)="Year", - A primeira instrução IF será TRUE quando os primeiros quatro caracteres em A1 forem "Year".
  • A1, - Quando a instrução IF for TRUE, o valor de C2 copiará A1.
  • IF(LEFT(A2,4)="Year", - Quando a primeira instrução IF for FALSE, a segunda instrução IF verificará se A2 começa com "Ano".
  • "", - Quando a segunda instrução IF for TRUE (e a primeira for FALSE), C2 ficará em branco.
  • C1)) - Quando ambas as instruções IF são FALSE, C2 irá puxar o valor de C1.

Para C2, a fórmula retornará "Year 1". Copie a fórmula para baixo no restante da coluna, e as referências de célula serão ajustadas automaticamente para que as referências "A1" sempre apontem duas para a esquerda e uma para cima da célula atual, e a referência "C1" sempre aponte para a célula imediatamente acima da célula atual. Então, para a sua lista atual, a coluna C será adicionada para que a tabela pareça:

Year 1      Count Year
02-August   1     Year 1
05-August   1     Year 1
09-August   4     Year 1
Year 2
02-August   3     Year 2

Para converter os anos em valores de ano regulares, você precisará de uma tabela de pesquisa que defina qual ID do ano corresponde a qual ano do calendário, ou pelo menos você precisa saber qual é o "Ano 1". Como você faz isso sem uma tabela de consulta pode depender da sua formatação na coluna A, então eu vou apenas

Usando uma tabela de consulta nas colunas F: G (a coluna F tem "Ano X", substituindo X por números reais, a coluna G tem os anos correspondentes de quatro dígitos), veja como colocar o ano em D2: =IF(C2="","",VLOOKUP(C2,F:G,2,FALSE))

  • =IF(C2="","", - Se C2 estiver em branco, deixe D2 em branco. Caso contrário, o VLOOKUP apresentaria um erro nos espaços em branco.
  • VLOOKUP(C2,F:G,2,FALSE)) - Quando C2 não está em branco, procure o valor de C2 na coluna mais à esquerda de F: G e retorne o valor correspondente da segunda coluna. Use apenas correspondência exata.

Sem a tabela de pesquisa, contanto que os anos sejam numerados consecutivamente, você poderá fazer isso em D2: =IF(C2="","",RIGHT(A2,LEN(A2)-5)+2012-1)

  • =IF(C2="","", - Se C2 estiver em branco, deixe D2 em branco. Caso contrário ...
  • RIGHT(A2,LEN(A2)-5) - Retira todos os 5 primeiros caracteres da A2. (Esta deve ser apenas a parte "X" do "Ano X".)
  • +2012 - Adicione 2012 (substitua 2012 pelo ano real que você deseja para o ano 1).
  • -1) - Subtraia 1 (desde que "Ano X" começa em 1. Caso contrário, todos os valores do seu ano serão um, ou você precisará ajustar "2012" (seu "Ano 1") para "2011" ( o ano anterior ao "Ano 1").

Se você quiser apenas marcar o ano no final da data e não se importar em ter datas formatadas como datas reais, você pode fazer isso:

Célula E2: =IF(D2="","",CONCATENATE(A2," ",D2))

  • IF(D2="","", - Se D2 estiver em branco, deixe E2 em branco. Caso contrário, você terá células com valores do tipo "Ano X" agora e depois.
  • CONCATENATE(A2," ",D2)) - Se D2 não estiver em branco, E2 terá o valor de A2, seguido por um espaço, seguido pelo valor de D2, combinado em uma string.

No final, sua planilha deve ser algo como isto (adicionei cabeçalhos a C: G, e você pode fazer sem F: G totalmente se usar o método "sem tabela de consulta" para D):

    
por 24.09.2014 / 22:34