Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
1 / 1 / 1
Регистрация: 23.09.2011
Сообщений: 13

Динамическая смена цвета по формуле

23.09.2011, 14:25. Показов 2238. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
требуется чтобы в ячейке по формуле, например, =ЛистХ!A1, копировалось не только содержимое но и оформление ячейки. И при изменении цвета в А1 в данной ячейке цвет менялся автоматически.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.09.2011, 14:25
Ответы с готовыми решениями:

Динамическая смена тем.
Помогите, пожалуйста, написать код для смены тем на странице. Я добавила две image-миниатюры на страницу. В зависимости от того, на какую...

Динамическая смена контента
Доброго времени суток! Возникла небольшая проблема. Есть страница на wordpress на которую выводятся все загруженные на страницу картинки в...

Динамическая смена интерфейса
Короче пишу тут програмку файловый менеджер. С динамическим созданием и размещением интерфейса на экране проблем нет. Только вот получается...

7
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
24.09.2011, 16:02
Soulhunter,
можно сделать так:
  1. отлавливать событие Изменение на листе;
  2. проверять, произошло изменение в ячейке A1 или нет;
  3. менять цвет в нужной ячейке в соответствии с цветом в ячейке A1.
0
1 / 1 / 1
Регистрация: 23.09.2011
Сообщений: 13
25.09.2011, 23:56  [ТС]
Собственно говоря можно макрос проверки листа запускать и в ручную. Важно - как забрать цвет у ячейки с другого листа?

Есть Precedents.Interior.Color , но он работает только в пределах активного листа и с адресами без указания листа.

Получатся нужно парсить ячейку с адресом на адрес листа и ячейки?
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
26.09.2011, 00:20
Цитата Сообщение от Soulhunter Посмотреть сообщение
требуется чтобы в ячейке по формуле, например, =ЛистХ!A1, копировалось не только содержимое но и оформление ячейки.
Проще отслеживать событие Worksheet_Change Листа Х, и копировать ячейку целиком в нужное место на другой лист.
Цитата Сообщение от Soulhunter Посмотреть сообщение
И при изменении цвета в А1 в данной ячейке цвет менялся автоматически.
С этим труднее: изменение цвета вручную не вызывает события Worksheet_Change или Worksheet_Calculate. Другое дело, если изменение цвета связано с изменением значений ячеек.

Добавлено через 4 минуты
Для поиска влияющих ячеек на др. листах используйте метод NavigateArrow, погуглите по этому слову.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
26.09.2011, 07:43
Цитата Сообщение от Soulhunter Посмотреть сообщение
Важно - как забрать цвет у ячейки с другого листа?
Visual Basic
1
2
3
4
5
6
Sub Процедура1()
With ActiveWorkbook
    .Worksheets(1).Cells(1, 1).Interior.Color = _
        .Worksheets(2).Cells(1, 1).Interior.Color
End With
End Sub
0
1 / 1 / 1
Регистрация: 23.09.2011
Сообщений: 13
26.09.2011, 08:27  [ТС]
Busine2009 большое спасибо! То что нужно!

Добавлено через 17 минут
Busine2009, только нужно, чтобы цвет брался из ячейки, с адресом, написанным в данной. Не именно а1-а1, а на =пример лист1!а13-Лист5!g5 и т.п.
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
26.09.2011, 12:45
Цитата Сообщение от Soulhunter Посмотреть сообщение
Не именно а1-а1, а на =пример лист1!а13-Лист5!g5 и т.п.
А если ячейки лист1!а13 и Лист5!g5 будут иметь разный цвет?
0
1 / 1 / 1
Регистрация: 23.09.2011
Сообщений: 13
26.09.2011, 12:50  [ТС]
имелось ввиду что первая берёт цвет другой.

Вопрос решился вырезанием из формулы адреса листа и ячейки. И выполнение макроса для выделенной области.

For Each s In Selection
If InStr(1, s.Formula, "=", 1) <> 0 Then
strFormula = Replace(s.Formula, "=", "")
vosklpos = InStr(1, strFormula, "!", 1)
Cellnum = Right(strFormula, Len(strFormula) - vosklpos)
If vosklpos = 0 Then
s.Interior.Color = Range(Cellnum).Interior.Color
Else
Sheetnum = Left(strFormula, vosklpos - 1)
s.Interior.Color = Worksheets(Sheetnum).Range(Cellnum).Inte rior.Color
End If
End If
Next s
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.09.2011, 12:50
Помогаю со студенческими работами здесь

Динамическая смена background
Есть блоки &lt;div class=&quot;slider_area&quot;&gt; &lt;div class=&quot;slide&quot;&gt;&lt;/div&gt; &lt;div class=&quot;slide&quot;&gt;&lt;/div&gt; &lt;div class=&quot;slide&quot;&gt;&lt;/div&gt; &lt;div...

Динамическая смена фона у блока
Здравствуйте, не происходит смена картинок в анимации. &lt;p class=&quot;p3&quot;&gt;&lt;/p&gt; .p3 { width:60%; height:400px; margin:auto; ...

Динамическая смена значений в combobox
Всем доброго дня!!! Подскажите пожалуйста, как можно сделать, что при выборе какого-то значения в combobx, в другом combobx отображались...

Динамическая смена макета RecyclerView
Добрый день! Есть Activity с ViewPager из 2 страниц (фрагмент один). В фрагмент, в зависимости от номера страницы, вставляется список...

Динамическая смена мастер-страниц
Добрый вечер! хочу на defualt.aspx разместить кнопку, которая будет менять стиль сайта. создал два masterpage.master с одним стилем и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru