Как сделать сайт:
  HTML
  JavaScript
  PHP
  CMS
Microsoft Office:
  Word
  Excel
  VBA
Просто о сложном
Список форумов on-line-teaching.com on-line-teaching.com
Онлайн курсы MS Office: Word, Excell. Как сделать сайт: HTML, JS, PHP
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Макрос Excel

 
Начать новую тему   Ответить на тему    Список форумов on-line-teaching.com -> Excel: общие вопросы
Предыдущая тема :: Следующая тема  
Автор Сообщение
cyoshi
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 31.05.2008
Сообщения: 3

СообщениеДобавлено: Сб Май 31, 2008 9:00 am    Заголовок сообщения: Макрос Excel Ответить с цитатой

вопрос по макросом VBA

как текст из нескольких ячеек объеденить в одну

объясняю:
1с формироует базу клиентов

Фамилия
-купил тото
-купил тото
-купил тото
-купил тото
(пустая строка)

Фамилия
-купил тото
-купил тото
-купил тото
-купил тото
(пустая строка)

и тд.
я хочу чтобы мой макрос, все то что купил покупатель объяденил в одну строку и скопировал в яейку рядом с фамилией покупателя.
это возможно?
Умные люди помогите плз!!!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Сб Май 31, 2008 2:08 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
это возможно?

Да легко...
Код:
Sub Merge()
Dim c As Range, c1 As Range
Dim worker As String, goods As String
Dim Flag As Boolean


For Each c In Selection
    If Flag Then
        If c.Value = "" Then
            c1.Value = worker & ": " & goods
            Flag = False
        Else
            goods = goods & c.Value & " "
        End If
    Else
        worker = c.Value
        Set c1 = c.Offset(0, 1)
        Flag = True
    End If
Next
c1.Value = worker & ": " & goods
End Sub
[/code]
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Сб Май 31, 2008 2:09 pm    Заголовок сообщения: Ответить с цитатой

Да, забыл сказать - перед запуском макроса нужно выделить ячейки от первой фамилии до последней ячейки с товаром.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
cyoshi
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 31.05.2008
Сообщения: 3

СообщениеДобавлено: Сб Май 31, 2008 3:19 pm    Заголовок сообщения: Ответить с цитатой

спасибо классно только
получается так

покупатель 1
чтото 1
покупатель 2
чтото 1+ чтото2

нельзя чтоб у каждого был только свой товар?
получается каждый последующий покупатель плюсует покупки предыдущего
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Пн Июн 02, 2008 11:17 am    Заголовок сообщения: Ответить с цитатой

ДА, ошибочка.
Вставьте сразу после вот этой строки:
worker = c.Value

строчку
goods=""
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
cyoshi
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 31.05.2008
Сообщения: 3

СообщениеДобавлено: Вт Июн 03, 2008 5:48 am    Заголовок сообщения: Ответить с цитатой

класс все работает теперь!!!
спасибо!
и еще вопросик

нельзя ли чтобы те строки которые он скопировал и вставил в одну ячейку он удалил? чтобы было так

покупатель 1| чтото 1
покупатель 2| чтото 2
покупатель 3| чтото 3

без пустых строк )
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
user-jiva
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 07.06.2008
Сообщения: 2

СообщениеДобавлено: Сб Июн 07, 2008 8:50 pm    Заголовок сообщения: Ответить с цитатой

Еще вопрос по поводу макроса. Что надо сделать что-бы В конце каждого названия товара убирались пробелы. Просто когда начинаю сводить два отчета, то из-за того что в одном отчете в конце стоят пробелы, естественно ничего не получается. Попытался сделать макрос для этого дела, но пробелы упорно не удаляются. Может надо его как хитро писать?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Пн Июн 09, 2008 9:36 am    Заголовок сообщения: Ответить с цитатой

user-jiva писал(а):
Еще вопрос по поводу макроса. Что надо сделать что-бы В конце каждого названия товара убирались пробелы. Просто когда начинаю сводить два отчета, то из-за того что в одном отчете в конце стоят пробелы, естественно ничего не получается. Попытался сделать макрос для этого дела, но пробелы упорно не удаляются. Может надо его как хитро писать?

Если Вы уже с макросами работали, то эта подсказка ВАм поможет:
Убрать справа пробелы в строке s:
s = RTRIM(s)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
user-jiva
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 07.06.2008
Сообщения: 2

СообщениеДобавлено: Пн Июн 16, 2008 7:56 pm    Заголовок сообщения: Ответить с цитатой

Спасибо за ответ. Я только начал с этим делом зазбираться. Поэтому в этом деле полный чайник или даже пустой Rolling Eyes . Могу делать элементарные вещи, типа выделить жирным шрифтом, цвет поменять ну и т.д. Не понял как эту формулу вставлять.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов on-line-teaching.com -> Excel: общие вопросы Часовой пояс: GMT + 2
Страница 1 из 1

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


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB