• ベストアンサー

入力後に日付順になるように自動で並び替えしたいのです。

エクセルで家計簿を作成しています。 初心者なので簡単に作成していますが、この質問ページで勉強中です。 早速質問なのですが、A1のセルに日付が入るようにしているのですが 時につけ忘れで、日付が前後してしまいます。 このとき入力後に自動で、日付の順番に並び返してくれる方法ありますか? もしあるのでしたら、ぜひ挑戦してみたいと思います。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

入力後、自動で といわれるとVBAの力を借りることになります。 手動では、ツールバーのデータ=>並び替え でA列で並び替えればOKですが? もし、既にご存知でしたら、VBAで実行する方法ですが シートの名前のタブを右クリックして コードの表示 をクリック VBエディターが起動したら Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then Cells.Select Selection.Sort Key1:=Range("A2"), Header:=xlGuess End If End Sub コピィして閉じてみてください。 A列に適当に日付を入れてみます。使いやすいかどうか?色々試してみてください。

dokonnjyou
質問者

お礼

ありがとうございます。 気が引けるほどの回答もあり心配しましたが(やっぱりずうずうしいかな?とおもってましたので・・・) 試してみました! すごいですね! パソコン使って管理するのってなんだかすごく楽しくなりました。 hallo-2007のおかげです。

その他の回答 (4)

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.5

申し訳ありませんが私VBAは今一ですので 他の方の投稿にお任せしたく思います お役に立てず済みません 別のセルで一覧を作ってもいいなら私でも出来るのですが… その際は具体的な書式が必要になります

dokonnjyou
質問者

お礼

お返事ありがとうございます。 本当にうれしいです。

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.4

自動と言うのは 手作業でいちいち並べ替えなくても… と言う意味ですか? それとも データを入力するだけでこちらから何らアクションを起こさないでも勝手に並び変わる と言う意味ですか? 後者なら ファイルオープン時に毎回並べ替えさせる とか 名前は定かで無いのですが「入力アシスタント」のようなウイザード的なもので入力する際に裏側で勝手に再配列させる とかはVBAでやれば可能だと思いますし 入力用シートはそのままだけど別シートではちゃんと並べ変わっている と言うのであれば関数とかで出来ると思うのですが 最後の場合は具体的に使用されているフォーマットをお示し頂かないと 辛いところがあると思います 前者では 日付と言うのが文字列ではなく”チャンと”日付として認識されるように入力されていれば 非常に簡単に出来ます 何せそれ用の機能が用意されているからです 詳しくはExcelのヘルプ「並べ替え」についてご一読頂ければと思います ヘルプを開き「並べ替え」と言う言葉で検索をかけて頂ければヒットすると思いますよ ところで 貴方のお求めになられているのは 前者? それとも 後者?

dokonnjyou
質問者

補足

入力用シート、別シートとは管理していません。 (まだ、その能力は無いようです。) できれば後者のほうでご指導いただくととても助かります。 せっかくの勉強の機会です。 ヘルプもこれから検索してみます。 ありがとうございます。

noname#77348
noname#77348
回答No.3

データの並び替えを覚えてください。 自動じゃできません。 >この質問ページで・・ このサイトを利用するのではなく、書店で解説書などを購入しましょう。 以上

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

>入力後に自動で、日付の順番に並び返してくれる方法ありますか? 入力したシート内で自働となるとマクロでも利用しないと難しいですね。 (単純にソートするだけなら数クリックで可能ですが) 入力したシート以外のシートにということでしたら関数で並び替えは可能です。

関連するQ&A

専門家に質問してみよう