Google E-Tablodaki boş hücreleri sıfırlarla nasıl değiştirebilirim?


13

Başka birinin veri girdiği bir e-tablom var. 0 değer kaydetmek yerine boş hücreler bıraktılar. Boş hücreleri 0'larla nasıl değiştirebilirim?

Bulmak ve ^ $ kullanarak düzenli ifadeler ile değiştirmeyi denedim, ama işe yaramadı.



Verilen cevaplardan herhangi birini gözden geçirme zamanı buldunuz mu?
Jacob Jan Tuinstra

Yanıtlar:


12

Bunu yalnızca e-tablonun belirli bir bölümünde yapmak istediğinizi ve tekrarlamanız gereken bir şey değil, düzeltmeniz gereken bir defalık bir sorun olduğunu varsayıyorum.

Bunun için en basit yaklaşım, şu anda kullanılmayan aynı şekil ve boyutta (belki de başka bir çalışma sayfasında) başka bir alan bulmaktır .

Bu alandaki her bir hücrede, forumu bu şekilde ayarlayın (kullandığınız hücrelere bağlı olarak):

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

2. alandan veri seçin, kopyalayın ve Düzenle> Özel Yapıştır> Yalnızca değerleri yapıştır kullanarak orijinaline geri yapıştırın

Bazı biçimlendirmeleri (örneğin tarih biçimleri) yeniden uygulamanız gerekebilir, ancak değerler orada olacaktır.

fyi, bu yaklaşımın çalışmış bir örneğini buraya koydum: https://docs.google.com/spreadsheets/d/1T6owfGtpKt3NLl5hq1AZpeWA1ILWUwBQ44bdlAmekF0/edit?usp=sharing


2
Bu harika çalışıyor. Sonuçta SMALL komutunu kullanırken küçük bir sorunla karşılaştım. Bunun yerine = if (isblank (A3), 0, A3) kullanarak düzeltmeyi başardım.
Joe Manlove

9

Bul ve Değiştir'de normal ifadeyi kullanma :

^\s*$

Google e-tablosu boş olanı 0 ile değiştirir


Benim durumum için, bu en iyi cevaptı. Değerleri olması gereken, ancak boş olan iki hücre aralığım vardı. Veriler onlar için mevcut olsaydı, bazı hücreleri değerler ile doldurdum. Sonra diğer tüm boş hücrelerin bu hücreleri zaten düşündüğümü göstermek için sıfırla doldurulmasını istedim.
LS

Bu yardımcı oldu teşekkürler.
lathomas64

8

Aşağıdaki komut dosyası 0, aralıktaki her boş hücreye bir ekleyecektir .

kod

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;
    });
  }));
}

Not

Dosya açıldığında, dört alt öğeye sahip Zeros adlı bir menü öğesi oluşturulur. Manuel işlevi de açıldıktan sonra çalıştırmak istiyorsanız, basitçe şu şekilde ekleyin: resim açıklamasını buraya girin

Misal

Sizin için bir örnek dosya oluşturdum: Boş hücreyi sıfırlarla değiştirin .
1. Dosyanın bir kopyasını oluşturun veya kodu Araçlar> Komut Dosyası düzenleyicisi altına yapıştırın . 2. Komut dosyasının kimliğini doğrulamak için saat hatası düğmesine basın. resim açıklamasını buraya girin 3. Belgenizi yeniden açın, şimdi yeni menüye sahipsiniz! resim açıklamasını buraya girin


Bir cazibe gibi çalıştı. En azından son sürümde, çalıştırmak için makrolarınıza eklemeniz gerekir.
Nic Szerman

2

Sınırlı sayıda sütun için Boşlukları seçmek üzere filtreleyebilir, sonra ekleyip kopyalayabilirsiniz 0.


2

Google e-tablolarında benzer durumlarda benim için çalışan bir yol, boş sütunu 0 ile TOPLAMAK ve sonucu yeni bir sütunda depolamaktı.

Sütunda A, değiştirmek istediğiniz boş hücreler varsa ve örneğin verileriniz varsa , güncellenmiş değerleri aşağıdaki gibi depolamak için bir Bsonraki boş sütunu Ckullanın:

C1=SUM(A1, 0) vb. tüm sütun için C.

Benim durumumda, değerleri çarpmam gerekiyordu ve boş hücreler 1s yerine 0s gibi çalıştı PRODUCT(), bu yüzden yaptım:

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

bu da içindeki boş veya sayı olmayan hücreler için beklenen sonuçları verdi A.


1

İçinde rastgele boşluklar olan büyük bir veri vardı, bu yüzden if(isblank())süper emek yoğun olduğu için kullanmak benim için kötü bir fikirdi.

Bunun yerine, sayfamı bir csv olarak indirdim ve TextWrangler'da açtım (bul ve değiştir ile herhangi bir metin editörü çalışacaktır). Sonra ',,' buldum ve ', 0' ile değiştirdim. Bunu iki kez yapmak zorunda kaldım. Daha sonra yeniden aktardığımda, if(isblank())veri kümemin yalnızca ilk ve son sütunlarında kullandım. Diğer her şey sıfırlandı. Sadece yaklaşık 5-10 dakika sürdü.


1

Sen kullanabilirsiniz "Bul ve Değiştir" ( Ctrl+ F→ Diğer seçenekler).

  • bul: ^$
  • Şununla değiştir: 0
  • Ara: Aralığınız
  • Seçin: Normal ifadeleri kullanarak arama

1
-1. Soru, bunun asker için işe yaramadığını açıkça belirtiyor.
msh210
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.