ユーザー フォームからシートをアクティブ化する際に問題があります。Excel 2003 から Excel 2010 では同じコードが正常に機能しますが、Excel 2013 では機能しません。
これは、問題を簡単に再現する方法です。
2 つのワークシートを含むワークブックがあり、 2 つのボタンが呼び出されたSheet1
とSheet2
します。Sheet1
をクリックすると、1 行を使用してワークシートが
Button1
アクティブになります。Sheet2
Macro1
ThisWorkbook.Sheets("Sheet2").Select
そこからデータをうまく編集できます。
クリック
Button2
するUserForm1
とポップアップが表示され、クリックするCommandButton1
と同じ Macro1 が次のように呼び出されます。Unload Me Macro1
ワークシートはアクティブになって
Sheet2
いますが、そのデータを編集すると、実際に Sheet1 の対応するセルが更新されます。クリックするSheet1
と、そこに入力されたデータが表示されます!
クリックしてワークシートに戻ると、シートが正しくSheet2
アクティブになります。Sheet2
誰もそのような行動を見たことがありますか?はいの場合、適切にアクティブ化するためのコーディングの回避策はありますSheet2
か?