2016-04-01 12 views
0

excelのclose [x]機能を無効にするこのコードがあります。完了IDの入力後、もう一度ボタンを有効にする必要があります。excelのクローズ[x]ボタン

私は再び閉じる[x]機能を有効にする方法を、私はこれを持ってworkbookモジュールの[x]は、

Public FlagToClose As Boolean 
Sub Enter_1() 
    FlagToClose = False 

    'code 
    '..................... 

    FlagToClose = True 
End Sub 

Private Sub Workbook_Open() 
    FlagToClose = True 
End Sub 

Private Sub Workbook_BeforeClose(Cancel As Boolean) 
    If Not FlagToClose Then Cancel = True 
End Sub 

を無効にするには、この部分を持っていますか?

+0

あなたのコードがよさそうです。あなたのフラグを 'false'にしてブックを閉じることができないようにする(あなたの' Workbook_BeforeClose'サブルーチンのために、flagToCloseを再びトグルします)それは動作しませんか? – JNevill

答えて

0

は、閉鎖を再度有効に閉じる前に、この短いマクロを実行するには、次のようである

Sub ev_off() 
    Application.EnableEvents = False 
End Sub 
+0

サブev_off()が機能します。私は別のサブを作成して、ユーザーがcloseを有効にするためにsub_Enter1()で同じ値の一致をキーできるようにしたいと考えています。 –

+0

@JiaWeiLeeわかりません –

+0

最初はユーザはマクロ1をクリックして、入力ボックス1に数値を入力して閉じる[x]機能を無効にします。必要な処理をすべて実行した後、マクロ2をクリックして入力ボックスに同じ数値を入力します2.入力ボックス1と入力ボックス2の入力値に不一致がある場合、[x]関数は無効のままです。入力ボックス1の値を入力ボックス2の値にリンクする方法サブ2) –

関連する問題