Добавить пробел в начале ячейки в excel

У меня есть столбец данных, и я хотел бы просто добавить пробел в начале каждой ячейки. Как я могу это сделать?

Должно быть так:

Оригинал:

1
2
3
4

После:

 1
 2
 3
 4

Выберите ячейки, которые вы хотите обработать, и запустите этот небольшой макрос:

Sub dural()
    For Each r In Selection
    With r
        .Value = "' " & .Text
    End With
    Next r
End Sub

ответ дан Gary’s Student14k

  1. Щелкните правой кнопкой мыши по соответствующим ячейкам и выберите « Format Cells
  2. На вкладке номера выберите Custom под списком категорий.
  3. Под типом добавьте столько пробелов, сколько хотите, перед выбранным форматированием.
  4. Нажмите кнопку ОК, чтобы закрыть диалоговое окно
  5. Выровнять ячейки слева, чтобы увидеть добавленные пробелы в ячейке

Это имеет дополнительную функциональность сохранения ячейки в формате числа и математические формулы будут работать.

Предполагая, что данные находятся в столбце А. В пустом столбце введите эту формулу в первой строке:

=" "&A1
  • Скопируйте до данных в столбце А.
  • Скопируйте результат формул
  • Используйте вставить специальные> Значения, чтобы вставить данные в столбец A
  • удалите вспомогательные формулы.

I have a column of data, and I would like to simply add a space to the beginning of each cell. How can I do this?

It should be like this:

Original:

1
2
3
4

After:

 1
 2
 3
 4

asked Jul 1, 2015 at 23:50

jcronin's user avatar

1

Assuming the data is in column A. In an empty column enter this formula in the first row:

=" "&A1
  • Copy down as far as the data in column A.
  • Copy the result of the formulas
  • Use paste special > Values to paste the data into column A
  • delete the helper formulas.

answered Jul 2, 2015 at 7:29

teylyn's user avatar

teylynteylyn

22.4k2 gold badges38 silver badges54 bronze badges

1

  1. Right click the cells in question and select Format Cells
  2. On the number tab select Custom under the category list
  3. Under type add as many spaces as you like before the selected formatting
  4. Click OK to close the dialog box
  5. Left justify cells to see the added spaces in the cell

This has the added functionality of keeping the cell formatted as number and mathematical formulas will still work.

answered Jul 2, 2015 at 1:52

wbeard52's user avatar

wbeard52wbeard52

3,4073 gold badges27 silver badges40 bronze badges

1

Select the cells you wish to process and run this small macro:

Sub dural()
    For Each r In Selection
    With r
        .Value = "' " & .Text
    End With
    Next r
End Sub

answered Jul 2, 2015 at 1:38

Gary's Student's user avatar

Gary’s StudentGary’s Student

19.2k6 gold badges25 silver badges38 bronze badges

 

bijela

Пользователь

Сообщений: 9
Регистрация: 27.11.2017

Вставка пробелов в начале строки при помощи VBA.
В каждой ячейке первого столбца находится цифра.
В каждой ячейке второго столбца находится текст.
Необходимо в начало текста каждой ячейки второго столбца добавить количество пробелов, согласно цифре в соседней ячейке.  

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#2

08.12.2017 10:08:47

не ВБА

Код
=ПОВТОР(" ";A2)&B2

а если включить макрорекодер то может быть и ВБА

Лень двигатель прогресса, доказано!!!

 

skais675

Пользователь

Сообщений: 2177
Регистрация: 03.06.2014

#3

08.12.2017 10:11:20

Код
Sub tt()
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        For j = 1 To Cells(i, 1)
            Cells(i, 2) = " " & Cells(i, 2)
        Next
    Next
End Sub

Прикрепленные файлы

  • table.xls (33 КБ)

Изменено: skais67508.12.2017 10:11:35

Мой канал

 

Karataev

Пользователь

Сообщений: 2306
Регистрация: 23.10.2014

#4

08.12.2017 10:13:00

Код
Sub Добавить_пробелы()
    Dim arr(), lr As Long, i As Long
    lr = Cells(Rows.Count, "A").End(xlUp).row
    arr() = Range("A2:B" & lr).Value
    For i = 1 To UBound(arr)
        arr(i, 2) = String(arr(i, 1), " ") & arr(i, 2)
    Next i
    Range("A2:B" & lr).Value = arr()
End Sub
 

Nordheim

Пользователь

Сообщений: 3154
Регистрация: 18.04.2017

#5

08.12.2017 10:13:41

Код
Sub test()
Dim i&, lrow&, itxt$, j&
Application.ScreenUpdating = False
With Лист1
    lrow = .Range("a" & .Rows.Count).End(xlUp).Row
    For i = 2 To lrow
        itxt = ""
        For j = 1 To .Range("a" & i).Value
            itxt = itxt & " "
        Next j
        .Range("b" & i).Value = itxt & .Range("b" & i)
    Next i
