Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 15.12.2007, 12:47   #1
Alex-jr
Новичок
Джуниор
 
Регистрация: 15.12.2007
Сообщений: 2
По умолчанию Ребята я новичок помогите.....

Пожалуйста подскажите как разделить в ячейке значение пробелами например: 00006421223 на 0000 642 1223, и при этом чтобы ноли не пропадали. Это прайсы и ячеик приблизительно в столбик 9859 шт. За рание всем благодарен за потрачиное на мою проблему время.
Alex-jr вне форума
Старый 15.12.2007, 13:07   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Если количество символов в строке постоянное, то так, например:
Пусть ячейка "A1" содержит 000064212232.
A = CStr(Cells(1, 1)) 'переводим в текст
Переменная "Raz" - требуемый результат.
Raz = Left(A, 4) & " " & Mid(A, 5, 3) & " " & Right(A, 4)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 15.12.2007, 13:16   #3
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Пусть столбец "A" - исходный (начиная с "A1"). Пусть нужно в столбец "B" вставить результат. Тогда:
Код:
Sub Razdel()
    Dim A As String, i As Long
    For i = 1 To ActiveSheet.Range("A65536").End(xlUp).Row
        A = CStr(Cells(i, 1))
        Cells(i, 2) = Left(A, 4) & " " & Mid(A, 5, 3) & " " & Right(A, 4)
    Next
End Sub
P. S. Столбец с результатом должен исходно иметь текстовый формат.
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 15.12.2007 в 13:19. Причина: Добавлено
SAS888 вне форума
Старый 15.12.2007, 13:53   #4
Alex-jr
Новичок
Джуниор
 
Регистрация: 15.12.2007
Сообщений: 2
По умолчанию

Я ничего не понял, может я чтото не так описал. Поробую по другому:
в ячейки "А1" есть просто набор цифр 00006421223 (это код детали по прайсу, это просто сочитание определенных цифр). Коды длятся по столбику до последней ячейки "А9859" не повторяясь в других ячейках (в каждой ячейке от "А1" до "А9859" сочитание цифер абсолютно разное). Теперь вопрос:каким образом я в этих ячейках мог бы просто разделить цифры на определенные блоки, например: с 00006421223 на 0000 642 1223?
Alex-jr вне форума
Старый 15.12.2007, 17:39   #5
ZORRO2005
Форумчанин
 
Аватар для ZORRO2005
 
Регистрация: 26.11.2006
Сообщений: 584
По умолчанию

Так SAS888 все вам отлично сделал.
Можете попробовать по другому:
В Формат-Ячейка (все форматы)Тип: поставить
0000" "000" "0000
ZORRO2005 вне форума
Старый 17.12.2007, 07:02   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Прошу впредь пояснять, какими средствами решать задачу - Excel или VBA Excel.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ребята помогите Doctor_iZmail PHP 2 17.02.2008 23:01
ПОМОГИТЕ новичку... ибо новичок это еще не знает=) gard Помощь студентам 5 16.04.2007 17:04