Автоматически Сортируя Диапазон После Ввода данных в Excel 2007
Microsoft Excel, Подсказки & Уловки Добавляют комментарии
Если Вы используете Excel, чтобы хранить данные, возможности - Вы вид те данные в некотором роде. Сортировка помогает Вам найти пункты и оценить числовые значения для анализа. Однако, сортировка - проблема, если Вы, reg¦-ularly добавляют пункты к данным, потому что это означает Вас, должны обратиться диапазон после того, как Вы входите в каждый пункт. Сортировка также проблематична в диапазонах, где колонка вида использует вычисление. However, sorting is a challenge if you regÂularly add items to the data because it means you have to resort the range after you enter each item. Sorting is also problematic in ranges where the sort column uses a calculation.
Например, иллюстрация 1 показывает стол продуктов. Стол сортирован на колонке Валовой прибыли (F), ценности которого определены, используя формулу, которая требует входа от ячеек в колонках D и E. Это означает, что каждый раз ценность в колонке D или изменениях E, соответствующих изменениях ценности Валовой прибыли, таким образом Вы должны обратиться стол. This means that each time a value in column D or E changes, the corresponding Gross Margin value changes, so you need to resort the table.

Иллюстрация 1 стол продуктов сортирована на колонке Валовой прибыли (F).
Чтобы экономить время, хорошо, если Вы можете держать диапазон сортированным автоматически после входа в новые данные или после изменяющихся данных, которые затрагивают колонку вида. Распечатка 1 показывает несколько VBA pro¦-cedures, которые держат указанный диапазон сортированным автоматически.Listing 1 shows a couple of VBA proÂcedures that keep a specified range sorted automatically.
Процедуры VBA распечатки 1, Которые Держат Стол Продуктов Сортированным Автоматически
Sub Auto_Open ()
ThisWorkbook. Рабочие листы (“Products†).OnEntry = “SortProductsâ€
Конец Sub
Sub SortProducts ()
Затемните currCell Как Диапазон
Набор currCell = Заявление. Гость
Если currCell. Колонка = 4 Или currCell. Колонка = 5 ТогдаColumn = 5 Then
Выбор. Вид Key1: = Диапазон (“F1†), _=Range(“F1â€), _
Order1: = xlDescending, _
Заголовок: = xlYes, _
OrderCustom: = 1, _
MatchCase: = Ложный, _
Ориентация: = xlTopToBottom
Конец, Если
Конец Sub
Auto_Open - макрос, который бежит автоматически, когда учебное пособие, содержащее кодекс, открыто. В этом случае, утверждение заставляет случай OnEntry рабочего листа Продуктов управлять макросом SortProducts. Случай OnEntry стреляет всякий раз, когда ввод данных происходит в объекте speci¦-fied (в этом случае, рабочий лист Продуктов). The OnEntry event fires whenever data entry occurs in the speciÂfied object (in this case, the Products worksheet).
Процедура SortProducts проверяет ценность Прикладной собственности Гостя объекта, которая возвращает объект Диапазона, который указывает, какая ячейка призвала макрос SortProducts. В этом контексте Гость говорит нам, в которой ячейке произошел ввод данных, и тот адрес ячейки сохранен в currCell переменной. Затем, макро-проверки currCell, чтобы видеть, встретился ли ввод данных или в колонке D или в колонке E. Если так, новая ценность изменяет расчетную ценность в колонке Валовой прибыли, таким образом к диапазону нужно обратиться. Это достигнуто, управляя методом Вида, который сортирует диапазон, основанный на ценностях в колонке F. Next, the macro checks currCell to see if the data entry occurred in either column D or column E. If so, the new value changes the calculated value in the Gross Margin column, so the range needs to be resorted. This is accomplished by running the Sort method, which sorts the range based on the values in column F.
Признаки Technorati: сортировка диапазона, после ввода данных, превосходит 2007
Популярность: 2 % [?]







Недавние Комментарии