End With
Application.ScreenUpdating = True
End Sub

«Все гениальное просто, а все простое гениально!!!»

 

bijela

Пользователь

Сообщений: 9
Регистрация: 27.11.2017

#6

08.12.2017 11:32:44

Великолепно.
Каждый ответ по-своему интересен.
Спасибо всем. Удачи вам.

Добавление пробела в текстовую ячейку

Новосибирск

Дата: Пятница, 18.10.2019, 08:03 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 5


Репутация:

0

±

Замечаний:
0% ±


Excel 2002

Здравствуйте. Имеется столбец с пяти и шестизначными цифрами типа 12 345 и 123 456. Все числа разные. Форматирую ячейки в текстовый формат, пробел уходит. получается 12345 и 123456. Задача максимум: добавить в начало пятизначных чисел ноль, и вставить пробел между вторым и третьим знаком для всех чисел. Задача минимум: вставить пробел между вторым и третьим знаком для всех чисел. Желательно в виде макроса. Спасибо.

 

Ответить

Kostya_Ye

Дата: Пятница, 18.10.2019, 08:18 |
Сообщение № 2

Группа: Проверенные

Ранг: Обитатель

Сообщений: 271


Репутация:

228

±

Замечаний:
0% ±


Excel 2016

Новосибирск, добрый день,
без файла примера и из описания не ясно, хотите ли вы изменить отображение значения в ячейке или само содержимое ячейки.
Для изменения отображения достаточно использовать пользовательский формат ячейки 000 000

 

Ответить

Russel

Дата: Пятница, 18.10.2019, 08:20 |
Сообщение № 3

Группа: Друзья

Ранг: Старожил

Сообщений: 1392


Репутация:

318

±

Замечаний:
0% ±


Excel 2010

Доброе утро!
Обязательно макрос? Формула не пойдет?

Код

=ТЕКСТ(A1;»### 000 000″)


QIWI 9173973973

 

Ответить

Новосибирск

Дата: Пятница, 18.10.2019, 08:56 |
Сообщение № 4

Группа: Пользователи

Ранг: Прохожий

Сообщений: 5


Репутация:

0

±

Замечаний:
0% ±


Excel 2002

Russel, Спасибо. Можно и формулу. Но эта разбивает на 123 456. А надо 12 3456.

Сообщение отредактировал НовосибирскПятница, 18.10.2019, 08:58

 

Ответить

Новосибирск

Дата: Пятница, 18.10.2019, 09:01 |
Сообщение № 5

Группа: Пользователи

Ранг: Прохожий

Сообщений: 5


Репутация:

0

±

Замечаний:
0% ±


Excel 2002

Kostya_Ye, Спасибо. Хочу изменить отображение. Данное форматирование требуется только для вывода на печать. Числа в расчётах не участвуют.

 

Ответить

Kostya_Ye

Дата: Пятница, 18.10.2019, 09:03 |
Сообщение № 6

Группа: Проверенные

Ранг: Обитатель

Сообщений: 271


Репутация:

228

±

Замечаний:
0% ±


Excel 2016

Новосибирск,
в первом сообщении вы указали пробел после третьего знака, а не после четвертого, как все таки нужно?
приложите пример в файле эксель до 100 кб с ручным заполнение для разных вариантов как есть и как нужно получить в итоге.

Сообщение отредактировал Kostya_YeПятница, 18.10.2019, 09:04

 

Ответить

bmv98rus

Дата: Пятница, 18.10.2019, 09:10 |
Сообщение № 7

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

«0 0000»


Замечательный Временно просто медведь , процентов на 20.

 

Ответить

Новосибирск

Дата: Пятница, 18.10.2019, 09:11 |
Сообщение № 8

Группа: Пользователи

Ранг: Прохожий

Сообщений: 5


Репутация:

0

±

Замечаний:
0% ±


Excel 2002

попробовал пользовательскиие форматы ##» «#### и 00 000 и 00» «0000. Чёт ничего у меня не меняет

 

Ответить

Новосибирск

Дата: Пятница, 18.10.2019, 09:18 |
Сообщение № 9

Группа: Пользователи

Ранг: Прохожий

Сообщений: 5


Репутация:

0

±

Замечаний:
0% ±


Excel 2002

Всё получилось. Спасибо, братцы. hands Сэкономили мне полжизни.

Сообщение отредактировал НовосибирскПятница, 18.10.2019, 09:36

 

Ответить

  • Символ перед каждым словом в ячейке – Excel формула
  • Символ после каждого слова в ячейке – формула
  • Вставить символы до и после каждого слова в 2 клика
  • Заключение

Я уже рассматривал решения похожей задачи – как добавить символ, слово или текст во все ячейки столбца, но он предполагает единичную вставку в начале или в конце самой ячейки. Здесь задача звучит иначе — нужно быстро вставить какой-то символ перед каждым словом, т.е. символ вставится не единожды, а столько раз, сколько слов в ячейке. В случаях, когда в ячейке одно слово, задачи равнозначны.

Один из ярких примеров задачи – простановка в ключевых словах для рекламы в Яндекс Директ операторов “!” перед каждым словом. Это одна из полезных практик, позволяющая отключить показы по синонимам. Популярны также запросы о том, как проставить запятые после каждого слова или заключить каждое слово в ячейке в кавычки. Последнее по сути означает две последовательные операции – добавление символа кавычек перед каждым словом, и затем после (или наоборот).

Символы перед каждым словом и после каждого слова в ячейках Excel

Символ перед или после каждого слова в ячейке

Для начала определимся с понятиями и будем считать словом любой набор символов в ячейке, границей которого является или начало строки, или пробел, или конец строки. Т.е. если перед буквами уже есть какие-то символы, нашей задачей будет не вставить символы после них, но перед буквами, а перед. В такой конфигурации задача решаема довольно просто. Нам нужно будет учесть 4 момента:

  1. Если в ячейке слов нет вообще – в ячейку нельзя ничего добавлять;
  2. Если в ячейке одно слово, достаточно просто вставить перед ним символ, обращаясь к нему как к ячейке;
  3. Если слов 2 и более – пробел между ними можно заменять на пробел и необходимый символ, это формально и будет добавлением символа перед каждым словом, кроме первого;
  4. На всякий случай лучше избавиться от лишних пробелов между словами, иначе предыдущий этап создаст и лишние символы в ячейке.

Теперь, когда все нюансы ясны, рассмотрим соответствующие необходимые функции:

  1. ЕСЛИ поможет нам составить условие проверки и дать Excel дальнейшие инструкции в зависимости от ее результата;
  2. СЦЕПИТЬ (или просто “&”) добавит символ перед значением ячейки;
  3. ПОДСТАВИТЬ поможет заменить пробелы на пробел и необходимый для вставки перед словами символ;
  4. СЖПРОБЕЛЫ поможет перед этим избавиться от лишних пробелов.

Смотрите пример создания составной формулы из этих функций:

Символ перед каждым словом в excel

Составляем формулу вставки символа перед каждым словом. Отрабатываем случаи, когда в ячейке пусто и когда нужно удалить лишние пробелы

Итак, итоговая универсальная формула:

=ЕСЛИ(A1="";"";D1&ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);" ";" "&D1))

