1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Раскидать содержимое столбца по нескольким столбцам

Тема в разделе "Visual Basic", создана пользователем rustamh, 16 мар 2009.

Статус темы:
Закрыта.
  1. rustamh

    rustamh Гость

    Репутация:
    0
    Здравствуйте!
    У меня в экселе есть большая таблица - словарь личный как бы.
    В одном столбце идет слово, либо группа слов, разделенных пробелами.
    чаще всего это такая конструкция:
    слово1 (слово2) слово3
    Можно ли сделать так, чтобы если в столбце такая конструкция, все эти слова раскидались бы в отдельные столбцы (заранее чистые например).
    Если можно - подскажите пожалуйста как это сделать. Таблица уже большая - тысячи строк. а в ручную не охота раскидывать :)
     
  2. Gamlet

    Gamlet Well-Known Member

    Репутация:
    0
    Регистрация:
    8 янв 2007
    Сообщения:
    525
    Симпатии:
    0
    А в вба есть регулярные выражения? Если есть http://visualprogs.medyal.ru/all/4.html сюда. Читаешь ячейку (надеюсь перебор сам сделаешь) ищешь первое слово потом второе и т.д. Или mid ом. Если вб вообще не знаешь-скажи. Напишу код.
     
  3. rustamh

    rustamh Гость

    Репутация:
    0
    с ВБ немного знаком, но очень слабо. Могу разбираться конечно . но времени много уходит.
    если можно дайте код пожалуйста. буду очень признателен. Если нет - придется много времени тратить
    заранее спасибо
     
  4. Gamlet

    Gamlet Well-Known Member

    Репутация:
    0
    Регистрация:
    8 янв 2007
    Сообщения:
    525
    Симпатии:
    0
    Ну вопервых на решение своей проблеммы надо тратить много времени. Дав код я поступлю плохо, но т.к. сам не люблю когда непонятно отвечают попробую написать код.
    Код:
    senm="1111 1 1 1 1 1 14 14"
    
    For i=1 To 500
    Repeat
    pod=pod+1
    strr=Mid (senm, pod, 1)
    If strr=" " Or strr="" Then 
    End_per=1
    Else
    strs=strs+strr
    end_per=0
    EndIf
    Until End_per=1
    Вроде работает. Если нет- отпишись. Не у веренет, есть ли тут репит и унтил. Этот код возвращает в strs текст с разделителем пробел. Просто прочти все ячейки где текст есть(как читать-не помню) и сложи типа
    Код:
    vse=a1+" "+a2+" "+a3....
    потом вызывай этот код пока не вернет пустую строку. Если хоть на каком нить языке хоть немного знаком-должен разобратся.
     
  5. rustamh

    rustamh Гость

    Репутация:
    0
    Спасибо большое. Как попробую - сразу отпишусь
     
  6. Tanya

    Tanya Гость

    Репутация:
    0
    В Excel есть специальная команда меню "Текст по столбцам"
    1) Выделяем столбец
    2) В меню Данные -> Текст по столбцам
    3) Выбираем формат данных: с разделителями
    4) Выбираем разделитель - пробел (или другой нужный символ)
    5) При необходимости указываем диапазон куда разместить результат (Поместить в:),
    и формат столбцов результата, для этого выбираем нужный столбец и в области "Формат данных столбца"
    указываем необходимый, тут же можно указать, что столбец должен быть пропущен (опция "пропустить столбец")
    6) Ок
     
  7. Gamlet

    Gamlet Well-Known Member

    Репутация:
    0
    Регистрация:
    8 янв 2007
    Сообщения:
    525
    Симпатии:
    0
    П.с. С появлением Tanya все больше чувствую себя ненужным.
     
  8. Tanya

    Tanya Гость

    Репутация:
    0
    П.с. что я, по-сравнению с Гуру!!! :D
     
  9. rustamh

    rustamh Гость

    Репутация:
    0
    А я даже не знаю что сказать. спасибо большое обоим ;)
    это самый лучший форум, куда хочется возвращаться вновь и вновь.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей