Google E-Tablodaki sayıları belirli bir uzunluğa getirin


33

Böyle tamsayı numaraları ile bir sütun vardır: 1, 2, 3, 4, 5ve böyle üç uzunluğa doldurulması bu değerlerle başka bir sütun oluşturmak istiyorum: 001, 002, 003, 004, 005.

Google E-Tablo'da dize uzunluğunu doldurmak mümkün mü?

Bunun için standart bir işlev bulamadım.


2
Bu tam olarak istediğin şey değil, karşılaştırılabilir bir etki yaratıyor ve insanların aradığı ortak bir görev için bir çözüm olabilir: (1) sütunu doldurmak istediğiniz sayılarla seçin. (2) Biçim> Sayı> Diğer Biçimler> Özel Sayı Biçimi ... 'ni seçin. (3) İletişim kutusunda, sayı dizesinin sahip olması gereken sayı kadar 0 girin, örneğin örneğinizde 000.
— tophcito

2
Basitçe kapatılmamalı, webapps.stackexchange.com
— Lennart Rolland

Yanıtlar:


53

Önerilen yöntem, TEXT () işlevini kullanmaktır .

Senin durumunda nasıl kullanacağına dair kısa bir özet:

=TEXT(5,"000")

Çıktısı olur:

005

Elbette, literal 5'i, kaynak numarasının bulunduğu başka bir hücreye referansla değiştirirsiniz.


Boşluklarla dolmanın bir yolu var mıydı?
— Álex

Bence sadece "" ile ""
— irtifa

12

Yalnızca ekran değişikliklerini istiyorsanız, "000" özel sayı biçimini hücrelere uygulayabilirsiniz .görüntü tanımını buraya girin

Hücreleri seçin, Format> Numara> Diğer Formatlar> Özel numara formatı ... üzerine tıklayın .

Gönderen Dokümanlar düzenleyicileri yardım :

Rakamda bir rakam. Sonuçlarda önemsiz bir 0 görünecektir.


2
OP'nin bunu nasıl yapacağını genişletmek için cevabınızı düzenleyebilir misiniz ?
— Burgi

3

Geçici çözüm

İşte geldiğim geçici geçici çözüm.

Çalışma formülü

Sadece bu formülü kullanın:

`=IF(LEN(A2)<3, CONCATENATE(REPT("0", 3-LEN(A2)), A2), A2)`

3Dolgu uzunluğu ve 0dolma karakteri ile değiştirin . A2bir dolgu kaynağıdır.

açıklama

Aşağıdaki elektronik tabloyu göz önünde bulundurun:

-------------
| A   |  B  |
-------------
| 1   | 001 |
-------------
| 2   | 002 |
-------------
| 31  | 031 |
-------------
| 45  | 045 |
-------------
| 500 | 500 |
-------------

Dolgu yapmak istediğimiz tamsayıları içeren ilk sütuna (A) sahibiz. (B) sütunu, verileri işlemek için özel formülü içerecektir.

Concatenate!

Öncelikle, Asütundaki değeri doldurma dizesiyle birleştirmenin bir yoluna ihtiyacımız var . Bunu CONCATENATEfonksiyonla yapabiliriz:

=CONCATENATE("00", A2)

Tekrar et!

Şu anda, 0formüldeki dolgu karakteri iki kez tekrarlanıyor. Bu iyi değil. REPTDolgu karakterimizi bu şekilde birkaç kez tekrarlamak için işlevi kullanabiliriz :

=REPT("0", 2)

Bu formül 0iki kez tekrarlanacaktır . Onları birleştirelim:

=CONCATENATE(REPT("0", 2), A2)

Uzunluk hesapla!

Bu daha iyi. Ancak, doldurma uzunluğu formülümüzde sabit bir değere sahiptir ve 9'dan büyük sayılarla çalışmayacaktır. Bunu, dolgulu dizenin uzunluğunu ( LENişlev kullanarak ) hesaplayarak düzeltebilir ve hedef uzunluğumuzdan çıkarabiliriz:

=3-LEN(A2)

Hadi onu formülümüze ekleyelim:

=CONCATENATE(REPT("0", 3-LEN(A2)), A2)

Bununla birlikte, 999'dan büyük değerler için negatif sonuçlar elde edeceğiz ve bu işlevi kıracak REPT(tekrar sayısı negatif olamaz).

Bir koşul ekleyerek kolayca düzeltebiliriz:

=IF(LEN(A2)<3, "APPLY REPT", "OUTPUT AS IS")

Son barışları bir araya getirelim:

=IF(LEN(A2)<3, CONCATENATE(REPT("0", 3-LEN(A2)), A2), A2)

Mükemmel! Bu en iyi cevaptır ve sayısal olmayan değerlerle çalışır;
— D
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.