Home 第二章 VBAからみたセル操作


3. 自動登録マクロのダイエット


サンプルファイル 2_003.xls

 

   Range("E4").Select

   ActiveCell.FormulaR1C1 = "VBA"

   Range("E5").Select

  1. 上のコードは、セルE4に VBA の文字を入力した自動登録マクロです。
    よーく ご覧下さい。

  2. E4に VBA の文字を入れることだけを 目的とします。

  3. まず、Range("E5").Select は、文字を入力後の動作なので不要ですね。
    スリム化 ステップ1
    Range("E4").Select
    ActiveCell.FormulaR1C1 = "VBA"

  4. 次に、ActiveCell というのは コード内容からE4 だということが分かりますね。
    ActiveCell をRange("E4") に置き換えてみます。(下線部分を削除してしまう)
    スリム化 ステップ2
    Range("E4").FormulaR1C1 = "VBA"

    と言う具合です。 3行が1行になりました。
    アクティブセルの位置に関係なく、E4 の値は VBA になります。

    One Point アドバイス
    自動登録マクロは、結果的に無駄な部分が含まれます。
    いらない部分を削除して、必要な部分だけ残すようにするほうが良いでしょう。
    削除後の動作確認を忘れずに!

    記述例
    こういうことです。

    '----------------------------------------------------------------

    'ダイエット前
    Sub A_01()
      Range("E5").Select
      ActiveCell.FormulaR1C1 = "VBA"
      Range("E6").Select
    End Sub
    '----------------------------------------------------------------

    'ダイエット後

    Sub A_02()
      Range("E5").FormulaR1C1 = "VBA"
    End Sub
    '----------------------------------------------------------------

     

     

    But But But です
    Range("E4").FormulaR1C1 = "VBA" は少々問題が残っています。
    次の4.Value と 5. R1C1形式 と A1形式 で理解を深めてください


    Top