|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.02.2009, 10:00 | #1 |
Форумчанин
Регистрация: 24.01.2009
Сообщений: 113
|
Слепил макрос, как его запустить?
Записал макрос, по импорту данных из файла TXT и последующей сортировки данных. Впринципе все работает. Но работает только если макрос этот на листе Х расположен. Как сделать так, что бы кнопка которая расположена на другом листе запускала этот макрос на исполнение на листе Х?
Private Sub CommandButton18_Click() ThisFile = "C:\input\L.txt" WrteInvenoty = 100 Worksheets("Х").Cells.Clear FileNumber = FreeFile Open ThisFile For Input As #FileNumber Ctr = 0 Do Line Input #FileNumber, Data Ctr = Ctr + 1 Worksheets("Х").Cells(Ctr, 1).Value = Data Loop While EOF(1) = False Close #FileNumber 'Worksheets("Х").Select ActiveWorkbook.Worksheets("Х").Sele ct Cells(1, 1).Resize(Ctr, 1).TextToColumns _ Destination:=Worksheets("Х").Range( "A1"), _ DataType:=xlDelimited, Comma:=True, FieldInfo:=Array( _ Array(1, xlGeneralFormat), Array(2, xlGeneralFormat), _ Array(3, xlGeneralFormat), Array(4, xlGeneralFormat)) ActiveWorkbook.Worksheets("Х").Sort .SortFields.Clear ActiveWorkbook.Worksheets("Х").Sort .SortFields.Add Key:=Range("D2:D500") _ , SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Х").Sort .SetRange Range("A1:J500") .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Worksheets("Лист1").Select End Sub |
12.02.2009, 10:12 | #2 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
Код:
Лучше день потерять — потом за пять минут долететь!©
|
12.02.2009, 10:14 | #3 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Убери из строки Private Sub CommandButton18_Click()
ключевое слово Private, а потом с другого листа запускай примерно так: Код:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 12.02.2009 в 10:18. |
12.02.2009, 10:17 | #4 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Все верно.
Нужно создать макрос с этим кодом. Например, Sub Sortirovka() и разместить его в программном модуле. После этого, его можно запускать откуда угодно: Код:
Чем шире угол зрения, тем он тупее.
|
12.02.2009, 10:31 | #5 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
В Вашем макросе можно заменить код
Код:
Код:
|
12.02.2009, 13:04 | #6 |
Форумчанин
Регистрация: 24.01.2009
Сообщений: 113
|
Да работает, но сортирвки нет. А мне нужно в формате от Я до А
|
12.02.2009, 13:09 | #7 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Чем "играть в футбол", прикрепите файл (фрагмент) и подробно опишите, что нужно. Все вопросы будут быстро сняты.
Чем шире угол зрения, тем он тупее.
|
12.02.2009, 19:51 | #8 |
Форумчанин
Регистрация: 24.01.2009
Сообщений: 113
|
Спасибо! Разобрался самостоятельно
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как запустить макрос из ячейки? | Maxx | Microsoft Office Excel | 8 | 15.04.2009 15:47 |
Как сделать макрос в WORD и описать его алгоритм ещё | prikolist | Microsoft Office Word | 2 | 21.11.2008 13:19 |
как запустить программу? | GothicMet | Помощь студентам | 3 | 04.10.2008 18:07 |
Как запустить макрос при изменении другой книги Excel? | Град | Microsoft Office Excel | 12 | 10.06.2008 10:01 |
Как запустить приложение, дождаться его исполнения и только потом выполнять код? | il76 | Win Api | 6 | 19.07.2007 14:00 |