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

Подсчет значений с конкретным цветом шрифта. Подсветка ячейки с ошибкой

13.01.2014, 01:56. Показов 3040. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые знатоки !
Прошу помощи в решении следующей задачи. Увы, но в макросах не разбираюсь.

В листе "Проверяемый массив" имеются данные (всего их будет около 10 тыс.), для примера прописал три массива.

1. Необходимо написать макрос, которым, во-первых, в таблицу листа "Результат" будет попадать подсчет всех задействованных цветов шрифта для конкретного значения (может быть как цифровое так и словесное), который (цвет) используется в листе "Проверяемый массив".
Результат для конкретного цвета шрифта должен оказаться в соответствующей ячейке (окрашена цветом).

2. Второй момент, который должен решать макрос - окрасить ячейку в листе "Проверяемый массив", которая содержит цифру в диапазоне от 6 до 7 символов.

3. В листе "Проверяемый массив" для запуска макроса, пожалуйста, добавьте кнопку запуска.

Сам результат того, каким он должен получится размещен в файле под именем "решение".

Всем заранее спасибо за поддержку.
Вложения
Тип файла: rar Задача.rar (12.0 Кб, 5 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.01.2014, 01:56
Ответы с готовыми решениями:

Подсветка ячейки другим цветом
Доброго времени суток У меня такой вопрос: как сделать так, что бы в ячейке А1 (есть цифра, скажем 6, не зависит ни от какой бы нибыло...

Подсчёт значений ячеек в зависимости от другой ячейки
Добрый день! Есть таблица: . Каждому значению первого столбика соответствуют 2 записи во втором: "Приём" и...

Подсветка поля с ошибкой
Например есть такая функция: function Formdata(data){ if (data.art1 != null && data.art1.value.length < 1 ) { alert('Заполните...

11
 Аватар для KoGG
5640 / 1622 / 418
Регистрация: 23.12.2010
Сообщений: 2,430
Записей в блоге: 1
13.01.2014, 11:59
.....
1
1 / 1 / 0
Регистрация: 08.01.2014
Сообщений: 20
13.01.2014, 13:12  [ТС]
Здравствуйте, уважаемый KoGG !
Огромное спасибо, что откликнулись. Но имеется несколько уточнений.

1. После того как я внес дополнительные массивы в этот пример, в которых умышленно уменьшил цифру с 8 знаков до 6, ячейка подсветилась желтым. Макрос сработал правильно.
Можно ли сделать так, чтобы после того как я снова допишу недостающие 2 цифры и нажав кнопку "обработать", ячейка (исправленные ячейки) снова станет белой (т.е. будет считаться, что ошибки не было).

Упустил ещё один важный момент в макросе.

Цифры, которые больше 9 знаков или 8-и значные цифры, содержащие любой лишний (лишние) символ (-ы) в середине или в конце (например 12345678:, 38793&052) также подсвечивались бы желтым цветом.


2. Я поправил цвет "не чисто зеленый" на зеленый. Вы можете изменить необходимое значение макроса на нужное, чтобы происходил подсчет зеленого ?

Ещё раз огромное спасибо, что ответили на форуме.
0
 Аватар для KoGG
5640 / 1622 / 418
Регистрация: 23.12.2010
Сообщений: 2,430
Записей в блоге: 1
13.01.2014, 13:45
Поправил.
1
1 / 1 / 0
Регистрация: 08.01.2014
Сообщений: 20
13.01.2014, 14:53  [ТС]
Внес более объемную информацию... К сожалению, калькулятор цветов стал работать не правильно. Возможно, как раз большой объем информации повлиял на работоспособность макроса.
Насколько я понимаю, калькулятор подсчитывает слово, цифру, которые закрашены и при этом игнорируются символы (-;=+ и т.д, что в принципе так и должно быть). Т.е. калькулятор охватывает все значения, вне зависимости от того, сколько таких значений в определенном цвете фигурирует в ячейке ?
В этом случае, должно было получится 100 зеленых значений (количество дат - 100 в зеленом цвете); красный цвет - 4 (4-е слова); 9 слов - синего цвета.
Вложения
Тип файла: rar Ошибка.rar (22.4 Кб, 3 просмотров)
0
 Аватар для KoGG
5640 / 1622 / 418
Регистрация: 23.12.2010
Сообщений: 2,430
Записей в блоге: 1
13.01.2014, 16:40
100 зеленых значений должно было бы получится, если бы везде был текст. Но так как данные представляют из себя информационный мусор, то отдельные даты на строке представляют из себя не текст, а даты.
Я добавил обработку цвета ячеек с числами и датами.
В строке
2. ГРОМАДСЬКА ОРГАНІЗАЦІЯ "МІСЦЕВЕ ОБ'ЄДНАННЯ
- 4 красных значения, в противном случае:
2. ГРОМАДСЬКА
- будет считаться как 2.
1
1 / 1 / 0
Регистрация: 08.01.2014
Сообщений: 20
13.01.2014, 17:09  [ТС]
В том-то и дело, что массив данных - комбинированный (текст, дата). По поводу мусора, улыбнулся ))). В целом, данным вариантом макроса можно пользоваться .
0
 Аватар для KoGG
5640 / 1622 / 418
Регистрация: 23.12.2010
Сообщений: 2,430
Записей в блоге: 1
13.01.2014, 17:56
2. ГРОМАДСЬКА- будет считаться как 2 слова.
а 14.10.2013 - как одно
Все цвета посчитал правильно.
1
1 / 1 / 0
Регистрация: 08.01.2014
Сообщений: 20
15.01.2014, 15:58  [ТС]
Добрый день, KoGG !
Начал работать с файлом и к сожалению выбивает ошибку. Скриншоты во вложении.
Сначала начинает думать (всё-таки может доходить до 3 тыс. массивов), но потом в окне появляется надпись "не отвечает". Закрываю Excel и выскакивает ошибка (см. скриншот). Последняя версия, которую Вы предложили, меня устраивала, особенно то, что кроме 8-и значного кода, подсвечивались даты с ошибками (например, 01 10.2013, т.е. не хватало точки между датой и месяцем и т.д.).
Вложения
Тип файла: rar Ошибка.rar (420.3 Кб, 3 просмотров)
0
 Аватар для KoGG
5640 / 1622 / 418
Регистрация: 23.12.2010
Сообщений: 2,430
Записей в блоге: 1
16.01.2014, 11:55
Могу посоветовать уменьшить количество обрабатываемых за раз строк.
Трудно придумать более неэффективный режим работы Excel и макросов, чем посимвольный анализ цвета символов в ячейках, тем не менее Вы им пользуетесь. Перенос данных в Word тоже не ускоряет процесс.
Либо приводите данные в порядок и работайте с ними как с нормальной базой данных.
0
1 / 1 / 0
Регистрация: 08.01.2014
Сообщений: 20
16.01.2014, 15:57  [ТС]
Я не думал, что обработка 300 - 1000 массивов является затруднительным для макроса. К сожалению, таких массивов 10-13 тыс., т.е. частично проверять очень утомительно и медленно.
Почему выбран такой подход. У меня есть инструмент, который подсвечивает (цветом шрифта) конкретные значения. Как только я подсветил интересующие меня значения, с помощью Вашего макроса хотел провести подсчет (чтобы ничего не выпало). Информация вручную не набирается, а распознается с определенного издания, вот и получается погрешность, которую я хотел бы эффективно исправить.
0
 Аватар для KoGG
5640 / 1622 / 418
Регистрация: 23.12.2010
Сообщений: 2,430
Записей в блоге: 1
16.01.2014, 16:42
Обработка данных до 1000000 не так затруднительна, когда анализируется цвета ячейки целиком.
Работа идет намного быстрее, когда анализируются значения, а не цвета.
Низкую производительность вызывает ковыряние цвета каждого отдельного символа в ячейке.
Инструмент, который подсвечивает цветом значения в ячейках, мог бы и посчитать количество таких операций. И было бы намного эффективнее, если бы этот инструмент вместо подсветки ставил 0 или 1 во 2, 3, и 4 столбцах правее данных.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.01.2014, 16:42
Помогаю со студенческими работами здесь

Подсветка R и layout красным цветом
Пробую написать Hello World на Android использую IntelliJ IDEA 14.1.5, создал layout пробую подключить, а оно R подсвечивает красным, пишу...

Подсветка цветом ключевых слов в RichTextBox
Видел как-то недавно подсветку ключевых слов в RichTextBox, но жаль, потерял эту тему и проект. К примеру, нужно выделить слова: SLOVO1 -...

Распределение значений по конкретным столбцам
Добрый день. Что бы загрузка товаров на сайт прошла успешно - мне нужно иметь четкие столбцы по конкретным свойствам: "цвету...

Мед книжки срок анализов подсветка цветом
Всем привет! Я руководитель компании у которой мед книжки с разным сроком годности анализов, помню у меня был файлик Екселевский в котором...

Подсветка текущей строки StringGrid серым цветом
есть ли способ сделать что бы строка stringgrid1 в которой установлен курсор выделялась серым цветом? как бы подсветка выбранной строки....


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru