アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excel2013で、名簿をつくりました。

A列にあ行を、B列にか行を、C列に……というように、わ行までつくりました。
ここで、対応する列に新しい名前を入力したときに、自動的に昇順になる方法はありますか?

gooの中で、「A列を自動的に並び替える」は見つけたのですが、それぞれの列を独立して昇順にする方法が分かりませんでした。

質問が分かりにくいときは、補足します。
どうぞよろしくお願いいたします。

質問者からの補足コメント

A 回答 (3件)

No.2です。



>たとえば2行目を新規単語入力欄として常に空欄にする。
というコトですので、もう一度コードを載せてみます。
前回のコードはすべて消去し、↓のコードに変更してください。

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastRow As Long, lastCol As Long, myRng As Range
lastCol = Cells(1, Columns.Count).End(xlToLeft).Column
If Intersect(Target, Range(Columns(1), Columns(lastCol))) Is Nothing Or Target.Count > 1 Then Exit Sub
With Target
If .Row = 2 And .Value <> "" Then '←変更★//
lastRow = Cells(Rows.Count, .Column).End(xlUp).Row
Set myRng = Range(Cells(1, .Column), Cells(lastRow, .Column))
myRng.Sort key1:=Cells(1, .Column), order1:=xlAscending, Header:=xlYes
'▼追加//
Cells(2, .Column).Insert
Cells(2, .Column).Select
'▲ここまで//
End If
End With
End Sub

入力するセルは必ず2行目とし、それ以外の行の入力は何も変化しません。

これではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

助かりました

どうもありがとうございます!
できました!!

お礼のお伝えが遅くなってしまい、まことに申し訳ありません。

tom04様は、神さまのような方です。
分かりやすく、そしてご親切に教えてくださって、
本当に、どうもありがとうございます。

お礼日時:2016/02/18 14:33

こんにちは!


一例です。

1行目は項目行になっていて、データは2行目以降に入力するとします。
シートモジュールです。

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastRow As Long, lastCol As Long, myRng As Range
lastCol = Cells(1, Columns.Count).End(xlToLeft).Column
If Intersect(Target, Range(Columns(1), Columns(lastCol))) Is Nothing Or Target.Count > 1 Then Exit Sub
With Target
If .Row > 1 Then
lastRow = Cells(Rows.Count, .Column).End(xlUp).Row
Set myRng = Range(Cells(1, .Column), Cells(lastRow, .Column))
myRng.Sort key1:=Cells(1, .Column), order1:=xlAscending, Header:=xlYes
End If
End With
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 1
この回答へのお礼

どうもありがとうございます! できました!!!

マクロを使ったことがなくて、作業に時間がかかってしまい、
お礼が遅くなってしまって申し訳ありません。

また、大変恐れ入りますが、お時間を見つけていただけそうでしたら、
引き続き、教えていただいてもよろしいでしょうかm(_ _)m

--
tom04様のおかげで、1行目に、あ、か、さ……と固定され、
2行目以降に単語が昇順に出てくるようになりました!

新しい単語を追加するときに、1番下までスクロールして記入しなければ
ならないため、たとえば2行目を新規単語入力欄として常に空欄にする
などの方法は、ありますでしょうか。
(セルの挿入などを試しましたが、できませんでした)

マクロが分からないため、トンチンカンなことをお伺いしていたり、
難しいことをお願いしていたら、すみません。

どうぞよろしくお願いいたします。

お礼日時:2016/02/15 11:33

aqua_colorさんが見つけた「A列を自動的に並び替える」のコードを補足として掲示して頂くことは可能でしょうか。


たぶん回答側も回答しやすいと思いますよ。
    • good
    • 0
この回答へのお礼

ご指摘を、どうもありがとうございます。

「教えて!goo」を使いはじめたばかりで、分からないことがたくさんあり、
とても参考になりました。

A列を自動的に並び替える」のアドレスは、こちらになります。
https://oshiete.goo.ne.jp/qa/440128.html

本当はコードを入力したかったのですが、調べても分からなくて、アドレスに
なってしまい申し訳ありません。

お礼日時:2016/02/13 23:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!