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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2013, 09:49   #11
beal
Пользователь
 
Регистрация: 07.10.2013
Сообщений: 10
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
beal, у Вас спортивный интерес? (практического я не вижу, стандартными средствами довольно очевидно какая ячейка на листе выделена)
так вот, Вам дали рабочую заготовку, вооружитесь напильником и подгоняйте ее к своим нуждам до полного удовлетворения.

удачи!
По сути вопроса похоже на спортивный интерес? Вы заблуждаетесь.
Форум и существует для помощи, если Вам нечего сказать, то для чего разводить демагогию?
p.s. в аксесе на vba такое сделать можно без проблем, а как это сделать в гребаном еккселе я не знаю (синтаксис другой), поэтому и спрашиваю.
beal вне форума Ответить с цитированием
Старый 08.10.2013, 11:50   #12
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
Сообщение от beal Посмотреть сообщение
Форум и существует для помощи, если Вам нечего сказать, то для чего разводить демагогию?
Поверьте, если бы Игорь увидел в этом смысл, то ему было бы что сказать.

а описанная Вами ситуация возникает из-за того, что при запуске в LastRow еще нет никакого диапазона. Избавиться от этого можно очень даже просто:

Код:
Dim LastRange As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Not LastRange Is Nothing Then
    On Error GoTo Ex
    For Each FC In LastRange.FormatConditions
      FC.Delete
    Next FC
    Set FC = Target.FormatConditions.Add(xlExpression, , "ÈÑÒÈÍÀ")
    FC.Interior.Color = 16641000
Ex:
  End If
  Set LastRange = Target
End Sub
з.ы. вба что в акцессе, что в экселе практически одинаковое - немного меняются лишь объекты приложения...
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 08.10.2013, 14:18   #13
beal
Пользователь
 
Регистрация: 07.10.2013
Сообщений: 10
По умолчанию

DiemonStar
Спасибо за помощь!
Новый скрипт не работает , активная ячейка не подсвечивается.
p.s. синтаксис vba в аксесе другой, сами объекты и их свойства... просто не знаю как они определяются в екселе.
p.p.s. задача со стороны может и выглядит идиотской, но нужна...
beal вне форума Ответить с цитированием
Старый 08.10.2013, 14:57   #14
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
Сообщение от beal Посмотреть сообщение
DiemonStar
Спасибо за помощь!
Новый скрипт не работает , активная ячейка не подсвечивается.
p.s. синтаксис vba в аксесе другой, сами объекты и их свойства... просто не знаю как они определяются в екселе.
p.p.s. задача со стороны может и выглядит идиотской, но нужна...
из-за копипаста слетела строка, нужно:

Цитата:
Код:
"ÈÑÒÈÍÀ"
заменить на

Код:
"ИСТИНА"
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 08.10.2013, 15:17   #15
beal
Пользователь
 
Регистрация: 07.10.2013
Сообщений: 10
По умолчанию

нет, все равно первый старт не работает...
beal вне форума Ответить с цитированием
Старый 08.10.2013, 15:40   #16
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

только что потестил такой вариант - сработало нормально:

Код:
Dim LastRange As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error GoTo Ex
    For Each FC In LastRange.FormatConditions
      FC.Delete
    Next FC
Ex:
    Set FC = Target.FormatConditions.Add(xlExpression, , "ИСТИНА")
    FC.Interior.Color = 16641000
    Set LastRange = Target
End Sub
з.ы. вставлял в код конкретной страницы.
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 08.10.2013, 16:54   #17
beal
Пользователь
 
Регистрация: 07.10.2013
Сообщений: 10
По умолчанию

Да, все ок.
Спасибо!
beal вне форума Ответить с цитированием
Старый 07.12.2013, 00:27   #18
Ghjuhfvvf
 
Регистрация: 24.05.2009
Сообщений: 3
По умолчанию

Спасибо, DiemonStar!
Ghjuhfvvf вне форума Ответить с цитированием
Старый 26.12.2013, 12:16   #19
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

АП
А возможно ли подсвечивать не текущую ячейку,а строку и столбец на пересечении которых стоит курсор?
З.Ы.
еще один вариант подсветки ячейки(нашел в сети)
Код:
Dim cc As Range, ind As Variant
  
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
cc.Interior.ColorIndex = ind
Set cc = ActiveCell
ind = ActiveCell.Interior.ColorIndex
ActiveCell.Interior.ColorIndex = 36
End Sub
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!

Последний раз редактировалось SaLoKiN; 26.12.2013 в 12:18.
SaLoKiN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Значение ячейки на пересечении столбца и активной ячейки Lamo Microsoft Office Excel 2 27.07.2013 20:55
Дублирование ячеек, диапазона ячеек на новом листе ukrman Microsoft Office Excel 2 03.02.2012 01:06
Уникальная подсветка повторяющихся ячеек serjufa Microsoft Office Excel 4 04.05.2011 07:08
подсветка ячейки denver323 Microsoft Office Excel 1 20.08.2010 16:29
Как получить название диапазона активной ячейки? kipish_lp Microsoft Office Excel 14 15.05.2010 10:18