Excel вставить пробел после трех знаков

Добавление пробелов после i символа в ячейке

Trank444

Дата: Четверг, 02.07.2015, 13:21 |
Сообщение № 1

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

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

Сообщений: 9


Репутация:

0

±

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


Excel 2003

Доброго времени суток!
Помогите, пожалуйста, в решении следующей проблемы:
Необходимо в массиве ячеек добавить в каждую пробелы после первого, третьего, восьмого, десятого и четырнадцатого символа ячейки поставить пробел.
Например, есть значение 12345678910111213. в результате должно получиться 1 23 45678 91 0111 213

 

Ответить

Manyasha

Дата: Четверг, 02.07.2015, 13:26 |
Сообщение № 2

Группа: Модераторы

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

Сообщений: 2198


Репутация:

898

±

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


Excel 2010, 2016

Trank444, используйте функцию ЗАМЕНИТЬ, пример первого пробела:

Код

=ЗАМЕНИТЬ(A9;1;1;ЛЕВБ(A9;1)&» «)

Если не получится — прикладывайте файл.


ЯД: 410013299366744 WM: R193491431804

 

Ответить

Trank444

Дата: Четверг, 02.07.2015, 14:02 |
Сообщение № 3

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

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

Сообщений: 9


Репутация:

0

±

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


Excel 2003

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

К сообщению приложен файл:

Example1.xls
(58.5 Kb)

 

Ответить

_Boroda_

Дата: Четверг, 02.07.2015, 14:07 |
Сообщение № 4

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

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


2003; 2007; 2010; 2013 RUS

Так нужно?

Код

=ТЕКСТ(ЛЕВБ(A1;15);»0 00 00000 00 0000 0″)&ПСТР(A1;16;9)

Второй файл — Ваш последний с формулой


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Trank444

Дата: Четверг, 02.07.2015, 14:11 |
Сообщение № 5

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

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

Сообщений: 9


Репутация:

0

±

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


Excel 2003

_Boroda_, Спасибо большое! именно то, что надо

 

Ответить

Макрописец

Дата: Четверг, 02.07.2015, 14:11 |
Сообщение № 6

Группа: Заблокированные

Ранг: Форумчанин

Сообщений: 128


Репутация:

7

±

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


Excel 2010

=ТЕКСТ(ЛЕВБ(A1;15);»0 00 00000 00 0000 0″)&ПСТР(A1;16;9)

Сколько уже с Экселем дружу, сколько формул написал, макросов подопиливал, а в жизни не подумал бы, что можно так объединять функции.


ТЕРПЕНИЕ И ТРУД — ВСЁ ПЕРЕТРУТ!

 

Ответить

ShAM

Дата: Пятница, 03.07.2015, 04:31 |
Сообщение № 7

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

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

Сообщений: 1347


Репутация:

249

±

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


Excel 2010

hands
Александр, после такого понимаешь, что в эксель ни фига не понимаешь %)
ЗЫ: Саш, это я про себя :)

 

Ответить

Narahon

Дата: Вторник, 18.12.2018, 16:20 |
Сообщение № 8

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

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

Trank444, используйте функцию ЗАМЕНИТЬ, пример первого пробела:

А как сделать на примере этой формулы, если нужно подставить пробел после 1 буквы и после 4 буквы?

 

Ответить

_Boroda_

Дата: Вторник, 18.12.2018, 16:31 |
Сообщение № 9

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

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


2003; 2007; 2010; 2013 RUS

Код

=ЗАМЕНИТЬ(ЗАМЕНИТЬ(A1;5;;» «);2;;» «)


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Светлый

Дата: Вторник, 18.12.2018, 17:37 |
Сообщение № 10

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

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

Сообщений: 1742


Репутация:

479

±

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


Excel 2013, 2016

Ну и свои пять копеек вставлю:

Код

=ЗАМЕНИТЬ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A1;15;;» «);11;;» «);9;;» «);4;;» «);2;;» «)


Программировать проще, чем писать стихи.

 

Ответить

Narahon

Дата: Вторник, 18.12.2018, 18:39 |
Сообщение № 11

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

Ранг: Новичок

Сообщений: 42


Репутация:

0

±

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


Excel 2016

Всем спасибо за помощь, нашёл в чем у меня была проблемка) Буду пользоваться)

 

Ответить

Если у вас есть несколько текстовых строк в списке листа, теперь вы хотите вставить пробел после каждых 3 или x символов в ячейках, как показано на следующем снимке экрана. Как быстро и легко решить эту проблему в Excel?


стрелка синий правый пузырь Вставить / добавить пробел после каждых x символов в ячейках с кодом VBA

Применяя следующий код VBA, вы можете быстро вставить пробел после каждых n символов для нескольких ячеек одновременно, сделайте следующее:

1. Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. Затем нажмите Вставить > Модулии вставьте следующий код в Модули окно.

Код VBA: вставлять пробел после каждых x символов:

Sub addspace()
'updateby Extendoffice
    Dim i As Long
    Dim xCell As Range
    Dim xRg As Range
    Dim xTxt As String
    Dim xStr As String
    Dim xUpdate As Boolean
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
    If xRg Is Nothing Then Exit Sub
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    For Each xCell In xRg
        xStr = xCell.Text
        xTxt = ""
        For i = 1 To Len(xStr) Step 4
            If xTxt = "" Then
                xTxt = Mid(xStr, i, 4)
            Else
                xTxt = Trim(xTxt) & " " & Mid(xStr, i, 4)
            End If
        Next
        xCell = xTxt
    Next
    Application.ScreenUpdating = xUpdate
End Sub

3, Затем нажмите F5 ключ для запуска этого кода, и в поле подсказки выберите ячейки, в которые вы хотите вставить пробел, см. снимок экрана:

doc добавить пробел после x символов 2

4, Затем нажмите OK кнопку, а пробелы были вставлены в содержимое ячейки после каждых четырех символов, см. снимки экрана:

Внимание: В приведенном выше коде вы можете изменить номер 4 на другой номер, чтобы вставить пробел после. А также вы можете изменить пространство разделителя на другие разделители в этом правиле xTxt = Trim (xTxt) & «» & Mid (xStr, i, 4) приведенного выше кода.


стрелка синий правый пузырь Вставить/Добавить пробел после каждых x символов в ячейках с Kutools for Excel

Kutools for ExcelАвтора Добавить текст функция также может помочь вам быстро и легко решить эту проблему.

После установки Kutools for Excel, пожалуйста, сделайте следующее :( Бесплатная загрузка Kutools for Excel от Yhao сейчас! )

1. Выделите текстовые строки, в которые вы хотите вставить пробел.

2. Затем нажмите Кутулс > Текст > Добавить текст, см. снимок экрана:

3. В Добавить текст диалоговом окне нажмите пробел один раз в Текст поле и выберите Указывать вариант под Позиция, затем введите позиции, в которые вы хотите вставить пробел, см. снимок экрана:

doc добавить пробел после x символов 6

4, Затем нажмите Ok or Применить , вы получите результат, в котором пробелы были вставлены после каждых четырех символов по мере необходимости.

Tips: Количество позиций в поле «Указать» следует разделять запятыми.

Бесплатная загрузка Kutools for Excel от Yhao сейчас!


Связанная статья:

Как добавить / вставить определенный символ каждые x символов в ячейки?


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

 

atyurkov

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

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

Всем здравствуйте.
Перечитал аналогичные темы на этом сайте и так не смог подобрать решение под мою проблему.
Нужна формула, которая поставит пробелы после 2-го и 8-го символов.
Пример
Было ZB3468420012 — стало ZB 346842 0012
Только есть одно НО!
Макросы у меня не работают, так как MAC OS

 

БМВ

Модератор

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

Excel 2013, 2016

=REPLACE(REPLACE(B3;9;0;» «);3;;» «)

По вопросам из тем форума, личку не читаю.

 

atyurkov

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

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

Спасибо тебе, добрый человек.

Изменено: vikttur09.08.2021 13:21:04

 

Юрий М

Модератор

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

Контакты см. в профиле

 

БМВ

Модератор

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

Excel 2013, 2016

#5

09.08.2021 12:54:23

Цитата
Юрий М написал:
ЗАЧЕМ?

А это к вопросу из соседней темы о работе кнопки, Цитировать и Имя заметнее чем ответить, а на Цетировать все и влетает.

По вопросам из тем форума, личку не читаю.

 

Юрий М

Модератор

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

Контакты см. в профиле

Миш, зачем вообще в данном случае было жмакать по этой кнопке?  Безотносительно её заметности.
А кнопкой «Ответить» вообще не пользуюсь и не понимаю, зачем её вообще создали.  

 

Jack Famous

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

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

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#7

09.08.2021 13:09:49

Цитата
Юрий М: кнопкой «Ответить» вообще не пользуюсь и не понимаю, зачем её вообще создали

согласен — ещё и прямо над окном с вводом, в которое перемещается курсор при нажатии  :D Лучше бы написали «Ответить» вместо «Имя«, так в форме сразу обращение к человеку будет  :idea:

Изменено: Jack Famous09.08.2021 13:10:33

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

buchlotnik

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

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

Excel 365 Бета-канал

Офигеть, если бы не эта тема — не знал бы о самом существовании кнопки Ответить  :)

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

БМВ

Модератор

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

Excel 2013, 2016

