Данные из нескольких ячеек вставить в одну...

Программирование на Visual Basic for Applications
sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Данные из нескольких ячеек вставить в одну...

Сообщение sonata » 11.04.2003 (Пт) 15:09

Данные из нескольких ячеек вставить в одну...
Вопрос следующий:
Есть таблица в Excel c различными полями.
Из нее приходится копировать различные данные, кот. нах-ся
в разных местах. Так вот, можно ли придумать такую кнопку,
которая копирует значение выделенных ячеек, но не просто копирует,
а производит операцию СЦЕПИТЬ(), для того, чтобы потом данные из нескольких
ячеек вставить в одну...
В голову приходит следующая мысль:
Dim myRange1 As Range
Set myRange1 = Application.Selection
Но вот, как потом оформить функцию СЦЕПИТЬ()?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 11.04.2003 (Пт) 15:32

Можно сделать так:



Sub MyCopy()

Dim data As New DataObject

For Each cll In Selection

myvle = myvle & cll.Value

Next cll

data.SetText myvle

data.PutInClipboard

End Sub

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 11.04.2003 (Пт) 15:53

Ругается на :
data As New DataObject

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 11.04.2003 (Пт) 15:59

Хм.. Подключи Micorosoft Forms 2.0 Library в Tools\References

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 11.04.2003 (Пт) 16:07

Супер! Все заработало!
Я даже не ожидала, что настолько простой окажется код!
Огромное спасибо!!!!!!!

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 11.04.2003 (Пт) 16:11

И еще, как эту эту весьма полезную программку сделать как
надстройку, чтобы она подключалась ко всем excel-м файлам?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 11.04.2003 (Пт) 16:23

Создай чистую книгу.

В ней создай этот макрос.

Сохрани книгу как Excel Add-in (*.xla)

И потом пожключи ее через меню Tools\Add-ins

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 11.04.2003 (Пт) 16:36

Все сделала.
Создала пустую книгу, создала в ней лист Class1
Сохранила как надстройку, а как теперь ее вызвать?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 11.04.2003 (Пт) 16:48

Я ж написал - в меню Tools\Addins и вперед ;)


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 79

    TopList