Como substituir células em branco por zeros na planilha do Google?

13

Eu tenho uma planilha em que outra pessoa inseriu os dados. Eles deixaram células em branco em vez de registrar 0 valores. Como posso substituir as células em branco por 0s?

Tentei encontrar e substituir por expressões regulares usando ^ $, mas não funcionou.

vanden
fonte
1
Relevante .
Alex
Você encontrou tempo para revisar alguma das respostas dadas?
Jacob Jan Tuinstra

Respostas:

12

Suponho que você queira fazer isso apenas em uma certa parte da planilha, e que é um problema pontual que você precisa corrigir, e não algo que precisa repetir.

Para isso, a abordagem mais simples é encontrar outra área com a mesma forma e tamanho (talvez em outra planilha) e não usada atualmente .

Em cada célula nessa área, defina o fórum como algo assim (dependendo das células que você usa):

= if (isblank (A3), "0", A3)

Selecione os dados da 2ª área, copie-os e cole-os de volta ao original usando Editar> Colar Especial> Colar apenas valores

Pode ser necessário reaplicar parte da formatação (por exemplo, formatos de data), mas os valores estarão lá.

fyi, coloquei um exemplo prático dessa abordagem aqui: https://docs.google.com/spreadsheets/d/1T6owfGtpKt3NLl5hq1AZpeWA1ILWUwBQ44bdlAmekF0/edit?usp=sharing

MaryC.fromNZ
fonte
2
Isso funciona maravilhosamente. Eu tive um pequeno problema ao usar o comando SMALL no resultado. Consegui corrigi-lo usando = if (isblank (A3), 0, A3).
precisa
9

Use a expressão regular em Localizar e substituir :

^\s*$

A planilha do Google substitui o espaço em branco por 0

NeoAsh
fonte
Para minha situação, essa foi a melhor resposta. Eu tinha dois intervalos de células que precisavam ter valores, mas estavam vazios. Preenchi algumas células com valores, se os dados estivessem disponíveis para elas. Então eu queria que todas as outras células vazias fossem preenchidas com zero para indicar que eu já tinha considerado essas células.
LS
Isso foi útil graças.
lathomas64
8

O script a seguir adicionará um 0a cada célula vazia no intervalo.

Código

function onOpen() {
  SpreadsheetApp.getUi().createMenu("Zeros")
    .addItem("Sheet", "zeroSheet")
    .addItem("Data range", "zeroDatarange")
    .addItem("Selection", "zeroSelection")
    .addItem("Manual Override", "zeroManual")
  .addToUi();      
}   

function zeroSheet() {
  var sheet = SpreadsheetApp.getActiveSheet();
  zero(sheet, 'sheet');
}

function zeroDatarange() {
  var range = SpreadsheetApp.getActiveSheet().getDataRange();
  zero(range, 'datarange');
}

function zeroSelection() {
  var range = SpreadsheetApp.getActiveSheet().getActiveRange();
  zero(range, 'activerange');
}

function zeroManual() {
  var spreadsheet = SpreadsheetApp.getActive();
  zero(spreadsheet, 'manual');
}

function zero(source, type) {
  var data, range;
  switch(type) {
    case 'sheet':
      var lastRow = source.getMaxRows();
      var lastColumn = source.getMaxColumns();    
      range = source.getRange(1, 1, lastRow, lastColumn);
      break;
    case 'manual':
      range = source.getSheetByName('Sheetname').getRange(2, 4, 3, 6);    
      break;
    case 'datarange':
    case 'activerange':
      range = source;
      break;
  }
  data = range.getValues();
  range.setValues( data.map( function(row) {
    return row.map( function(cell) {
      return !cell ? 0 : cell;
    });
  }));
}

Nota

Quando o arquivo é aberto, um item de menu chamado Zeros é criado, com quatro subitens. Se você deseja executar a função manual ao abrir também, basta adicioná-la da seguinte forma: insira a descrição da imagem aqui

Exemplo

Eu criei um arquivo de exemplo para você: Substitua a célula em branco por zeros .
1. Crie uma cópia do arquivo ou cole o código em Ferramentas> Editor de scripts . 2. Pressione o botão de bug do relógio para autenticar o script. insira a descrição da imagem aqui 3. Reabra o seu documento, agora você tem o novo menu! insira a descrição da imagem aqui

Jacob Jan Tuinstra
fonte
Funcionou como um encanto. Pelo menos na versão mais recente, você precisa adicioná-lo às suas macros para executá-lo.
Nic Szerman
2

Para um número limitado de colunas, você pode filtrar para selecionar Espaços em branco, depois inserir e copiar 0.

nozes
fonte
2

Uma maneira que funcionou para mim em situações semelhantes nas planilhas do Google foi somar a coluna vazia com 0 e armazenar o resultado em uma nova coluna.

Se a coluna Ativer as células vazias que você deseja substituir e, digamos, você tiver dados B, use a próxima coluna vazia Cpara armazenar os valores atualizados da seguinte forma:

C1=SUM(A1, 0) e assim por diante para a coluna inteira C.

No meu caso, eu precisava multiplicar valores e as células vazias funcionavam como 1s em vez de 0s com PRODUCT(), então eu fiz:

=PRODUCT(SUM(A,0), multiplier)

o que me deu os resultados esperados para células vazias ou não numeradas A.

Kamal
fonte
1

Eu tinha um grande número de dados com espaços em branco aleatoriamente definidos, então usar if(isblank())foi uma péssima idéia para mim, pois seria muito trabalhoso.

Em vez disso, baixei minha planilha como um CSV e a abri no TextWrangler (qualquer editor de texto com localização e substituição funcionará). Então eu encontrei ',,' e substitui por ', 0'. Eu tive que fazer isso duas vezes. Então, quando reimportei, usei if(isblank())apenas na primeira e na última coluna do meu conjunto de dados. Todo o resto foi zerado. Só levou cerca de 5-10 minutos.

Sam P
fonte
1

Você pode usar "Localizar e substituir" ( Ctrl+ F→ Mais opções).

  • Encontrar: ^$
  • Substitua por: 0
  • Pesquisa: A sua gama
  • Selecione: Pesquisar usando expressões regulares
Philippe van Gammeren
fonte
1
-1. A pergunta afirma claramente que isso não funcionou para o solicitante.
Msh210