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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2015, 14:34   #1
cfkhellboy1992
Пользователь
 
Регистрация: 08.12.2014
Сообщений: 32
По умолчанию Исправить Макрос

Код:
Option Explicit

Sub getTable(rngFull As Range, rngOutput As Range, lngStart As Long, lngEnd As Long)
Dim rngRow As Range
Dim rngSize As Range
Dim lngSize As Long

For Each rngRow In rngFull.Rows
lngSize = 35
For Each rngSize In Range(rngRow.Cells(1, lngStart), rngRow.Cells(1, lngEnd))
If rngSize Like "*#*" Then
Range(rngRow.Cells(1, 1), rngRow.Cells(1, lngStart - 1)).Copy rngOutput
rngOutput(1, lngStart - 2) = rngSize
rngOutput(1, lngStart - 1) = lngSize
lngSize = lngSize + 1
Set rngOutput = rngOutput(2, 1)
End If
Next rngSize
Next
End Sub
Sub main()
Call getTable([a2:v3], [a6], 12, 22)
End Sub

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


____
код нужно форматировать тегами!
Модератор
Вложения
Тип файла: zip Руслану.zip (22 байт, 128 просмотров)

Последний раз редактировалось Serge_Bliznykov; 20.04.2015 в 15:24.
cfkhellboy1992 вне форума Ответить с цитированием
Старый 20.04.2015, 16:46   #2
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

Какой диапазон передаёшь в процедуру тот и обрабатывается
[a2:v3]
Передавай нужный
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Старый 20.04.2015, 16:48   #3
cfkhellboy1992
Пользователь
 
Регистрация: 08.12.2014
Сообщений: 32
По умолчанию ответ

Sub main()
Call getTable([a2:a10000], [a6], 12, 22)
End Sub
как указать запись результата на другой лист или в пустую ячейку а не в a6?
cfkhellboy1992 вне форума Ответить с цитированием
Старый 20.04.2015, 16:48   #4
cfkhellboy1992
Пользователь
 
Регистрация: 08.12.2014
Сообщений: 32
По умолчанию

Sub main()
Call getTable([a2:a10000], [a6], 12, 22)
End Sub
как указать запись результата на другой лист или в пустую ячейку а не в a6?
cfkhellboy1992 вне форума Ответить с цитированием
Старый 21.04.2015, 06:22   #5
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

А если самому просто посмотреть на аргумены?!
Ничего не наталкивает на идеи?
Call getTable([a2:a10000], [a6], 12, 22)
как указать запись результата на другой лист или в пустую ячейку а не в a6?
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru

Последний раз редактировалось alex77755; 21.04.2015 в 06:25.
alex77755 вне форума Ответить с цитированием
Старый 21.04.2015, 07:37   #6
Sclif666
Новичок
Джуниор
 
Регистрация: 14.04.2015
Сообщений: 2
По умолчанию

cfkhellboy1992, Руслану.zip - пустой архив?
alex77755 - привет от Апостроффа.
Sclif666 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос постоянно обрабатывает события. При открытии другой книги макрос обрывается. Ples Microsoft Office Excel 8 17.12.2016 18:15
Помогите исправить макрос vba www_www Помощь студентам 0 16.12.2014 01:08
Исправить макрос не хватает опыта. Steepka Microsoft Office Excel 4 23.09.2013 20:13
как исправить макрос? Nicolas_46 Microsoft Office Excel 2 07.01.2013 17:16
Макрос вставки файлов в листы-Необходимо изменить ниже приведённый макрос as-is Microsoft Office Excel 4 25.02.2010 07:51