バックグラウンド
ユーザーがテキスト ボックスにデータを入力する Excel 2007 フォームがあり、ユーザーが [OK] コマンド ボタンをクリックすると、そのテキストに基づいてマクロが実行されます。ただし、別の場所 (例: Ctrl + C
) から文字列をコピーし、最初に貼り付けて [OK] を押すと、コピー バッファーがクリアされたように見えます。もう一度どこかに貼り付けようとしても、何も起こりません。ただし、[キャンセル] コマンド ボタンをクリックすると、2 回目の貼り付け機能が保持されます。[OK] をクリックしたときに実行されるマクロは非常に単純です。新しいシートを作成し、データベースからデータを挿入し、ループ チェックを実行するため、どの VBA メソッドもコピー バッファをクリアしないと思います。 . 私が考えることができる唯一のことは.Select
、ある時点で使用してからセットアップすることです.PrintArea
Cells(row, col) = Cells(row, col)
、しかし、それはすべて構文を介して行われるため、選択したデータをコピー/貼り付けしないため、コピー/貼り付けの効果はありません。さらに、クリップボード ペインを表示しても何も消去されません。エントリはそこに残ります。
質問
コマンド ボタン/テキスト ボックスにリンクされたマクロを実行した後に Excel 2007 がコピー バッファを消費するのは単なるバグですか、それとも問題を引き起こしている可能性のある何かがありますか? Ctrl + C
バグの場合、ユーザーが最初に入力した文字列に戻す方法はありますか?