Thread: Close workbook
View Single Post
  #7   Report Post  
Posted to microsoft.public.excel.programming
Alex Simmons Alex Simmons is offline
external usenet poster
 
Posts: 15
Default Close workbook

On Apr 15, 12:53*am, Alex Simmons wrote:
On Apr 14, 10:28*pm, Oldjay wrote:



That didn't work. It steped thru if but didn't see Tempdata. I even tried to
add .xls just in case that worked. Maybe there is a better way to do what I
want. Why I am checking to see if Tempdata was left open is because I need to
copy data to it then save it under a other name.
Here is the first part of the sub If Tempdata is open then you can't save it
because another workbook is all ready open and the sub fails


Sub SaveNewQuot() ' Saves input data for new quote


* * Application.ScreenUpdating = False 'Keeps screen from updating thereby
speeding routine
* * Application.DisplayAlerts = False *'Suppresses normal alerts


* * Dim Quote1 As String
* * Dim quotenumber1 As String
* * Dim numbersave As String
* * Dim QuoteRecords As String
* * Dim username As String


* * username = Application.username


* * * * numbersave = Range("C4") 'Save Estimate # to the variable "numbersave"


* * * * Range("I190:J191").Select ' Reset FOB and origin
* * * * Selection.Copy
* * * * Range("B190").Select
* * * * Selection.PasteSpecial Paste:=xlPasteFormulas


* * * * For Each wkb In Workbooks
* * * * * *If wkb.Name = "Tempdata" Then
* * * * * * * wkb.Close
* * * * * *End If
* * * * Next wkb


* * * * Workbooks.Add
* * * * ActiveWorkbook.SaveAs Filename:="TempData.xls"


* * * * Windows("Master5.xls").Activate 'Customer info & part description
* * * * Range("C4:C34").Select
* * * * Selection.Copy
* * * * Windows("TempData.XLS").Activate
* * * * Range("C4").Select
* * * * Selection.PasteSpecial Paste:=xlPasteFormulas


"Alex Simmons" wrote:
On Apr 14, 7:15 pm, Oldjay wrote:
Thiat worked but I didn't tell you everything.


Sometimes Tempdata .xlx is open but not the active workbook


"Gary''s Student" wrote:
Try:


*If ActiveWorkbook.Name = "Tempdata" Then
* * * * ActiveWorkbook.Close
*End If


--
Gary''s Student - gsnu200779


"Oldjay" wrote:


I want tp close tempdata if it is open


*If ActiveWorkbook = "Tempdata.xls" Then
* * * * ActiveWorkbook.Close
*End If


This dosn't work


Oldjay,


This should do the trick:


Sub CloseTempData()
Dim wkb As Workbook


For Each wkb In Workbooks
* * If wkb.Name = "Tempdata" Then
* * wkb.Close
* * End If
Next wkb


End Sub


Alex


Sorry, yes my previous post should read If wkb.Name = "Tempdata.xls",
which works when I tested it.


And also, what are you trying to do with the numbersave variable? Your
code is confusing here - perhaps it should be:

Let numbersave = Range("C4").Value

I'm also not sure exactly what you're trying to achieve - it's
difficult to understand without your full code there.