#9

09.08.2021 16:14:20

Off

Цитата
buchlotnik написал:
не знал бы о самом существовании кнопки Ответить  

это тебе не задокументированный XPATCH  :D

По вопросам из тем форума, личку не читаю.

 

buchlotnik

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

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

Excel 365 Бета-канал

#10

09.08.2021 19:05:33

Цитата
БМВ написал:
задокументированный XPATCH

да, задокументированный и в документации черным по белому написано xpaTH! сколько можно-то. и в целом задокументированы функции листа, VBA, VBS, SQL, M, DAX, XML — и что? не пользоваться теперь? «только монстроформулы только хардкор»? не нравится читать — не читай, кому-то полезно, или попроси модераторов тему снести, как «оскорбляющую чувства верующих»

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

БМВ

Модератор

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

Excel 2013, 2016

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

Изменено: БМВ09.08.2021 20:37:09

По вопросам из тем форума, личку не читаю.

 

memo

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

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

Excel 2013/2016

#12

09.08.2021 22:28:50

Офтоп.
Подавляющее большинство новичков жмут именно эту кнопку, считая, что раз она так работает, значит это нормально. А ведь на многих форумах эта кнопка просто работает по-другому: жмешь и открывается пустое окно. Может и здесь имеет смысл изменить ее поведение подобным образом, а цитирование сделать по выделению текста, и странички не будут захламляться и модераторам будет спокойнее.

Is there some function to add a space after every three character in Excel vba?
The name of the column header is «POST»

asked Sep 22, 2016 at 12:01

Heresh's user avatar

4

What have you tried? This is one way to go about it — note: it’s always good to check you understand the code before using it

Function AddSpace(rng As Range) As String
    Dim i As Integer
    Dim str As String

    For i = 1 To Len(rng.Value) Step 3
       str = str & " " & Mid(rng.Value, i, 3)
    Next i

    AddSpace = Mid(str, 2)
End Function

For your string in cell A1, use the formula =ADDSPACE(A1) to split the string as required. Example below

enter image description here

Edit: updated code slightly — thanks Tyeler

answered Sep 22, 2016 at 12:23

CallumDA's user avatar

CallumDACallumDA

12k6 gold badges30 silver badges52 bronze badges

Since Callum has already provided you with some code, I’ll leave this here for anyone who might come across it in the future. This does the same thing Callum’s code does, but instead of referencing a different cell in the function, you just put in the string.

Ex. in cell A1 you could put =AddSpace("mystring") and it would return the value in A1 as mys tri ng. Just an option.

Function AddSpace(Strng As String) As String
    Dim t As String, i As Long
    For i = 1 To Len(Strng) Step 3
        t = t & " " & Mid$(Strng, i, 3)
    Next i
    AddSpace= Mid$(t, 2)
End Function

answered Sep 22, 2016 at 12:32

Tyeler's user avatar

TyelerTyeler

1,0861 gold badge12 silver badges26 bronze badges

Есть ли какая-то функция для добавления пробела после каждых трех символов в Excel vba? Имя заголовка столбца — «POST».

2 ответа

Лучший ответ

Что пробовали? Это один из способов решить эту проблему — примечание : всегда полезно проверить, понимаете ли вы код, прежде чем использовать его.

Function AddSpace(rng As Range) As String
    Dim i As Integer
    Dim str As String

    For i = 1 To Len(rng.Value) Step 3
       str = str & " " & Mid(rng.Value, i, 3)
    Next i

    AddSpace = Mid(str, 2)
End Function

Для строки в ячейке A1 используйте формулу =ADDSPACE(A1), чтобы разделить строку по мере необходимости. Пример ниже

enter image description here

Изменить: немного обновлен код — спасибо Тайлеру


2

CallumDA
22 Сен 2016 в 12:51

Поскольку Каллум уже предоставил вам некоторый код, я оставлю его здесь для всех, кто может столкнуться с ним в будущем. Это делает то же самое, что и код Каллума, но вместо ссылки на другую ячейку в функции вы просто вводите строку.

Ex. в ячейку A1 вы можете поместить =AddSpace("mystring"), и он вернет значение в A1 как mys tri ng. Просто вариант.

Function AddSpace(Strng As String) As String
    Dim t As String, i As Long
    For i = 1 To Len(Strng) Step 3
        t = t & " " & Mid$(Strng, i, 3)
    Next i
    AddSpace= Mid$(t, 2)
End Function


2

Tyeler
22 Сен 2016 в 12:32

Like this post? Please share to your friends:
  • Excel вставить пробел перед заглавной буквой
  • Excel вставить пробел в число
  • Excel вставить пробел в текст
  • Excel вставить пробел в слово
  • Excel вставить примечание нет