人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセル VBAについての質問です。
並べ替えの指定をしたいのですが、マクロの記録で生成された下記のようなスクリプトにどうかけば
変数名としてわたるのでしょうか? 昇順降順の部分がそれです。

Selection.Sort Key1:=Range(位置 & "13"), Order1:=昇順降順, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal

●質問者: kaiketsu
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:VBA エクセル スクリプト マクロ 並べ替え
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● HALSPECIAL
●35ポイント

昇順の場合は、xlAscending

降順の場合は、xlDescending

です。


Dim sortOrder As Integer

If True Then

sortOrder = xlAscending '昇順

Else

sortOrder = xlDescending '降順

End If

Selection.Sort Key1:=Range(位置 & "13"), Order1:=sortOrder, Header:=xlGuess, _ ・・・

◎質問者からの返答

integer で指定しないと駄目のようでした。


2 ● jccrh1
●35ポイント

昇順降順は次の定数を受け渡せば良いです。

昇順:xlAscending 
降順:xlDescending

値で直接指定するなら
昇順:1 
降順:2

Sub 関数の例(昇順降順を省略した時は昇順になります)

call ソート("A",xlDescending)

Sub ソート(位置 As String, Optional 昇順降順 As Integer = xlAscending)
 Selection.Sort Key1:=Range(位置 & "13"), Order1:=昇順降順, Header:=xlGuess, _
 OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
 :=xlPinYin, DataOption1:=xlSortNormal
End Sub

ダミーURL:http://q.hatena.ne.jp/1251263294

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