Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: макрос для определения закрашивания ячеек и копирования их значений  (Прочитано 11741 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Katerina
Гость
« : 06-10-2008 07:14 » 

Помогите пожалуйста со следующей задачей!!! Имеется таблица:

                / даты
______________________________________________________________________
наименование    / 23 сент / 24 сент / 25 сент / ... / 15 окт / ...
______________________________________________________________________
наименование 1  /   2     /         /    5
наименование 2  /         /  3      /
наименование 3  /         /         /
наименование 4  /         /         /    2
...             /         /         /
наименование 10 /   1     /         /

необходимо сделать проверку для каждой закрашеной ячейки с цифрой вывести следующую таблицу:

наименование    количество    дата
наименование 1      2        23 сент
наименование 1      5        25 сент
наименование 2      3        24 сент
наименование 4      2        25 сент
наименование 10     1        23 сент
Записан
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #1 : 07-10-2008 04:15 » 

и что у Вас не получается?
Записан

I Have Nine Lives You Have One Only
THINK!
Katerina
Гость
« Ответ #2 : 07-10-2008 05:46 » 

много чего не получается!!  Здесь была моя ладья... например, как в определенном диапазоне задать условие для определения закрашеной не пустой ячейки!!
то есть закрашивание :
x1 = Range("B58:IV70").Select
For i = 1 To 256
If x1.Cell("i, 58").Interior.Pattern = xlSolid Then
тут ошибка , но не понимаю  Не понял , совсем все забыла, давно это было когда я в макросах разбиралась. и  то писала не сложные программки по учебе. не заморачивалась по поводу макросов не думала что пригодиться в работе.
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 07-10-2008 06:18 » 

Цитата
тут ошибка , но не понимаю

Offtopic:

Надпись в  маршрутном такси

Остановок Тута, Тама, Здеся - не делаю!
Поставлю в угол.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #4 : 07-10-2008 07:20 » 

примерно так

Код:
Public Sub test()
    Dim r As Range
    For Each r In ThisWorkbook.Worksheets(1).Range("A1:C7")
        'проверяем на пустоту
        If Not IsEmpty(r) Then
            'проверяем на закрашенность
            If r.Interior.ColorIndex > 0 Then
                Debug.Print r.Address & " не пустая и закрашена!!!"
            End If
        End If
    Next r
End Sub

можно сделать проверку на закрашенность и не пустоту сразу
Код:
Public Sub test1()
    Dim r As Range
    For Each r In ThisWorkbook.Worksheets(1).Range("A1:C7")
        'проверяем на пустоту и закрашенность
        If Not IsEmpty(r) And r.Interior.ColorIndex > 0 Then
            Debug.Print r.Address & " не пустая и закрашена!!!"
        End If
    Next r
End Sub

дополнение: в строке r.Interior.ColorIndex > 0 можно вместо 0 подставить нужный цвет

ВОПРОС: зачем проверять закрашенность ячейки или по условию нужно брать ячейки где есть чичло и она закрашена?
Записан

I Have Nine Lives You Have One Only
THINK!
Katerina
Гость
« Ответ #5 : 07-10-2008 18:12 » 

Спасибо за помощь!!! Улыбаюсь Попробую!!!
а надо это для файла, в котором заноситься наименования продукции и количество выпуска по датам, то количество продукции которое закрашено не упакованно - вот его то и нужно выводить в отдельную таблицу. возможно задача не совсем ясна, но для работников организации эта информация необходима, конечно можно получить эту информацию просто просмотрев начальную таблицу, но начальство хочет видеть сводную таблицу. А так как наименований продукции достаточно, то вручную каждый раз это сложно будет делать.
Записан
Katerina
Гость
« Ответ #6 : 09-10-2008 18:21 » 

Спасибо HandKot  Улыбаюсь !!! Получилось!!! Осталось немного подкорректировать и сделать формирование нужной мне выходной таблицы. Вот.  Улыбаюсь  Улыбаюсь  Улыбаюсь
Огромное-огромное спасибо!!!
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines