Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I want to save a copy as text not the file itself.
Currently this macro works and saves a text mac file "19". If I change it to saveCopyAs it doesn't work. It does the same thing if I change it to another file type so I don't think it has anything to do with the file type. I don't want to destroy the workbook but I need to save a copy as text. Why doesn't saveCopyAs work instead of SaveAs? Sub saveIndesign() 'Appends date to filename so as to not write over an existing file ' saveIndesign Macro Const fPath As String = "Mac OS X:" Dim fName As String Dim myFileName As String myFileName = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & Format(Now, "yyyymmdd_hhmmss") & ".txt" fName = fPath & myFileName Application.DisplayAlerts = False 'do the save ActiveWorkbook.SaveAs Filename:=fName, FileFormat:=19 Application.DisplayAlerts = True MsgBox "File Saved to " & fName End Sub thanks, |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
..SaveCopyAs means what it says. It saves a copy of the existing workbook--it
keeps the same fileformat. One way around this is to copy the worksheet to a new workbook and then save the ..txt file from there. Sub saveIndesign() Const fPath As String = "Mac OS X:" Dim fName As String Dim myFileName As String dim Wks as worksheet myFileName = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & _ Format(Now, "yyyymmdd_hhmmss") & ".txt" fName = fPath & myFileName activesheet.copy 'to a new workbook set wks = activesheet 'that sheet in the new workbook Application.DisplayAlerts = False wks.parent.SaveAs Filename:=fName, FileFormat:=19 Application.DisplayAlerts = True 'close that new workbook wks.parent.close savechanges:=false MsgBox "File Saved to " & fName End Sub (Untested, uncompiled) And you may want something else besides the activesheet copied. Janis wrote: I want to save a copy as text not the file itself. Currently this macro works and saves a text mac file "19". If I change it to saveCopyAs it doesn't work. It does the same thing if I change it to another file type so I don't think it has anything to do with the file type. I don't want to destroy the workbook but I need to save a copy as text. Why doesn't saveCopyAs work instead of SaveAs? Sub saveIndesign() 'Appends date to filename so as to not write over an existing file ' saveIndesign Macro Const fPath As String = "Mac OS X:" Dim fName As String Dim myFileName As String myFileName = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & Format(Now, "yyyymmdd_hhmmss") & ".txt" fName = fPath & myFileName Application.DisplayAlerts = False 'do the save ActiveWorkbook.SaveAs Filename:=fName, FileFormat:=19 Application.DisplayAlerts = True MsgBox "File Saved to " & fName End Sub thanks, -- Dave Peterson |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Janis,
try this: Sub Macro1() ActiveWorkbook.SaveAs _ Filename:="c:\test\test.txt", FileFormat:=xlTextMac ' now save again as Excel-File ActiveWorkbook.SaveAs _ Filename:="c:\test\test.xls", FileFormat:=xlWorkbookNormal End Sub -- Greetings from Bavaria, Germany Helmut Weber, MVP WordVBA Win XP, Office 2003 "red.sys" & Chr$(64) & "t-online.de" |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Helmut:
Both these answers worked but this answer was very short and compact. THANKS! "Helmut Weber" wrote: Hi Janis, try this: Sub Macro1() ActiveWorkbook.SaveAs _ Filename:="c:\test\test.txt", FileFormat:=xlTextMac ' now save again as Excel-File ActiveWorkbook.SaveAs _ Filename:="c:\test\test.xls", FileFormat:=xlWorkbookNormal End Sub -- Greetings from Bavaria, Germany Helmut Weber, MVP WordVBA Win XP, Office 2003 "red.sys" & Chr$(64) & "t-online.de" |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() Hi Helmut, I have a similar need (on WindowsXP with Excel2003) except I want the text copy to be saved automagically whenever the .xls file is saved. I tried playing around with Workbook_BeforeSave(), but I couldn't get it to work. Would you mind showing me how to do it correctly? Kind regards, Bryan Patrick Batavia, IL, USA Hi Janis, try this: Sub Macro1() ActiveWorkbook.SaveAs _ Filename:="c:\test\test.txt", FileFormat:=xlTextMac ' now save again as Excel-File ActiveWorkbook.SaveAs _ Filename:="c:\test\test.xls", FileFormat:=xlWorkbookNormal End Sub -- Greetings from Bavaria, Germany Helmut Weber, MVP WordVBA Win XP, Office 2003 "red.sys" & Chr$(64) & "t-online.de" |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
excel save as csv - force text qualifier on every text field | Excel Discussion (Misc queries) | |||
How to save a file without overwrite or save a copy? | Setting up and Configuration of Excel | |||
Auto save replaced my original file and now I need the original? | Excel Discussion (Misc queries) | |||
VBA to Save a file to a different format but keep original | Excel Programming | |||
Save As - Multiple Sheets fails to save as text file | Excel Programming |