Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10787 / 13646 ツリー ←次へ | 前へ→

【19885】並び替えで・・・ きく(初心者) 04/11/18(木) 15:15 質問[未読]
【19887】Re:並び替えで・・・ Asaki 04/11/18(木) 15:20 回答[未読]
【19889】Re:並び替えで・・・ きく(初心者) 04/11/18(木) 15:31 質問[未読]
【19891】Re:並び替えで・・・ Jaka 04/11/18(木) 15:48 回答[未読]
【19892】Re:並び替えで・・・ Asaki 04/11/18(木) 16:00 回答[未読]
【19912】Re:並び替えで・・・ きく(初心者) 04/11/19(金) 9:33 発言[未読]
【19913】Re:並び替えで・・・ Asaki 04/11/19(金) 9:41 回答[未読]
【19916】Re:並び替えで・・・ きく(初心者) 04/11/19(金) 10:14 質問[未読]
【19917】Re:並び替えで・・・ Asaki 04/11/19(金) 10:21 回答[未読]
【19919】Re:並び替えで・・・ Asaki 04/11/19(金) 10:23 回答[未読]
【19928】Re:並び替えで・・・ きく(初心者) 04/11/19(金) 12:45 お礼[未読]

【19885】並び替えで・・・
質問  きく(初心者)  - 04/11/18(木) 15:15 -

引用なし
パスワード
   Key1、Key2、Key3を同時に行うためには

Sub sort()
  Sheets("職員貼付け").Select
  Range("A4:D500").sort key1:=("所属"), order1:=xlAscending, header:=xlGuess
  Range("A4:D500").sort key2:=("職種"), order2:=xlAscending, header:=xlGuess
  Range("A4:D500").sort key3:=("コード"), order3:=xlAscending, header:=xlGuess
End Sub

以上の文のどこを直せばいいのかわからないので宜しくお願いいたします。

【19887】Re:並び替えで・・・
回答  Asaki  - 04/11/18(木) 15:20 -

引用なし
パスワード
   どうして新規にスレッドを立てるのですか?

マクロの記録は試しましたか?
試したのであれば、そのコードをUpしてみてください。
また、Sortのヘルプを確認してください。

【19889】Re:並び替えで・・・
質問  きく(初心者)  - 04/11/18(木) 15:31 -

引用なし
パスワード
   実行してみると・・・

実行時エラー'1004'
入力した文字列は参照名または定義名として正しくありません。

と言われてしまいます。

【19891】Re:並び替えで・・・
回答  Jaka  - 04/11/18(木) 15:48 -

引用なし
パスワード
   Sub sort()
  Sheets("職員貼付け").Range("A4:D500").sort _
      Key1:=("所属"), Order1:=xlAscending, _
      Key2:=("職種"), Order1:=xlAscending, _
      Key3:=("コード"), Order3:=xlAscending, _
      Header:=xlGuess
End Sub

【19892】Re:並び替えで・・・
回答  Asaki  - 04/11/18(木) 16:00 -

引用なし
パスワード
   >試したのであれば、そのコードをUpしてみてください。
>また、Sortのヘルプを確認してください。
ご自分でやらないと、今後問題が発生したときに困りますよ。

【19912】Re:並び替えで・・・
発言  きく(初心者)  - 04/11/19(金) 9:33 -

引用なし
パスワード
   コードをUpする、また、Sortのヘルプを確認してください。
の意味がわかりません。(><)宜しくお願いいたします。

【19913】Re:並び替えで・・・
回答  Asaki  - 04/11/19(金) 9:41 -

引用なし
パスワード
   >コードをUpする
マクロの記録で出来たプログラムを、この掲示板にコピーして貼り付けてください。

>Sortのヘルプを確認してください。
VBEのヘルプを起動して、「Sort」を調べてください。
なお、ヘルプはインストールされていない場合がありますので、
そのときはインストールされることをお薦めします。

Jaka さんのご回答のとおりなわけですが、
マクロの記録をとってみたり、ヘルプを調べることで解決することも多いです。
この辺は、覚えておかれて損はないと思います。

【19916】Re:並び替えで・・・
質問  きく(初心者)  - 04/11/19(金) 10:14 -

引用なし
パスワード
   マクロの記録で出来たプログラムは

Sub Macro2()
  Selection.sort Key1:=Range("B4"), Order1:=xlAscending, Key2:=Range("D4") _
    , Order2:=xlAscending, Key3:=Range("A4"), Order3:=xlAscending, Header:= _
    xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    SortMethod:=xlPinYin, DataOption1:=xlSortNormal, DataOption2:= _
    xlSortNormal, DataOption3:=xlSortNormal
End Sub

インストールはOfficeのROMからでしょうか?
どうやらインストールされてないようです。

また、ボタンをクリックするとこの並び替えをしたいのですが、ボタンにマクロ登録だけでは実行されないのでしょうか?VBAに書き込みが必要でしょうか?

【19917】Re:並び替えで・・・
回答  Asaki  - 04/11/19(金) 10:21 -

引用なし
パスワード
   >インストールはOfficeのROMからでしょうか?
そうです。
今後もマクロをお使いになる気があるのであれば、インストールしたほうが良いでしょう。

>また、ボタンをクリックするとこの並び替えをしたいのですが、
>ボタンにマクロ登録だけでは実行されないのでしょうか?VBAに書き込みが必要でしょうか?
それでできるはずですが。
ただ、
>Selection.sort
となっていますので、範囲選択してからでないと動かないようです。
毎回、きちんと並べ替えたいデータの何処かをクリックしてからボタンを押すか
Selection → Range("B4")
に書き換えてみてください。

【19919】Re:並び替えで・・・
回答  Asaki  - 04/11/19(金) 10:23 -

引用なし
パスワード
   >VBAに書き込みが必要でしょうか?
記録されているので、既に書き込まれた状態です。
そのファイルを再度開くとき、マクロを実行するように設定しておかないと、
そのボタンは使えません。

【19928】Re:並び替えで・・・
お礼  きく(初心者)  - 04/11/19(金) 12:45 -

引用なし
パスワード
   どうにかうまく組むことができました。
度々どうもありがとうございました。
またの機会に宜しくお願いいたします。

10787 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free