スタートブックは常に開いていますが、すべてのコードを置く場所は常に隠しています。それは私のコンピュータ上の任意のExcelを開いて隠すときにユーザーフォームを要求します。MyBook.CloseはExcelウィンドウを隠すことはありません
コードによっては、新しいブック(レポートブック)が開かれることがあります。このブックは、ユーザーに表示される必要があります。私はちょうど行います
MyReportBook.Activate
と私は、ユーザーがこの報告書で行われた場合(真= application.visible私は使用しませんでした)
が、彼はそれを閉じることができますレポートを見ることができます。
私の最初の問題は、この措置がスタートブックを閉鎖していたことであり、私はこの本を閉じたくはありませんでした。だから私は、私のスタートブックのBefore_Closeにこれらのコードを入れて(私がチェックし、ユーザーがレポートブックを閉じると、コードがスタートブックに実行を開始!!):
If MyUserFormThatMakeReport.visible = true then
Dim wb As Workbook
Application.ScreenUpdating = False
For Each wb In Application.Workbooks
If wb.Name = "Report Book Name" Then
wb.Save
wb.Close
Application.Quit
End If
Next wb
Cancel = True
Application.Visible = False
Application.ScreenUpdating = True
End if
事があれば、後のそれに近いです私はapplication.visible = trueを実行します: - レポートブックのワークブックはまだ開いています - Excelブックはすべて灰色です - レポートブックの名前はまだウィンドウの上にあります - スタートは本物です!!!
私がフォーラムに投稿したのは初めてです。すでに10年、あなたと他のフォーラムの大きな助けを借りて自分で学びます。しかし、今回は私がブロックされている、助けてください。
残念ながら、この投稿は "Hi guys"で始まりますが、それは病気です...だからHY GUYS; - )) – Kaldoch
'wb.Save:wb.Close'が実行されていることを確認しましたか?チェックするには、そこにブレークポイントを置くことができます。また、 'Application.Quit'はここでは意味をなさないが、実際にブロックが実行されなかったことを示すように見える。 –
私を助けてくれてありがとうA.S.H。 – Kaldoch