Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как прописать в макросе пометку всей таблицы (+) - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как прописать в макросе пометку всей таблицы (+) (Макросы/Sub)
Как прописать в макросе пометку всей таблицы (+)
tigor Дата: Пятница, 25.07.2014, 16:34 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Сразу сори за ламерство (я только учусь)

Имеется макрос (записан макрорекордером, каюсь)))) в нем, перед тем как отдать команду на заливку, прописано какую область пометить - абсолютными адресами:
вот эти строки:[vba]
Код
...
ActiveSheet.Range[b]("$A$10:$BS$1126")[/b].AutoFilter Field:=39
ActiveSheet.Range[b]("$A$10:$BS$1126")[/b].AutoFilter Field:=8, Criteria1:=">=150" _
, Operator:=xlAnd
Range("A14:AM1126").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("A2").Select
End Sub
[/vba]и все бы ничего, да оказалось, что количество строк может гулять туда-сюда. Чем заменить абсолютную величину на относительную - выделить весь активный лист, но начало с той же ячейки - А10 (она неизменна).


А еще я слышу голоса...

Сообщение отредактировал Serge_007 - Пятница, 25.07.2014, 21:26
 
Ответить
СообщениеСразу сори за ламерство (я только учусь)

Имеется макрос (записан макрорекордером, каюсь)))) в нем, перед тем как отдать команду на заливку, прописано какую область пометить - абсолютными адресами:
вот эти строки:[vba]
Код
...
ActiveSheet.Range[b]("$A$10:$BS$1126")[/b].AutoFilter Field:=39
ActiveSheet.Range[b]("$A$10:$BS$1126")[/b].AutoFilter Field:=8, Criteria1:=">=150" _
, Operator:=xlAnd
Range("A14:AM1126").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("A2").Select
End Sub
[/vba]и все бы ничего, да оказалось, что количество строк может гулять туда-сюда. Чем заменить абсолютную величину на относительную - выделить весь активный лист, но начало с той же ячейки - А10 (она неизменна).

Автор - tigor
Дата добавления - 25.07.2014 в 16:34
Rioran Дата: Пятница, 25.07.2014, 17:01 | Сообщение № 2
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
tigor, здравствуйте.

Погуглите, как посчитать количество строк в таблице (есть несколько способов). Если обозвать полученное число Х, то запись Range("$A$10:$BS$1126") примет вид Range("A10:BS" & X) где долларами можно свободно пожертвовать.
Будьте внимательны и убедитесь, что считаете строки Вы именно на Вашем листе.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279


Сообщение отредактировал Rioran - Пятница, 25.07.2014, 17:01
 
Ответить
Сообщениеtigor, здравствуйте.

Погуглите, как посчитать количество строк в таблице (есть несколько способов). Если обозвать полученное число Х, то запись Range("$A$10:$BS$1126") примет вид Range("A10:BS" & X) где долларами можно свободно пожертвовать.
Будьте внимательны и убедитесь, что считаете строки Вы именно на Вашем листе.

Автор - Rioran
Дата добавления - 25.07.2014 в 17:01
tigor Дата: Пятница, 25.07.2014, 17:05 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Погуглите, как посчитать количество строк в таблице (есть несколько способов).


Спасибо большое! Мне именно такой ответ был и нужен - удочка, а не рыба.


А еще я слышу голоса...
 
Ответить
Сообщение
Погуглите, как посчитать количество строк в таблице (есть несколько способов).


Спасибо большое! Мне именно такой ответ был и нужен - удочка, а не рыба.

Автор - tigor
Дата добавления - 25.07.2014 в 17:05
_Boroda_ Дата: Пятница, 25.07.2014, 17:09 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Вам вот так нужно?
[vba]
Код
Sub ttt()
      Range("A10", Range("A10").SpecialCells(xlLastCell)).Interior.Color = 5296274
End Sub
[/vba]
xlLastCell - последняя ячейка на листе, в которой либо есть данные, либо они были после последнего сохранения, а сейчас стерты


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеВам вот так нужно?
[vba]
Код
Sub ttt()
      Range("A10", Range("A10").SpecialCells(xlLastCell)).Interior.Color = 5296274
End Sub
[/vba]
xlLastCell - последняя ячейка на листе, в которой либо есть данные, либо они были после последнего сохранения, а сейчас стерты

Автор - _Boroda_
Дата добавления - 25.07.2014 в 17:09
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как прописать в макросе пометку всей таблицы (+) (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!