Google Spreadsheets’te sayfa adını görüntüleyin


Yanıtlar:


11

Birisi bunu yapmak için bir senaryo yazdı. O mevcuttur Araçlar > ... Senaryo galerisinde . "Sheet name" kelimesini arayın ve betiği kurun, sonra kullanın =getCurrentSheetName().


9
Bu komut dosyasına "yeni" Google E-Tablolar’dan nasıl erişilir (şu anda bir eklenti deposu kullanılıyor)?
Benjamin

4
Bu artık işe yaramıyor. @ User93341 gelen cevabı kullanın. İşlevini Eklenti Mağazasında yayınlamak için tüm süreçten geçtim ve son adımda hesabımı doğrulamak için 5 dolar istediler ve 20 öğeyi yayınlamakla sınırlı kalacağım. Le sigh
Bruno Bronosky

49

Git AraçlarSenaryo Editör ve bu kodu ekleyin:

function sheetName() {
  return SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
}

Sayfa adını eklemek istediğiniz hücrede şunu ekleyin:

=sheetName()

Sayfa adlarına aşağıda gösterilen API işlevleriyle erişme konusunda bir sorun oluştu - yalnızca ilk sayfa adını döndürdü. Bu Mart 2015'te düzeltildi .


Senaryo aracına aşina olmayan bizlere olan cevabını genişletebilir misin?
codingbadger

1
@Barry 1) Araçlar-> Komut Dosyası Düzenleyicisini Seçin 2) Ortaya çıkan metin dosyasına bu işlevi sonuna ekleyin 3) Kaydet'e tıklayın 4) Şimdi bu işlevi sayfanızda kullanabilirsiniz.
gamliela

5
Bu işlev düzgün çalışsa da, sayfa adı değiştiğinde güncellenmez, bu nedenle gerçekten kullanışlı değildir.
jesjimher

1
jesjimher bu Google Dokümanlar Yardım Forumu'na göre , komut dosyası düzenleyicisine gider ve komut dosyasını yeniden kaydederse, sekme adlarının doğru bir şekilde güncellendiğini bir sayfaya geri döndüğünde görür.
aribeiro 14

1
Biliyorum ama kafa karıştırıcı ve sayfa formüllerinin çalışma şeklinin tam tersi. Başvurulan veriler değiştiğinde bir formülün güncellenmesini bekliyorum. Şimdi bu formül kaynak betiği açıp kaydetmediğim sürece yapmaz. Sayfa ismini her seferinde elle girip, uğraşımı azaltabildim.
jesjimher

6

Burada, bir Tanımlayıcı tarafından elektronik tablo adı almak için bir Özel İşlev kod pasajı verilmiştir .

function GetSpreadsheetNameById(id) {
  var ss = SpreadsheetApp.openById(id);
  return ss.getName();
}

Bir hücrede, bir sayfa Tanımlayıcıyı iletin (tanımlayıcı için elektronik sayfa URL'sine bakın).

=GetSpreadsheetNameById('49nvkwOE-203nXDLGGJtg0htFKK020dsd939AAPZU')

1
Bu sadece @ user93341 cevabındaki ufak bir değişiklik.
JamesThomasMoon1979

Bu, aşağıdaki hatayı veriyor: "SpreadsheetApp.openById'i arama izniniz yok."
Aurovrata

Bu değiştirme, sayfanın adının yerine belgenin adını döndürür return ss.getName();tarafından return ss.getActiveSheet().getName();size sayfanın adını isterseniz (Ben aslında dokümanın adına gerekli sayesinde böylece,)
Emilien'im

-1

Bunu dene:

function getNameOfThisSheet() {
  return SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
}

Araçlar> Komut Dosyası düzenleyicisine yapıştırın ve işlevi aşağıdaki gibi bir hücreden çağırın:

=getNameOfThisSheet(NOW())

NOW()Eski GoogleClock(), parametre memoization önlemek sorunları yardımcı olur.


GOOGLECLOCK (), NOW () ile değiştirildi, ancak deterministik olmayan fonksiyonlar, özel fonksiyonların argümanları olarak kullanılamaz.
Rubén
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.