Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
VBA сортировка выделенного диапазона
 
Сделал так:  
 
Sub D()  
Selection.SpecialCells(xlCellTypeBlanks, 1).FormulaR1C1 = "= R[-1]C"
Selection.Copy  
   Selection.PasteSpecial xlPasteValues  
   Application.CutCopyMode = False  
       ActiveWorkbook.Worksheets("пслн").Sort.SortFields.Clear  
   ActiveWorkbook.Worksheets("пслн").Sort.SortFields.Add Key:=Range("D:D"), _  
       SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal  
   With ActiveWorkbook.Worksheets("пслн").Sort  
       .SetRange Selection  
       .Header = xlGuess  
       .MatchCase = False  
       .Orientation = xlTopToBottom  
       .SortMethod = xlPinYin  
       .Apply  
   End With  
End Sub  
 
 
Работает :)  
Вопрос закрыт.
VBA сортировка выделенного диапазона
 
Поиск не помог (видимо потому что я нуб в макросах)  
 
Есть код:  
 
Sub D()  
Selection.SpecialCells(xlCellTypeBlanks, 1).FormulaR1C1 = "= R[-1]C"
Selection.Copy  
   Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _  
       :=False, Transpose:=False  
   Application.CutCopyMode = False  
End Sub  
 
После выполнения диапазон остается выделенным. В код нужно добавить сортировку выделенного диапазон по столбцу D (4-й столбец по счету) по убыванию (там числа). Верхняя строка диапазона не заголовки и тоже подлежат сортировке.  
 
Записал макрос сортировки:  
 
Sub сортировка()  
   ActiveWorkbook.Worksheets("пслн").Sort.SortFields.Clear  
   ActiveWorkbook.Worksheets("пслн").Sort.SortFields.Add Key:=Range("D57:D70"), _  
       SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal  
   With ActiveWorkbook.Worksheets("пслн").Sort  
       .SetRange Range("A57:D70")  
       .Header = xlGuess  
       .MatchCase = False  
       .Orientation = xlTopToBottom  
       .SortMethod = xlPinYin  
       .Apply  
   End With  
End Sub  
 
Но как в нем поставить выделенный диапазон, а не фиксированный не понимаю.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
ЗАКРОЙТЕ ТЕМУ. ЗАДАЧА РЕШЕНА. ОЗАРИЛО.  
спасибо огромное тем кто помогал и тем кто ворчал. =)  
 
kim, 2л пива по праву твои. пиши на dan-mkzze@rambler.ru
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
{quote}{login=Юрий М}{date=12.12.2010 02:24}{thema=}{post}hamletiv, что-то Вы всё запутали: "в vba как ни странно и сам могу". Так в чём проблема? Напишите макрос, раз Вы это умеете делать, и вызывайте его по событию изменения листа.{/post}{/quote}  
 
вчера на нетрезвую голову "все могу" было)))))  
когда днем сел за задачу с мыслью "а фигня щас за 15 мин рыбу набросаю" была полная литровая бутылка рома. Через 6 часов (когда писал 1 пост) она была наполовину пуста. "все сам могу" было еще больше но ничерта не получалось. %)  
 
Приношу свои извинения за дезинформацию. Не могу)  
 
Надо было сегодня на трезвую голову адекватно сразу составить таблицу. Что я и сделал парой постов выше. =)
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
{quote}{login=Serge 007}{date=12.12.2010 02:14}{thema=Re: }{post}{quote}{login=hamletiv}{date=12.12.2010 02:11}{thema=}{post}  
Serge 007, сводная не подходит потому, что мне необходима печать по заданому шаблону. Напечатать на бумаге. Процесс: вставить исх табличку, пересчитать все, напечатать на принтере происходит по 10 раз на день.{/post}{/quote}Ну и ?..  
Проблема-то в чём? Нажать Ctrl+P тяжело?{/post}{/quote}  
 
Я подробно ответил на все почему и для чего. Не хотите помочь - не надо. Зачем в почемучки играть?  
Для тех кто умеет писать сложные макросы я выложил новый файл с 4 таблицами (для каждой свои условия). Для остальных таблиц сам допишу по образцу. Вывернуть первый макрос в теме для разных итоговых таблиц самостоятельно не могу.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
Вот постарался чуток переиначил.  
Данные экспорт из 1с...  
на 1 листе исходные, на втором пример того как это должно выглядеть.  
 
В исходной таблице могут добавиться\удалиться строки. После этих изменений нужно пересчитывать.  
 
Цель всего этого: Вставил строки исходной таблицы, нажал печать, отнес "куда надо") Хочется сделать процесс быстрым и не отвлекающим внимания.  
 
Юрий М, данные в исходной изменяются вручную путем Ctrl+v  
остально думаю будет понятно по файлу  
 
