例えば、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
お礼
すっかり忘れたころのお礼になってしまって申し訳ありません。 とても勉強になりました。ありがとうございます。 早速試してみます。