Cria lista numerada com o recurso de atualização?

0

É possível fazer algo assim no Excel? Como uma lista de linhas ativas com um número ordinal nelas.

Existe uma coluna B. Ela precisa mostrar um número ordinal que representa a linha ativa na planilha. Olhe a imagem.

Sealinhaestiverinativa,acolunaBnãoteráumnúmeroordinal.Agora,quandoeuexcluiralgumnúmeroordinaldacolunaB,aordemordinaldeveseratualizadadeacordo.VamosdizerqueeuremovootextodacélulaB7,comopossofazeracolunaBatualizarseusvalores.Olheaimagem.

É possível fazer isso de maneira simples, sem ter que escrever muito código de script?

PS. Eu não sou um especialista em excel, então seria ótimo se houvesse uma solução simples por meio das fórmulas incorporadas do Excel. :) PPS. essa função é semelhante à lista numerada do Word. Se eu excluir qualquer item da lista, os elementos subsequentes atualizarão seus valores de acordo.

EDITAR

A coluna A lista todas as tarefas de 1 a X. A coluna B lista as tarefas ativas. Eles são ordenados por seu status (ativo inativo). Quando termino uma determinada tarefa (por exemplo, a 7ª tarefa), apenas apago seu valor na coluna B e, em seguida, corrijo manualmente todos os números subseqüentes. Dessa forma, sei quantas tarefas ativas eu tenho e quais estão ativas.

Por favor, diga se ainda não está claro e qual parte precisa de mais explicações !!!

PS. As tarefas são descritas nas colunas C, D e E, mas essa parte não era relevante aqui.

    
por JoeM 02.05.2012 / 09:33

3 respostas

2

Acho que seria mais fácil gerenciar se você tivesse uma coluna extra na qual pudesse simplesmente marcar se uma linha estava ativa, digamos com um "x". Então você pode ter a classificação ordinal de cada linha ativa calculada automaticamente na próxima coluna.

Por exemplo, se você fizer a coluna B conter "x" s para indicar que a linha está ativa, na coluna C você pode inserir o seguinte (em C2 ):

=IF(B2="x",MAX(C$1:C1)+1,"")

Em seguida, preencha a coluna abaixo.

    
por 02.05.2012 / 15:51
1

Com base nas sugestões, encontrei a maneira certa e fácil de fazer isso. Apenas usando a função max .

A fórmula é =MAX($B$X:BY)+1

Por exemplo, na célula B2 eu coloco a fórmula =MAX($B$1:B1)+1 e depois copio para todas as outras células na coluna B e voila - eu tenho o que preciso. Eu posso excluir qualquer valor de célula e todos os subsequentes serão atualizados imediatamente.

Obrigado pessoal!

    
por 03.05.2012 / 08:04
0

Sem saber como a entrada está chegando ou para o que está sendo usada, você pode tentar o seguinte:

Se você inseriu '1' na célula B1 e copie a seguinte fórmula na célula B2:

=IF(B1 = "", OFFSET(B1,-1,0)+1,B1+1)

permitirá que você mantenha uma lista e exclua um único intervalo. Se você quisesse deletar 2 células, você teria que adicionar outro bloco if para checar cada célula anterior.

Nota : Offset permite-lhe eliminar um conteúdo de células e "saltar" um na lista se a célula acima estiver vazia

Usar uma macro de loop seria mais escalável.

Mais detalhes sobre o que você está tentando alcançar ajudariam muito.

    
por 02.05.2012 / 11:45