2010-08-16 6 views
0

Привет, внутри одного столбца у меня есть такие ценности, как следующее:услуги отчетности - пользовательский формат

9-7 
9-18 
9-142 

На данный момент, когда я сортирую на основе этой колонке я должен следующее:

9-142 
9-18 
9-7 

Я хотел бы отсортировать эти значения должны быть упорядочены следующим образом:

9-7 (so it would be 9-007) 
9-18 (so it would be 9-018) 
9-142 

I попытался в следующем формате:

=Format(Fields!ShelfNumber.Value,"000-000") 

Но это не работает. Может кто-то мне помочь, пожалуйста?

+0

Я рекомендую вам идентифицировать все возможные форматы для поля ShelfNumber. Если это полностью свободная форма, вам просто нужно использовать сортировку строк (как сейчас) или оставить ее несортированной. –

ответ

1

Сортировать по следующим выражениям:

=Cint(IIf(InStr(Fields!shelfnumber.Value,"-")<=1,"0",Left((Fields!shelfnumber.Value & "-"), InStr((Fields!shelfnumber.Value & "-"),"-")-1))) 
=Cint(IIf(Fields!shelfnumber.Value="" or Len(Fields!shelfnumber.Value)=InStr(Fields!shelfnumber.Value,"-"),"0",Right(Fields!shelfnumber.Value, Len(Fields!shelfnumber.Value) - InStr(Fields!shelfnumber.Value,"-")))) 

Первый преобразует символы перед - к номеру, второй преобразует символы после - на номер.

EDITED, чтобы пустая строка.

FURTHER EDITED, чтобы обеспечить полки с - в начале или конце строки.

FURTHER EDITED, после тестирования.

+0

после применения этой сортировки в моей таблице. Я получаю следующую ошибку: выражение сортировки для таблицы «table1» содержит ошибку: Аргумент «Длина» должен быть больше или равен нулю –

+0

@niao - кажется, что часть полки номера не имеют в них '-'. Помимо строк, отформатированных как '# - #', какие другие форматы могут иметь номер полки? –

+0

также может быть пустой строкой –

Смежные вопросы