Copiar hoja de exel

Hola valedor he leído sobre ti y veo que conoces muy bien visual basic y te gusta compartir tus conocimiento es por eso que me atreví a molestarte con una pregunta quiero copiar el contenido de una hoja de exel tal cual a un documento de texto que se crea en raíz
Sheets("puntos"). SaveAs _ Filename:="c:\report.txt", _ FileFormat:=xlTextPrinter
bueno hasta aqui esta bien mi codigo pero al cerrar el exel me pregunta que si quiero guardar los cambios en report.txt
y como tres pregutas mas que me dicen que si quiero sobreescribirlo (que es lo que deseo sin que me pregunte)y depues aparece un mensa que el archivo no es compatible con libros de multiple hojas en fin a fin de cuenta hace lo que quiero pero pregunta demaciado y ves lo que quiero evitar que el usuario final tenga que tomar deciciones
Amigo valedor crees que esto tenga arreglo o conoces alguna forma de hacerlo que no pregunte si desea sobrescribirlo y al cerrar no pregunte sobre el archivo de texto espero me hayas entendido
Saludos

1 respuesta

Respuesta
1
El problema es que si usas directamente el SaveAs, el libro desde donde estas ejecutando la macro, se cierra y por lo tanto pierdes el control, ademas de que cuando guardar el TXT como no puede contener código te hace toda esa serie de preguntas, yo lo haría así...
Option Explicit
Public Sub Guardar()
Dim wbNuevo As Workbook
Worksheets("Puntos").Copy
Set wbNuevo = ActiveWorkbook
Application.DisplayAlerts = False
wbNuevo.SaveAs _
Filename:="D:\Puntos.txt", _
FileFormat:=xlTextPrinter, _
CreateBackup:=False
wbNuevo.Close False
Application.DisplayAlerts = True
Set wbNuevo = Nothing
End Sub
Que es prácticamente lo mismo, solo que mantengo siempre el control al copiar, guardar y cerrar, pruébalas desde el libro donde donde este la hoja que quieres copiar...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas