Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
The old application.quit problem
I have a similar problem to this.
I've writen some code in Access which extracts, manipulates and then ouputs the data to a user selected workbook. I create a single instance of an Excel Application object and pass it to every routine that requires it. Everything runs well and my output is correct. The only problem I'm getting is that Excel is still under the 'Processes' in Task Manager. This is a problem because when I run the code again, it will stop at the following routine. Public Sub formatWorkbook(ByRef XL As Excel.Application, ByVal strRangeName As String, _ ByRef FormatRange As Excel.Range) 'Copies format of named range to selection XL.Goto (strRangeName) If (Selection.Row = FormatRange.Row) Then Exit Sub End If sht.Cells(1, 1).Select XL.Goto (strRangeName) Selection.Copy FormatRange.Select FormatRange.PasteSpecial xlPasteFormats, , False, False XL.ActiveSheet.Cells(1, 1).Select End Sub Specifically at "Selection.Row" Please Help Thanks -----Original Message----- Hello, I'm totally lost. I've been searching through these forums and the internet for an answer, but I can't solve this problem. I have a splash screen (userform) from which users can open different forms in my application. The splash screen also has a quit button which is supposed to close Excel down, but it still apperas in the task manager. From what I've read, I think I understand the problem, but I have no idea how to solve it. I'm not creating new instances in my code? Not sure if I should? Anyway, I'll give a brief explanation of what I'm doing: I have 1 workbook with 3 sheets. I have a userform acting as a splash screen. The first thing I do when someone opens my xls file is (code for ThisWorkbook): Code: -------------------- Private Sub Workbook_Open() Application.Visible = False frmSplash.Show End Sub -------------------- On my splash screen, I have a quit button with the following code: Code: -------------------- Private Sub btnQuit_Click() For Each w In Application.Workbooks w.Close False Next w Workbooks(1).Saved = True ThisWorkbook.Close False Application.Quit -------------------- Clicking this still leaves the Excel process running. Can someone please point me in the right direction? Thankyou in advance. --- Message posted from http://www.ExcelForum.com/ . |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
The old application.quit problem
Hi Hafeez,
Public Sub formatWorkbook(ByRef XL As Excel.Application, ByVal strRangeName As String, _ ByRef FormatRange As Excel.Range) 'Copies format of named range to selection XL.Goto (strRangeName) If (Selection.Row = FormatRange.Row) Then Exit Sub End If sht.Cells(1, 1).Select XL.Goto (strRangeName) Selection.Copy FormatRange.Select FormatRange.PasteSpecial xlPasteFormats, , False, False XL.ActiveSheet.Cells(1, 1).Select End Sub Specifically at "Selection.Row" Whenever you use any of Excel's 'global' objects, such as Cells, Selection etc, you must prefix them with the instance of Excel you're using: Public Sub formatWorkbook(ByRef XL As Excel.Application, ByVal strRangeName As String, _ ByRef FormatRange As Excel.Range) 'Copies format of named range to selection XL.Goto (strRangeName) If (XL.Selection.Row = FormatRange.Row) Then Exit Sub End If sht.Cells(1, 1).Select XL.Goto (strRangeName) XL.Selection.Copy FormatRange.Select FormatRange.PasteSpecial xlPasteFormats, , False, False XL.ActiveSheet.Cells(1, 1).Select End Sub Regards Stephen Bullen Microsoft MVP - Excel www.BMSLtd.ie |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Excel application.quit in macro problem | New Users to Excel | |||
macro to close excel application other than application.quit | Excel Programming | |||
The old application.quit problem | Excel Programming | |||
The old application.quit problem | Excel Programming | |||
application.quit will not shut off application | Excel Programming |