Serge 007, сводная не подходит потому, что мне необходима печать по заданому шаблону. Напечатать на бумаге. Процесс: вставить исх табличку, пересчитать все, напечатать на принтере происходит по 10 раз на день. Хочется облегчить себе жизнь.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
Народ, если вы мне напишете (или скажете как написать) макрос для того чтобы из любой вставленной таблицы (естессн таблица с нужными столбцами, без пустых ячеек. Отличается кол-во строк и содержание) корректно заполнялись мои 52 таблицы на листе б (для каждой таблицы листа б свой набор условий), ТО Я УВЕРУЮ ВО ВСЕМОГУЩЕСТВО excel и буду считать создателя сего шедевра богом-гуру-повелителем.  
 
Ей богу, мой скудный мозг не представляет себе как выполнить сию задачу макросом.  
 
+ на какое действие этот макрос повесить? в исходной таблице я могу изменить любое поле вплоть до удаления строки.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
{quote}{login=Serge 007}{date=12.12.2010 12:04}{thema=Re: }{post}{quote}{login=hamletiv}{date=12.12.2010 11:17}{thema=}{post} В идеале конечно сделать бы так, чтобы никаких доп столбцов нигде не было.{/post}{/quote}  
Можно формулой массива, но это непродуктивно. На больших массивах файл будет виснуть :(  
 
А от двух правильных решений Вы категорически отказались. Без объяснения причин.{/post}{/quote}  
 
объясню.  
1)Мне нужен пересчет в реальном времени без моего участия (ни при нажатии кнопки, ни при открывании файла ни при каком либо другом событии)  
2)касаемо варианта kima: да, хороший вариант. Но я не могу позволить себе добавить 52 доп столбца. максимум 5-7  
3)В том числе мне, как и некоторым возможно, интересно а можно ли так сделать? Если есть другие способы, почему бы их не рассмотреть ;)  
Serge 007, Предложите пожалуйста формулой массива. Не должно повиснуть.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
Вообщем получается так:  
 
1) Вариант kim имеет право на жизнь. Но только в том случае если вариант условий отбора один.  
 
2) А как быть если используя данные гигантской таблицы нужно сделать 52 таблицы => 52 варианта условий отбора строк? Если использовать вариант kimа, то как я понимаю придется создать 52 доп столбца...    
Кто сможет придумать (а может быть и сам kim)? В идеале конечно сделать бы так, чтобы никаких доп столбцов нигде не было.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
kim,  
я щас соображаю туго. Вечером вернусь домой посмотрю.  
Если есть время, буду рад увидеть то, как это самому наклепать (поэтапно).  
 
На первый взгляд подходит.  
 
В перспективе на листе будет 52 такие таблички и для каждой свой набор условий для отбора строк.  
 
R Dmitry,  
Начало хорошее "Sub beer()" =))))  
Но к сожалению мне вариант с вба не подходит.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
{quote}{login=R Dmitry}{date=12.12.2010 12:43}{thema=}{post}а макросы можно???  
.....хотя я все равно не из Москвы :({/post}{/quote}  
 
в vba как ни странно и сам могу... вся проблема в том, можно ли функциями обойтись.... нутром чувствую что можно, но как...  
 
З.Ы. предыдущий пост с примером мой. ник не указал.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
{quote}{login=Юрий М}{date=12.12.2010 12:35}{thema=Re: возврат,подсчет и сумма уникальных строк диапозона по условиям}{post}{quote}{login=hamletiv}{date=12.12.2010 12:31}{thema=возврат,подсчет и сумма уникальных строк диапозона по условиям}{post}пример словами: ....{/post}{/quote}  
Так не пойдёт: нужен реальный пример. Или Вас устроит решение тоже "словами?  
P.S. Будете делать пример - загляните в Правила.{/post}{/quote}  
 
извините. уже чуток не трезв и мозг от раздумий сломан. сейчас накатаю в экселе пример который равен словесному описанию.
возврат,подсчет и сумма уникальных строк диапозона по условиям
 
Угробил на поиск по сайту и в инете 6 часов. Не нашел.  
 
задача:  
таблица 12 столбцов n строк на листе а  
таблица на листе б которая должна содержать уникальные строки в диапазоне 7,8,9 столбца, подходящие под условия 2, 3, 5 столбца.  
 
пример словами: Если из 2 столбца взять все строки, содержащие слово "живое", затем из этих строк отобрать используя 3 столбец строки со словом "кошачьи", из них отобрать по 5му столбцу содержащие "котэ", а далее вывести уникальные строки диапазона(столбец7:столбец9)на отдельный лист, потом посчитать количество этих уникальных строк в массиве отобранном по условиям, указанном выше, а потом посчитать сумму уникальных строк.  
На новом листе должна  получиться таблица вида:  
столбец7  столбец8  столбец9  кол-во  сумма  
рыжий     толстый   игривый        9  5069  
рыжий     худой     игривый        5  10495  
рыжий     худой     ленивый        1  25  
полосатый толстый   ленивый       50  8385375  
 
 
 
Все данные выдуманы. Я не псих)))  
Сводные не предлагать (знаю что проще). Но в моем случае нужно обойтись функцией.  
 
Обещаю 2л пива тому кто справится с задачей первым и сумеет объяснить ее мне. Естественно 2 л пива при личной встрече только в Москве ;)
Страницы: 1
Наверх