2015-11-20 32 views
0

我有一個工作表(QT),由用戶填寫並且當用戶關閉工作簿時UserForm在關閉之前出現。用戶然後選擇一些東西並運行代碼。該代碼將數據插入到另一個工作簿(Log)中。我的問題是另一個工作簿(Log)詢問用戶是否想保存。我需要跳過這一步。我試過Application.DisplayAlerts = False,但並不妨礙它彈出。從輸出文件沒有彈出對話框的工作簿保存彈出要求另存爲

Private Sub OKBTN_Click() 
Dim TOTALFOB As String 
Dim TOTALWC As String 
Dim MFG As String 
Dim JOB As String 
Dim XL As Excel.Application 
Dim wbk As Excel.Workbook 
Dim INWBK As Excel.Workbook 
Dim TOTMFG As Variant 
Dim TOTWC As Variant 
Dim visitdate As Date 
Dim visitdate_text As String 


TOTALFOB = RefEdit1 
TOTALWC = RefEdit2 
Set XL = CreateObject("Excel.Application") 
Set INWBK = ActiveWorkbook 
Set wbk = XL.Workbooks.Open("C:\QUOTE REQUEST LOG 2015.xlsm") 

If YESBTN.Value = True Then TOTMFG = INWBK.Sheets("QTR").Range(TOTALFOB).Value 
If YESBTN.Value = True Then TOTWC = INWBK.Sheets("QTR").Range(TOTALWC).Value 

If NOBTN.Value = True Then TOTMFG = "N/A" 
If NOBTN.Value = True Then TOTWC = "N/A" 

MFG = INWBK.Sheets("QTR").Range("B7").Value 
JOB = INWBK.Sheets("QTR").Range("H13").Value 
visitdate = INWBK.Sheets("QTR").Range("H9").Value 
visitdate_text = Format$(visitdate, "mm\-dd\-yyyy") 

wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(1, 0) = INWBK.Sheets("QTR").Range("B7").Value 

wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(0, 1) = INWBK.Sheets("QTR").Range("H11").Value 
wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(0, 3) = INWBK.Sheets("QTR").Range("H13").Value 

wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(0, 4) = TOTMFG 
wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(0, 5) = TOTWC 
wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(0, 6) = "OPEN" 

wbk.Sheets("QTR_LOG").Range("B" & Rows.Count).End(xlUp).Offset(0, 7) = INWBK.Sheets("QTR").Range("H9").Value 


Application.DisplayAlerts = False 
INWBK.SaveAs Filename:="C:\. QUOTE REQUESTS" & _ 
"\DCS QTR " & MFG & " " & " " & JOB & " " & visitdate_text & ".xlsx", _ 
FileFormat:=51, CreateBackup:=False, local:=True 


Set XL = Nothing 
Unload Me 
wbk.Close 
End Sub 

代碼(活動日誌):

Private Sub Workbook_BeforeClose(Cancel As Boolean) 

Application.DisplayAlerts = False 
ThisWorkbook.Save 

End Sub 

回答

0

嘗試ThisWorkbook.Saved =真 即使未保存工作簿時,Excel將作爲是否保存

+0

我將此代碼插入到我的輸出文件中,並且它正確運行但未保存數據。 – Geoff

+0

正如我所說,這不是你問的嗎? – Wouter

+0

對不起,這是我的標題說。我會重新說說它。我想要做的是保存它,但不會彈出對話框要求您保存。 – Geoff