|
▼黒蟻 さん:
こんばんは。
>>>Orientation をxlSortRowsにすると列単位になり
>>>xlSortColumns にすると行単位になってしまいます。
>>>どこが変なのでしょうか。
>>あっていますよ?
>>何が変なのですか?
>
>ヘルプを見ますと、
>
>xlSortRows 既定値。行単位で並べ替えます。
>xlSortColumns 列単位で並べ替えます。
>
>となっています。
>
>実際に使ってみますと、
>
>xlSortColumns は規定値となり、行単位で上下方向にソートし
>xlSortRows 列単位で左右方向にソートされます。
>
>例えば、行をレコードとするデーターベースで
>レコードの並べ替えをする場合、
>Orientation := xlSortColumns
>でよろしいのでしょうか。
本当ですね。helpのミスなのかな?
実際にマクロの記録を使ってソートさせてみて下さい。
行方向(上から下への並び替え)は、
'==============================================
Range("A1").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin
というように
xlTopToBottom定数が使われていますし、
列方向(左から右に並び替え)の場合は、
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, SortMethod _
:=xlPinYin
で、xlLeftToRightが使用されいます。
こっちの方が意味ピッタシですね。
ちなみに
xlTopToBottom=xlSortColumns=1
xlLeftToRight=xlSortRows=2
となっています。
本当は、Columns(列)で列(縦)方向に並び替え、
Rows(行)で行(横)に並び替え
という意味なんでしょうね!!
|
|