Pergunte aqui
0

Endereço relativo em fórmula ao inserir célula

perguntadas 2016-10-03 17:55:10 +0100

imagem do gravatar de Leandro Vieira

updated 2019-03-23 18:36:17 +0100

Olá pessoal! Estou com o seguinte problema:

Descrição da imagem

Nesta planilha tenho duas macros importantes, tendo ambas praticamente as mesmas funções, que são: ir à determinada célula; inserir uma linha; copiar e colar o valor de uma célula para outro endereço; aplicar as formatações, etc., nada que o gravador de macro não faça.

A dúvida está: Exemplo, macro "InserirMateria".

Quando a macro copia a fórmula da célula A6 e cola em A9, os endereços se comportam como o esperado, que é de serem relativos, porém quando se insere uma linha, faz com que A9 vá para A10, mas a fórmula permanece com os mesmos endereços, como se estivesse ainda em A9, isto pode ser notado nas célula A11, depois com "InserirTopico", que copia de A7 para A10, podendo ser percebida nas células A12, A13 e A14, isso após alguns preenchimentos, assim não executando o resultado pretendido pela função.

Como faço para que quando inserir uma linha os endereços que estão nas fórmulas se alterem automaticamente?

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

Comentários

Oi @Leandro Vieira, poderia postar as fórmulas (de A6, A9 e A10) para testarmos.

imagem do gravatar de SchiavinattoSchiavinatto ( 2016-10-04 03:52:33 +0100 )editar

Editei a pergunta que estava um pouco confusa, as fórmulas são: A6 =SE(A5="";1;EXT.TEXTO(A5;1;1)+1) e A7 =SE(A6="";"";SE(E(NÚM.CARACT(A6)>1;NÚM.CARACT(A6)<4);EXT.TEXTO(A6;1;1)&"."&EXT.TEXTO(A6;3;1)+1;SE(NÚM.CARACT(A6)>3;EXT.TEXTO(A6;1;1)&"."&EXT.TEXTO(A6;3;2)+1;A6&"."&1))). já tentei também escrever as fórmulas nas células com a macro, mas o comportamento é o mesmo.

imagem do gravatar de Leandro VieiraLeandro Vieira ( 2016-10-04 18:34:57 +0100 )editar

2 Respostas

0

respondidas 2016-10-04 19:59:36 +0100

@Leandro Vieira, pelo que entendi na imagem da planilha, queres numerar as matérias e os tópicos de estudo, certo ?

Tente o seguinte em A6 =SE(LINHA()=6;0;MAIOR(A$5:A5;1)+1)

editar assinalar como ofensivo Excluir Link mais

Comentários

Não deu certo.

imagem do gravatar de Leandro VieiraLeandro Vieira ( 2016-10-04 21:17:52 +0100 )editar

Pode postar a Macro ? ou o arquivo ?

imagem do gravatar de SchiavinattoSchiavinatto ( 2016-10-04 23:02:34 +0100 )editar

Segue arquivo:

Controle de estudos

imagem do gravatar de Leandro VieiraLeandro Vieira ( 2016-10-05 18:51:15 +0100 )editar

O problema esta quando é inserido o segundo Tópico, analisando: quando inserido o primeiro a fórmula de A10 esta com referencia em A9, no momento que é inserido nova linha 10, a 10 antiga passa ser 11 mas mantém a referencia em A9. Não é erro.

Para acertar esta numeração será necessária, a cada inserção de tópico, corrigir a formula, ou seja neste caso mencionado, deve-se copiar A10 para A11. E a na próxima inserção copiar de A10 para A11 e A12, e assim por diante.

Continua....

imagem do gravatar de SchiavinattoSchiavinatto ( 2016-10-06 04:55:40 +0100 )editar
1

....continuando....

Sugestão: mude a maneira de inclusão, colocando sempre abaixo da lista, desta maneira não terá de inserir linha.

imagem do gravatar de SchiavinattoSchiavinatto ( 2016-10-06 04:58:57 +0100 )editar

Ou se quiser manter esta maneira: No momento da inclusão da Matéria, incluir um segunda linha abaixo. E na inclusão do Tópico, a Macro deve fazer o seguinte: vai em A9, Crtl+(seta para baixo), [o cursor corre pelas células continuas usadas e vai parar em cima do ultimo tópico, pois a próxima linha esta em branco, aquela segunda inserida] e seta para baixo [agora o cursor esta na linha em branco] e aqui inserir a linha com o novo tópico.

imagem do gravatar de SchiavinattoSchiavinatto ( 2016-10-06 05:14:53 +0100 )editar

Agradeço aos comentários que me fizeram decidir a optar pela opção de inclusão de Tópicos e Matérias abaixo, tive que refazer bastante coisa, mas agora já está funcionado perfeitamente. Controle de estudos resolvido

imagem do gravatar de Leandro VieiraLeandro Vieira ( 2016-10-07 19:30:12 +0100 )editar
0

respondidas 2016-10-04 13:28:43 +0100

imagem do gravatar de Beto

Primeiro você tem que ver se sua macro está copiando a fórmula relativa ou absoluta, se for relativa mesmo então, Vá em suas configurações -ferramentas, Opções e veja se o Calc está configurado de acordo como você quer. Descrição da imagem

editar assinalar como ofensivo Excluir Link mais

Comentários

Beto, qual a sua versão do LibreOffice? Pois no meu 4.2.8.2, não tenho a opção de ATUALIZAR REFERENCIAS AO ORDENAR UM INTERVALO DE CÉLULAS, mesmo marcando EXPANDIR REFERÊNCIAS, não deu certo.

imagem do gravatar de Leandro VieiraLeandro Vieira ( 2016-10-04 18:31:18 +0100 )editar

Versão: 5.0.4.2 em Win 7

imagem do gravatar de BetoBeto ( 2016-10-04 20:17:42 +0100 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2016-10-03 17:55:10 +0100

Lidas: 311 vezes

Última atualização: Oct 05 '16