• ベストアンサー

VBAでの入力チェックをするには?

VBAで入力チェックをしたいんですけど、まだVBAがよくわかりません。 わかるかたお願いします。 5行ずつデータを貼っていくんですけど時々貼り付け箇所を間違えます。 それを防ぎたいのです。 貼り付け始め箇所がB100とします。 そこへ5行ごと貼り付けていきます。 私が調べてみてわかったことはXLDOWNというので一番下のセルを見つけれるしか分かっていません。 B100からどーんどーん貼っていき例えばB500からB505の間が抜け落ちていたときB495の値をその間へ貼り付け、またB2300からB2305の間が抜けていたらB2295の値をその間へ貼り付けるといったことを繰り返すことはできますでおうか?

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

  • ベストアンサー
  • Masa2072
  • ベストアンサー率51% (94/182)
回答No.2

貼り付けるデータは常に同じなのかどうか? > 例えばB500からB505の間が抜け落ちていたときB495の値をその間へ貼り付け > またB2300からB2305の間が抜けていたらB2295の値をその間へ貼り付ける > といったことを繰り返すことはできますでおうか? B500、B501が空で、B505以降がコピー済みであれば、B500、B501にB495のデータを貼り付けるということでしょうか? 行に空きがあるケースだけですが、既にデータがあるセルへの貼り付け対策は不要なのか? やりたいことが見えてきません。 とりあえず、B列最終行以降に貼り付ける簡単なマクロを作ってみました。 Sub OriginalPaste() ActiveSheet.Range("B65536").End(xlUp).Offset(1, 0).Select ActiveSheet.Paste End Sub を標準モジュールを追加して貼り付けてください。 たとえばB105までデータが入っていればB106に値を貼り付けます。 ツール-マクロ-マクロのオプションでCtrl+Shift+Vなどのショートカットキーを割り当てれば実行は簡単だと思います。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

よくはわかりませんが。 手作業で貼付ける際に、貼付け場所を間違えた場合の対処をVBAに求めるのであれば、 そもそもの貼付ける作業自体をVBAで行なえばいいのでは?って思いますが。 手作業でなければいけないのでしょうか? 勘違いでしたらスル~して下さい。

すると、全ての回答が全文表示されます。

関連するQ&A