Использование макросов для сортировки данных в нескольких столбцах, как один столбец в Excel

Переводы статьи Переводы статьи
Код статьи: 247311 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

Microsoft Excel не имеет встроенного метода для сортировки (snaking) колонки данных. В данной статье приводится образец макроса для сортировать данные в формате столбцов газет.

Дополнительная информация

Корпорация Майкрософт предлагает примеры программного кода только для иллюстрации Это включает, но не ограничивается, подразумеваемые гарантии товарности или пригодности для определенной цели. В данной статье предполагается, что вы знакомы с языком программирования предложенном и с помощью средств, которые используются для создания и отладки. Сотрудники службы поддержки Майкрософт могут пояснить конкретной процедуры, но они будут изменять примеры для реализации дополнительных возможностей или удовлетворения конкретных требований.

Встроенной сортировки

В Microsoft Excel, который обычно используется возможность сортировки для сортировки список. Список в Microsoft Excel представляет собой серию строки электронной таблицы, содержащие связанные данные Например, базе данных накладной или набор клиентских имен и телефонных номеров. Вы можете Использование списка в качестве базы данных, в котором каждая строка является записью и столбцы поля. Первая строка списка обычно имеет заголовки столбцов Пример:
   A1: Q1   B1: Q2   C1: Q3
   A2: 10   B2: 2    C2: 4
   A3: 14   B3: 18   C3: 9
   A4: 7    B4: 17   C4: 12
   A5: 1    B5: 13   C5: 5
   A6: 11   B6: 8    C6: 16
   A7: 3    B7: 6    C7: 15
				
Если сортировка в возрастающем порядке по полю Q1 этого списка (столбец A), результат будет выглядеть следующим образом:
   A1: Q1   B1: Q2   C1: Q3
   A2: 1    B2: 13   C2: 5
   A3: 3    B3: 6    C3: 15
   A4: 7    B4: 17   C4: 12
   A5: 10   B5: 2    C5: 4
   A6: 11   B6: 8    C6: 16
   A7: 14   B7: 18   C7: 9
				

Сортировка колонки

Газетные колонки и змеевидных столбцов используются различные термины для формат данных того же типа. В газетные колонки данных заполняет один столбец и продолжается в начало следующей колонки. В этом случае возможно данных Нет меток для каждого столбца, например:
   A1: 10   B1: 2    C1: 4
   A2: 14   B2: 18   C2: 9
   A3: 7    B3: 17   C3: 12
   A4: 1    B4: 13   C4: 5
   A5: 11   B5: 8    C5: 16
   A6: 3    B6: 6    C6: 15
				
Можно использовать образец макроса в данной статье для сортировки газет столбцы в возрастающем порядке. Если используется пример макроса на указанные выше данные получены следующие результаты:
   A1: 1    B1: 7    C1: 13
   A2: 2    B2: 8    C2: 14
   A3: 3    B3: 9    C3: 15
   A4: 4    B4: 10   C4: 16
   A5: 5    B5: 11   C5: 17
   A6: 6    B6: 12   C6: 18
				
Чтобы увидеть сортировки макрос работать так, как описано, выполните следующие действия.
  1. Откройте новую книгу.
  2. Введите указанные ниже данные на листе:
       A1: 10   B1: 2    C1: 4
       A2: 14   B2: 18   C2: 9
       A3: 7    B3: 17   C3: 12
       A4: 1    B4: 13   C4: 5
       A5: 11   B5: 8    C5: 16
       A6: 3    B6: 6    C6: 15
    					
  3. На Сервис Выберите пункт Макрос, а затем нажмите кнопку Редактор Visual Basic.
  4. На Вставка меню, нажмите кнопку Модуль.
  5. Введите в модуль следующий код:

    Примечание В этом примере демонстрируется сортировка по возрастанию заказ. Это можно изменить, изменив значение «Order1: = "аргументxlDescending.
       Sub SortAllRangeData()
       ' Place column header for temporary sort area.
       Range("IV1").Value = "Numbers"
       
       ' Move numbers to temporary sort location.
       For Each cell In Selection
          Range("iv65536").End(xlUp).Offset(1, 0) = cell.Value
       Next cell
       
       ' Sort numbers in ascending order.
       Range("IV1", Range("IV1").End(xlDown)).Sort Key1:=Range("IV2"),  _
       Order1:=xlAscending, Header:=xlGuess, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
            
       ' Move sorted data back to original sheet location.
    
       Selection(1, 1).Activate ' Make sure the ActiveCell is the
                                ' top left of Selection first.
       CCnt = Selection.Columns.Count
       RCnt = Selection.Rows.Count
       CellCnt = Selection.Cells.Count
       Tcell = 2
       For c = 1 To CCnt
         For r = 1 To RCnt
            Range(ActiveCell.Address).Offset(r - 1, c - 1).Value =  _
            Range("iv" & Tcell).Value
            Tcell = Tcell + 1
         Next r
       Next c
       
       ' Clean up temporary sort location.
       Range("IV1", Range("IV1").End(xlDown)).Clear
    End Sub
    					
  6. На Microsoft Excel в меню в Microsoft Excel X для Mac и более поздних версиях Excel для Macintosh или в других версиях Microsoft Excel, выберите в меню Файл выберите команду Закрыть и вернуться в корпорации Майкрософт Microsoft Excel.
  7. Выберите A1:C6.
  8. На Сервис Выберите пункт Макрос, а затем нажмите кнопку Макросы. Выберите SortAllRangeData макрос, а затем нажмите кнопку Запустить.
Все данные в пределах выделенного диапазона теперь отсортированы, и выглядит следующим образом:
   A1: 1    B1: 7    C1: 13
   A2: 2    B2: 8    C2: 14
   A3: 3    B3: 9    C3: 15
   A4: 4    B4: 10   C4: 16
   A5: 5    B5: 11   C5: 17
   A6: 6    B6: 12   C6: 18
				

Ссылки

Excel x для Mac и более поздних версий

Дополнительные сведения о сортировке Справка Excel В меню Справка Тип меню Сортировка, нажмите кнопку Поиск, а затем выберите раздел для его просмотра.

Для получения дополнительных сведений о том, как использовать метод сортировки из редактора Visual Basic нажмите кнопку Справка по Visual Basic В меню Справка Тип меню метод сортировки, нажмите кнопку Поиск, а затем нажмите кнопку Просмотр метод сортировки.

2001 Excel для Macintosh

Дополнительные сведения о сортировке Помощник по Office, тип Сортировка списка, нажмите кнопку Поиск, а затем выберите раздел для его просмотра.

Примечание Если помощник скрыт, щелкните Помощник по Office кнопки на Стандарт панель инструментов.

Для получения дополнительных сведений о том, как использовать метод сортировки из редактора Visual Basic, нажмите кнопку Помощник по Office, тип метод сортировки, нажмите кнопку Поиск, а затем нажмите кнопку Просмотр метод сортировки.

Свойства

Код статьи: 247311 - Последний отзыв: 19 сентября 2011 г. - Revision: 6.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 2004 for Mac
  • Microsoft Excel X for Mac
  • Microsoft Excel 2001 for Mac
  • Microsoft Excel 98 for Macintosh
Ключевые слова: 
dftsdahomeportal kbautomation kbprogramming kbhowto kbmt KB247311 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:247311

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com