引用:
これで1回だけ動いたのですが、2回目以降が動かないのです。
とりあえず、
Private Sub Worksheet_Change(ByVal Target As Range)
にブレイクポイントを設けて
B列に値を入れようとしたときに、そのイベントが実行されていますか?
実行されていないのでは?
このイベント自体は、
セルの値を変えたときに発生します。
A列の値を変えたときにも発生します。
そうすると、
Application.EnableEvents = False
を通過しますから、
イベント無効になってしまいますよね?
Application.EnableEvents = False
Application.EnableEvents = True
を入れる位置を工夫しましょう。
直接の話は以上ですが
引用:
この↑コードは、入力箇所を設定するときにCurrentRegionプロパティ(メゾット?)を使っているので、隣接するセルに第三者による入力を防ぎたいのです。
じゃぁ、CurrentRegion を使わなければ良い。
End(xlUp)等で代用できませんか?
引用:
マクロでの入力を間違えたら、すぐに列削除や、カットコピーなどはVBAではなく、ワークシートに備わっているネイティブな機能を使いたいのです。
?状況が理解できません。
マクロで入力を間違える?間違えない様マクロを使うのでは?
マクロの動作が間違えない様するのが先決なのでは?
引用:
アウトルックまで一通り書き上げて、今は色んな可能性があったときの対策で色々コードを書き加えている段階なのでそこだけアナログなのも、ちょっと悔しいと思い…
これは、その作業を金額を決めて請け負われているのでしょうか?
そうではなく、社内依頼であったり、どなたからか頼まれて
あるいは自発的 に作成しているのではありませんか?
その場合、コーディン者が、色々と考え、制限や対処を入れる事をしますが
独り善がりの 機能を追加し、そこに時間を掛けがちになります。
コーディング者の 自己満足に過ぎない事に悩みがちです。
使用者としては使い勝手が良ければ良い。悪ければ、その都度直せば良いでしょう。
大局的に考えコーディングを進める事をお勧めします。
引用:
私は正直そこまで求めておらず
は、コーディング者の自己満足的なこだわり。
プロなら、 UserInterfaceOnly で必要十分な効果が得られるなら それを選びますよね。