2011-07-31

エクセルメモ

未だ未完成の「成績管理(付与)システム」。各教科の成績表と生徒名簿を絶対参照でリンクさせる作業がめんどくさくて放置しておりました。生徒数×教科数≒3,000回のコピー&ペースト。萎えます。

しかも、

生徒苗字 生徒名前
AAA aaaa
BBB bbbb
CCC cccc

という名簿を

生徒苗字 生徒名前
AAA aaaa
   
BBB bbbb
   
CCC cccc
   

の一行毎に切り貼りしていかなければなりません。指がつる・・・・。この書式を考えだした教育省は手作業での管理しか考えていないのでしょう、たぶん。

各教科の教員にエクセルの講習会とこじつけ作らせようと画策していましたが見事失敗。後がない私。それで困った時のグーグル先生。

解決方法ありました。

手順

  1. 新たにブックを作成。
  2. 新たに作ったブックに生徒名を数式の形式で相対参照で入力(以下、仮名簿)
  3. ドラッグして、クラス分の生徒名簿を仮にに作る
  4. マクロを作成(ココから頂きました

    Sub ConvFormula_Rel2Abs()

    Dim objCell As Range

    For Each objCell In Selection

    With objCell
     If .HasFormula Then _
      .Formula = Application.ConvertFormula(.Formula, xlA1, , xlAbsolute)
    End With

    Next

    End Sub

  5. マクロ実行。これで相対参照が絶対参照に置き換わります。
  6. 仮名簿の生徒名に番号をつける。その番号を選択してコピー。一番最後の生徒の次のセルに1番からまた生徒と同じ数だけ番号をつける。下表を参照
      生徒苗字 生徒名前
    1 AAA aaaa
    2 BBB bbbb
    3 CCC cccc
    1    
    2    
    3    
  7. 番号を基準に、並び替え機能を使って並び替えると完成!!!!
      生徒苗字 生徒名前
    1 AAA aaaa
    1    
    2 BBB bbbb
    2    
    3 CCC cccc
    3    
  8. これを各教科の成績管理表に貼りつければばっちり。

力技よりグーグル先生。作業が一気に楽になりましたとさ。

0 件のコメント: