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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2011, 18:33   #1
6306617
Пользователь
 
Регистрация: 19.01.2011
Сообщений: 15
По умолчанию Копирование выделенного диапазона

Подскажите макрос, который бы копировал выделенный диапазон в отдельный файл(xls, doc, txt), и при последующем использовании дополнял уже имеющийся. С учетом того, что в ячейках формулы, возвращающие текст.

Последний раз редактировалось 6306617; 21.03.2011 в 18:50.
6306617 вне форума Ответить с цитированием
Старый 23.03.2011, 18:44   #2
6306617
Пользователь
 
Регистрация: 19.01.2011
Сообщений: 15
По умолчанию

...хотя бы в текстовый файл
6306617 вне форума Ответить с цитированием
Старый 23.03.2011, 19:22   #3
nilem
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 616
По умолчанию

Вот такой примерчик. Сохраняет в D:\text.txt
Код:
Sub IntoTxt()
Dim poz As Range, file As String
file = "D:\text.txt"
Open file For Append Shared As #1
For Each poz In Selection
    Print #1, poz.Value
Next
Close #1
End Sub
А еще воспользуйтесь поиском по форуму - примеров много.
nilem вне форума Ответить с цитированием
Старый 23.03.2011, 20:40   #4
6306617
Пользователь
 
Регистрация: 19.01.2011
Сообщений: 15
По умолчанию

Благодарю, возможно ли чтобы данные из столбцов в файл писались через табуляцию или разделитель?

Последний раз редактировалось 6306617; 23.03.2011 в 20:46.
6306617 вне форума Ответить с цитированием
Старый 24.03.2011, 06:16   #5
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Здесь есть нужный вам код: http://excelvba.ru/code/Range2CSV

Только укажите нужный разделитель в строке
Код:
CSVtext$ = Range2CSV(ra, ";")    ' можно указать другой разделитель столбцов
и вместо функции SaveTXTfile используйте AddIntoTXTfile
в строке
Код:
 ' сохраняем текстовую CSV-строку CSVtext$ в файл с именем CSVfilename$
    SaveTXTfile CSVfolder$ & CSVfilename$, CSVtext$
EducatedFool вне форума Ответить с цитированием
Старый 24.03.2011, 15:36   #6
6306617
Пользователь
 
Регистрация: 19.01.2011
Сообщений: 15
По умолчанию

Подскажите, как изменить код чтобы обрабатывался не заданный диапазон, а выделенный. ТК в VBA очень слаб
6306617 вне форума Ответить с цитированием
Старый 24.03.2011, 15:45   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Selection - выделенный
вместо
...
CSVtext$ = Range2CSV(ra, ...
пишите
...
CSVtext$ = Range2CSV(Selection, ...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 24.03.2011, 15:49   #8
6306617
Пользователь
 
Регистрация: 19.01.2011
Сообщений: 15
По умолчанию

Благодарю, результат достигнут.
6306617 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
копирование выделенного диапазона после скрытия ненужных столбцов и последующей фильтрации Алабор Microsoft Office Excel 2 15.03.2011 15:31
Как получить в VBA номера строк выделенного диапазона? Chelentano Microsoft Office Excel 10 04.11.2010 14:25
Копирование выделенного текста из чужого окна Gerzs Общие вопросы Delphi 0 02.07.2010 18:47
Макрос на печать выделенного диапазона CLOUN Microsoft Office Excel 2 29.09.2009 19:48
Определение номера последней строки выделенного диапазона НеВа6464 Microsoft Office Excel 2 17.05.2009 14:36