Снова имею вопрос, на который самостоятельно ответить весьма затруднительно. Прошу вашей помощи.
Есть выгрузка из базы размещения рекламы. Необходимо автоматизировать процедуру определения прайма/оффпрайма выхода роликов через столбец-индикатор. Во вложении пример. Все описано подробно. Левая таблица - это форма выгрузки, правая - то что необходимо получить. Определения прайма и оффпрайма даны. Помогите, пожалуйста, найти решение - не важно формулой или макросом. Идея формулы в описании есть, но "сырая"...
добрый день, уважаемые форумчане!
Снова имею вопрос, на который самостоятельно ответить весьма затруднительно. Прошу вашей помощи.
Есть выгрузка из базы размещения рекламы. Необходимо автоматизировать процедуру определения прайма/оффпрайма выхода роликов через столбец-индикатор. Во вложении пример. Все описано подробно. Левая таблица - это форма выгрузки, правая - то что необходимо получить. Определения прайма и оффпрайма даны. Помогите, пожалуйста, найти решение - не важно формулой или макросом. Идея формулы в описании есть, но "сырая"...Che79
В файле должны быть даты, для которых надо получить результат и список праздников и рабочих выходных. Использовать время в виде текста - не самая лучшая идея
В файле должны быть даты, для которых надо получить результат и список праздников и рабочих выходных. Использовать время в виде текста - не самая лучшая идеяSerge_007
А она никак не решаема, ни формулой, ни макросом, ни даже вручную. В ТЗ просто не хватает данных, которые надо учитывать при решении. Формулу написать конечно можно, но она заведомо будет возвращать неверный результат
А она никак не решаема, ни формулой, ни макросом, ни даже вручную. В ТЗ просто не хватает данных, которые надо учитывать при решении. Формулу написать конечно можно, но она заведомо будет возвращать неверный результатSerge_007
Простите, я, видимо, не понимаю чего-то... В данном примере есть даты 10-15 июня. Год текущий, 2013, сорри, это не указано. 12 и 15 июня - дни выходные, остальное будни.. Специально перепроверил - изначально приложил именно тот файл, который нужен
Простите, я, видимо, не понимаю чего-то... В данном примере есть даты 10-15 июня. Год текущий, 2013, сорри, это не указано. 12 и 15 июня - дни выходные, остальное будни.. Специально перепроверил - изначально приложил именно тот файл, который нуженChe79
В данном примере есть даты 10-15 июня. Год текущий, 2013 сорри, это не указано.
Дело в том что в ДАТЕ, которая для Excel является числом, невозможно НЕ указать год. Дата - это, например, 10.06.2013. Такие у Вас в файле есть, но они совсем не за текущий год и даже век, например 02.01.1900
Цитата (Che79)
В данном примере есть даты 10-15 июня. Год текущий, 2013 сорри, это не указано.
Дело в том что в ДАТЕ, которая для Excel является числом, невозможно НЕ указать год. Дата - это, например, 10.06.2013. Такие у Вас в файле есть, но они совсем не за текущий год и даже век, например 02.01.1900 Serge_007
Всем добрый день! Следуя правилам ХТ (хорошего тона ), нашел возможность сказать, что задачу свою решил очень простым способом. Кому интересно, вот такой макрос для примера во вложении [vba]
Код
Sub Prime() Dim r&, sh As Worksheet For Each sh In ThisWorkbook.Worksheets For j = 4 To 34 Step 1 If sh.Cells(8, j).Interior.ColorIndex = 15 Then sh.Cells(7, j).FormulaR1C1 = "1" End If Next j r = sh.Cells(Rows.Count, 2).End(xlUp).Row sh.Cells(10, 3).FormulaR1C1 = _ "=IF(AND(LEFT(RC[-1],2)<""18"",SUMPRODUCT(RC[1]:RC[31]*(R7C4:R7C34<>1))),""о"",""п"")" sh.Cells(10, 3).AutoFill Destination:=sh.Range("C10:C" & r), Type:=xlFillDefault sh. Rows ("7:7").Hidden=True Dim wsSh As Worksheet For Each wsSh In Sheets wsSh.UsedRange.Value = wsSh.UsedRange.Value Next wsSh With sh.Range("C" & r & ":C" & r ).Borders(xlEdgeBottom) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With Next End Sub
[/vba]
Поскольку с макросами я пока очень сильно на "вы", то прекрасно понимаю, что в нем, вероятно много лишнего и все можно сделать гораздо проще.. Условия про 100% обрабатываю вручную, поскольку каналов с таким условием на практике оказалось 1 из 50-ти. Отдельное спасибо уважаемому Serge_007 за то, что помог мне включить мозг!) Всем удачи!
Всем добрый день! Следуя правилам ХТ (хорошего тона ), нашел возможность сказать, что задачу свою решил очень простым способом. Кому интересно, вот такой макрос для примера во вложении [vba]
Код
Sub Prime() Dim r&, sh As Worksheet For Each sh In ThisWorkbook.Worksheets For j = 4 To 34 Step 1 If sh.Cells(8, j).Interior.ColorIndex = 15 Then sh.Cells(7, j).FormulaR1C1 = "1" End If Next j r = sh.Cells(Rows.Count, 2).End(xlUp).Row sh.Cells(10, 3).FormulaR1C1 = _ "=IF(AND(LEFT(RC[-1],2)<""18"",SUMPRODUCT(RC[1]:RC[31]*(R7C4:R7C34<>1))),""о"",""п"")" sh.Cells(10, 3).AutoFill Destination:=sh.Range("C10:C" & r), Type:=xlFillDefault sh. Rows ("7:7").Hidden=True Dim wsSh As Worksheet For Each wsSh In Sheets wsSh.UsedRange.Value = wsSh.UsedRange.Value Next wsSh With sh.Range("C" & r & ":C" & r ).Borders(xlEdgeBottom) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With Next End Sub
[/vba]
Поскольку с макросами я пока очень сильно на "вы", то прекрасно понимаю, что в нем, вероятно много лишнего и все можно сделать гораздо проще.. Условия про 100% обрабатываю вручную, поскольку каналов с таким условием на практике оказалось 1 из 50-ти. Отдельное спасибо уважаемому Serge_007 за то, что помог мне включить мозг!) Всем удачи!Che79