Como bloquear / proteger células nas planilhas do Google


9

Criei um aplicativo de planilha muito simples no Google Spreadsheet para minha mãe. Mas eu realmente preciso bloquear / proteger a célula com fórmulas para que ela não possa editá-las. Toda vez que eu dizia a ela para experimentar novas versões, ela substituia as fórmulas.

Alguma idéia de como abordar isso do ponto de vista técnico ?

Eu pesquisei na net e parece-me que não é possível no momento no Google Apps.

Respostas:


9

Atualmente, não é possível bloquear uma determinada célula . No entanto, você pode criar novas planilhas na planilha e bloqueá-las. Se você realmente deseja impedi-la de alterar as fórmulas, você pode fazer com que todos os resultados / fórmulas estejam em uma segunda planilha, referindo-se aos dados da primeira planilha, e bloqueie a segunda planilha para que seja somente leitura para ela.

Para fazer referência a dados de uma planilha em outra, use a sintaxe sheetname!range. Por exemplo, para obter a média da coluna A da planilha1 nas linhas 2 a 10, você usaria Average(sheet1!A2:A10).

Para adicionar folhas, use o +sinal no canto inferior direito da planilha. Você pode alternar e renomear folhas usando as guias e as setas suspensas no lado inferior esquerdo da planilha.

captura de tela do google docs


explicação muito, muito agradável. Obrigado. Não tenho certeza se é utilizável caso você tenha uma tabela simples e deseje calcular somas de colunas e linhas. O usuário geralmente deseja ver as somas e dados em uma tela. Bem, se ela continua excluindo fórmulas Eu tenho uma solução para isso :-)
Radek

Feliz por ajudar. Há também uma função chamada importrangeque pode importar uma seção inteira de uma planilha para outra. Com isso, você pode importar os dados inteiros da primeira folha para a segunda folha e exibir todas as equações ali perto dos dados a que correspondem. O Google possui documentação para isso , que você pode achar útil. Ainda não seria uma solução perfeita, mas estaria mais próxima, pois exibiria todos os resultados em uma página com os dados originais, pelo menos.
Nhinkle

parece que este é a única solução neste momento .... obrigado
Radek

Sem problemas. Se você encontrar uma solução melhor, atualize sua postagem; Eu estaria interessado em ouvir sobre isso.
Nhinkle

4

Descobri que se você criar um comentário anexado às células que não devem ser editadas, poderá avisar alguém quando elas passarem o mouse sobre a célula para editá-la. É claro que ele realmente não bloqueia a célula, mas, esperançosamente, vezes suficientes vendo a nota aparecer e talvez sua mãe pare de alterar manualmente esses números.

Eu acho que você pode adicionar comentários apenas uma célula de cada vez, portanto, dependendo de quantas células são fórmulas, essa solução pode não ser viável.


você está certo que eu não posso usá-lo neste caso como as fórmulas estão em toda a coluna, mas será grande solução em alguns casos ...
Radek

4

A resposta hoje é "Intervalos nomeados e protegidos" no menu Dados. Funciona sem problemas.


3
A limitação dessa solução é que o proprietário da planilha não pode bloquear células contra si mesma. Para resolver o problema do OP, o OP também deve possuir a planilha e compartilhá-la com a mãe.
MetaEd 07/12/12

Não vejo nenhuma limitação para esta solução. Você poderia elaborar? A mudança do proprietário também protege o intervalo de células contra si mesmo.
Radek

3

Você pode usar o script do google apps para escrever seu próprio mecanismo de bloqueio em javascript.

Por exemplo:

Digamos que você tenha uma fórmula na coluna B e seja igual ao valor na coluna A + 1. Se observarmos a célula (B3), ela deve ter uma fórmula de "= A3 + 1"

Para escrever um script para proteger isso contra modificações, você deve escrever algo como isto usando o Editor de scripts:

function onEdit(event)
{
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = SpreadsheetApp.getActiveSheet();
  var CellRow = SpreadsheetApp.getActiveRange().getRow();
  var CellColumn = SpreadsheetApp.getActiveRange().getColumn();

  if (CellColumn == 2){
    sheet.getRange(CellRow, CellColumn).setFormula("=A"+CellRow+"+1");
    Browser.msgBox("DON'T MESS WITH THE FORMULAS!");
  }
}

Se você obtê-lo funcionando toda vez que alguém edita qualquer célula na coluna B, o script automaticamente coloca sua fórmula de volta e envia uma mensagem de aviso.


3

Uma solução alternativa é usar a validação de dados.

Vá para o menu Dados, clique em validação ... e defina seu intervalo de células que você precisa "proteger". Ex: SheetA!F2:F9999. Em seguida, selecione Critérios: Texto, iguais. Em seguida, digite na caixa algo como: "= *" sem as aspas. Desmarque a caixa "permitir dados inválidos ...". Salve .

Isso só deve permitir que o usuário insira um valor que comece com o sinal = (que é o começo da sua fórmula para proteger). Se eles inserirem o sinal =, poderão modificar a célula.

O asterisco permite que qualquer coisa após o = seja válido. Você pode especificá-lo ainda mais para protegê-lo mais: Ex: texto, igual a =sum(*), ou =AVG(B*:D*)etc ...


1

Tente fazer as caixas nas quais ela deveria estar inserindo o texto em uma cor diferente e peça para ela escrever apenas nas caixas coloridas.


1

Solução simples de volta quando o Excel tinha o mesmo problema:

Outra maneira de fazer isso é através da validação de dados. Depois de ter uma célula preenchida com o conteúdo desejado,

Escolha Validação de dados e use a opção Personalizada. Para a fórmula, digite=""

Depois selecione "Rejeitar entrada".


0

No Microsoft Excel, posso bloquear a planilha inteira e desbloquear seletivamente células ou intervalos individuais.

Nas Planilhas do Google, bloqueio todas as células em um ou mais intervalos separados, exceto as células que devem estar disponíveis para entrada por outros usuários. Veja este exemplo de uma planilha do Google que fiz hoje: amostra

Uma variação do Excel é que todas as planilhas do Google, todas as células bloqueadas, têm listras diagonais cinza como plano de fundo.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.