Здесь D1 — ячейка, содержащая необходимый символ. Можно не обращаться к ячейке, а “захардкодить” его внутрь формулы вручную. Например, вставка восклицательного знака перед каждым словом будет выглядеть так:

=ЕСЛИ(A1="";"";"!"&ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);" ";" !"))

Символ после каждого слова в ячейке – формула

Чтобы вставить символ после каждого слова в ячейке (например, запятую или точку с запятой как общепринятые символы-разделители), можно использовать аналогичную формулу в легкой модификации.

=ЕСЛИ(A1="";"";ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);" ";D1&" ")&D1)

Здесь в ячейке D1 указанный символ. Вот как формула работает на примере. Обратите внимание, поскольку в нем адресация на ячейку D1 не абсолютная, символ протянут вниз вместе с формулой, которая на него ссылается.

Символ после каждого слова в Excel

Вставляем символ после каждого слова в ячейках с помощью формулы.

Вставить символы до и после каждого слова в 2 клика

Для тех, кто любит экономить время и не мучить себя запоминанием, вводом или даже копированием длинных формул, было разработано решение в надстройке !SEMTools. Запустить вставку символа до или после всех слов выделенных ячеек можно в 1 клик из меню «Изменить слова» в группе «ИЗМЕНИТЬ».

В примере ниже мы решаем импровизированную задачу — закавычиваем каждое слово в ячейках столбца:

Каждое слово в кавычки в Excel

Вставляем кавычки до и после каждого слова в Excel с помощью !SEMTools

Заключение

Надеюсь, материал был для вас полезен, вы научились вставлять символы перед и после каждого слова с помощью стандартных формул Excel и обратили внимание на простое решение задачи с помощью моей надстройки. Наверняка вас могут заинтересовать другие способы изменить слова в Excel:

  • Каждое слово с заглавной буквы в Excel;
  • Склонение по падежам в Excel.

Если в ходе добавления символов вы добавили что-то лишнее, почитайте про способы быстро удалить все символы, кроме букв и цифр. А для PPC-специалистов, о которых зашла речь в самом начале, есть еще более интересные и быстрые решения. Примеры здесь: операторы ключевых слов Яндекс.Директа.

Часто сталкиваетесь с этой или похожими задачами при работе в Excel?
С !SEMTools нет необходимости прописывать сложные формулы. Решайте рутинные рабочие задачи за пару кликов!

Понравилась статья? Поделить с друзьями:
  • Добавить лист в excel 2013
  • Добавить подпись к картинке word
  • Добавить лист в excel 2007 если нет листов
  • Добавить подключение в excel
  • Добавить лист в excel 2003 если нет листов