1

У меня есть список членства, как это в Excel

| A | 02-02-1994 | B | C
| D | 04-10-1998 | E | F

Я хочу изменить его, чтобы он мог быть упорядочен по возрасту (2-й столбец) или по имени (1-й столбец)

Как вы можете видеть, возраст определяется датой, а также определенной переменной (скрытой в другом столбце). Мне нужно посчитать возраст
Это не проблема

Проблема в том, как я могу позволить пользователю решить, хочет ли он / она сортировать по имени или по возрасту (например, сводная таблица)
Я использую Excel 2003

Прямо сейчас я создаю HTML-страницу, чтобы вы могли видеть, что я имею в виду, если вы не можете видеть это из вопроса

ОБНОВИТЬ
Пример можно увидеть на этой странице http://www.the87boy.dk/membershiplist.php

1 ответ1

0

Вставьте столбец (который не отсортирован позже, поэтому кнопки остаются на месте) и вставьте в него пару элементов управления формы кнопок с назначенными макросами. Предполагая, что A и D находятся в столбце B Sheet1 и без пробелов, например:

Sub Macro1()
Columns("B:E").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("B:B"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
    .SetRange Range("B:E")
    .Header = xlGuess
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With
End Sub

или запишите это сами.

Я назвал кнопку с этим кодом Name Order, а другой (с C:C вместо B:B) Age Order.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .