É possível limitar o tamanho do conteúdo da célula ao inserir dados em uma célula usando o Script do Google Apps ou qualquer outra maneira?
É possível limitar o tamanho do conteúdo da célula ao inserir dados em uma célula usando o Script do Google Apps ou qualquer outra maneira?
Respostas:
O pequeno script a seguir limita a entrada da célula a 5 posições e adiciona o excedente como uma nota à célula.
function onEdit(e) {
var limit = 5;
if(e.value.length > limit) {
e.range.setValue(e.value.substring(0, limit) + "...");
e.range.setNote("Remaining text was: \n....." + e.value.substring(limit));
}
}
Em cada edição, o onEdit(e)
gatilho é acionado e toda vez que ele verifica se o valor das células ( e.value
) tem um comprimento maior que 5. Nesse caso, a célula ativa receberá um novo valor de não mais que 5 posições ( setValue
& substring(0,5)
). O restante do texto é adicionado como uma nota.
Criei um arquivo de exemplo para você: Limitar a entrada de célula
Adicione o código em Ferramentas> Editor de scripts no menu da planilha. No editor de scripts, cole o código e pressione o botão Salvar.
Use uma validação de dados com uma fórmula personalizada.
Se a célula para limitar o comprimento do valor for A1 e o limite de comprimento for 5, a fórmula personalizada será
=LEN(A1)<=5
Referências
A fórmula a seguir limita a entrada da célula a 10 posições.
Se a célula para limitar o comprimento do valor for A2 e o limite de comprimento for 10, a fórmula personalizada será
=LEFT(A2,10)
Exemplo:
Resultado:
Feito. Mas se você quiser adicionar reticências após o resultado, poderá editar o seguinte:
=CONCATENATE(""&LEFT(A2,10)&" ...")
Resultado:
Também podemos usar a Validação de Dados com uma fórmula personalizada para limitar o comprimento de uma célula por sua contagem de palavras (aka, para definir um número máximo de palavras em uma célula).
Se A1 é a célula que estamos limitando pela contagem de palavras e 10 é o número máximo de palavras, a fórmula é:
= COUNTA (DIVIDIDO (A1, ""))) = = 10
Referências: