- ベストアンサー
エクセルで並べ変えについて
エクセルで資金繰表を作って使用しています。 いつもは、日付などを変更したりしたときは、範囲を指定して、昇順ボタンを押しているのですが、とっても面倒です。常に日付順に並べ替える設定などがありましたら、是非 教えていただきたいのですが。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
例えば、Sheet1のA列、B列、C列・・・に続けてデータが入力され、行方向にも連続して入力されるとします。ソートの関係で、1行目は表題で、2行目からデータが入力されているとしています。 B列を日付を入力する列と仮定すると、次のようにします。 ツール→マクロ→Visual Basic Editor でVBE画面に移り、 表示→プロジェクトエクスプローラでプロジェクトエクスプローラを表示し、Sheet1をダブルクリックします。 でてきたコードウインドウに下記マクロをコピーして貼り付けます。 次に、シートに戻り、B列の日付(年月日)を入力したり変更すると自動的に昇順にソートします。 Excel2000で確認済みです。ご参考に。 ↓ここから Const sortCol = "B" 'B列に日付が入力される場合。実際のシートに合うよう修正して下さい。 Private Sub Worksheet_Change(ByVal Target As Range) '日付が入力される列を変更した場合 If Target.Column = Range(sortCol & ":" & sortCol).Column Then '指定した列を基準に昇順に並べ替える Selection.Sort Key1:=Range(sortCol & "2"), Order1:=xlAscending, Header:=xlGuess End If End Sub
お礼
すっかり忘れたころのお礼になってしまって申し訳ありません。 とても勉強になりました。ありがとうございます。 早速試してみます。