0

更新:範囲をA2:P29からinput_rangeとして定義した場合。次に、30行目にEnterキーを押すと、機能します。ただし、Input_rangeは自動的に拡張されないため、範囲の最後の行だけでなく、行全体を下にシフトしたいと思います。どうすればこれら2つのことを達成できますか?

前の質問

Siddharth Routの助けを借りて、新しいExcelファイルでこれを機能させることができます。しかし、私がこのファイルで何を試しても

サンプルExcelファイル-それは単に機能しません。行の追加を自動化できないようにするための何らかの構造があると思います。もしそうなら、どうすればコードを機能させることができますか?

4

1 に答える 1

2

Worksheet_Change()イベントを検出するときは、モジュールではなく、ワークシートオブジェクトにコードを含める必要があります。

方法は次のとおりです。

  1. Alt-F11でVBAエディターを開きます
  2. Module1からWorksheet_Change()サブをコピーします
  3. Sheet6(itemmaster)をダブルクリックします
  4. そこにコードを貼り付けます

エディターの上部にある2つのドロップダウンにワークシートと変更が表示されていることを確認してください。

注:変数宣言を要求するには、常にOptionExplicitをオンにする必要があります。この回答を読んで、その方法を確認してください:https ://stackoverflow.com/a/10653204/138938

モジュールではなくワークシートのコードのスクリーンショット

于 2012-05-19T12:45:20.637 に答える