Номери прокладки до певної довжини в електронній таблиці Google [закрито]


33

У мене є стовпець з цілими числами , як це: 1, 2, 3, 4, 5і я хочу , щоб створити ще один стовпець з цими значеннями прокладених по довжині три , як це: 001, 002, 003, 004, 005.

Чи можна прокладати рядок по довжині в електронній таблиці Google?

Мені не вдалося знайти стандартну функцію для цього.


2
Це не саме те, про що ви просили, але досягає порівнянного ефекту і може бути рішенням для звичайної задачі, яку люди шукають: (1) виберіть стовпчик із цифрами, які ви хочете вкласти. (2) Виберіть Формат> Число> Більше форматів> Формат власного номера ... (3) У діалоговому вікні введіть стільки 0, скільки цифр повинно мати числовий рядок, наприклад, 000 у вашому прикладі.
tophcito

2
Його не слід просто закривати, його потрібно перенести на сайт webapps.stackexchange.com
Lennart Rolland

Відповіді:


53

Рекомендованим способом є використання функції TEXT () .

Короткий підсумок про те, як ви використовували б це у вашому випадку:

=TEXT(5,"000")

Виведе:

005

Звичайно, ви замінили б буквальну 5 посиланням на іншу клітинку, де знаходиться номер джерела.


Чи буде спосіб оббивки пробілами?
Алекс

Я думаю, що лише підмножина "000" з "" вище
Lennart Rolland

12

Якщо ви просто хочете зміни дисплея, ви можете застосувати до комірок спеціальний формат чисел "000".введіть тут опис зображення

Виділіть комірки, натисніть на Format> Number> Інші формати> Призначений для користувача формат номера ... .

Від Docs редакторів допомоги :

Цифра в цифрі. У результатах з’явиться незначний 0.


2
Чи можете ви відредагувати свою відповідь, щоб розширити, як це зробить ОП?
Бургі

3

Тимчасове рішення

Ось тимчасове рішення, яке я придумав.

Робоча формула

Просто використовуйте цю формулу:

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

Замініть 3довжиною оббивки та 0символом підкладки. A2є джерелом прокладки.

Пояснення

Розглянемо таку електронну таблицю:

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

У нас є початковий стовпчик (A) з цілими числами, які ми хочемо прокласти. Стовпець (B) буде містити спеціальну формулу для обробки даних.

Об’єднайтесь!

Перш за все, нам потрібен спосіб об'єднати значення з Aстовпця з накладкою на рядок. Ми можемо це зробити за допомогою CONCATENATEфункції:

=CONCATENATE("00", A2)

Повторіть!

Наразі характер накладки 0повторюється двічі у нашій формулі. Це не добре. Ми можемо використовувати REPTфункцію, щоб повторити наш символ прокладки кілька разів так:

=REPT("0", 2)

Ця формула повториться 0два рази. Давайте поєднаємо їх:

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

Обчисліть довжину!

Так краще. Але довжина оббивки має постійне значення у нашій формулі, і це не буде працювати з числами більше 9. Ми можемо це виправити, обчисливши довжину прокладеного рядка (за допомогою LENфункції) і відняти його від нашої цільової довжини:

=3-LEN(A2)

Додамо його до нашої формули:

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

Однак ми отримаємо негативні результати для значень більше 999 і це порушить REPTфункцію (кількість повторень не може бути негативною).

Ми можемо це легко виправити, додавши умову:

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

Давайте складемо кінцеві пиріжки разом:

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

Ідеально! Це найкраща відповідь, і вона працює з нечисловими значеннями ;-D
t3chb0t
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.