Como borro con una macro un archivo con extensión .txt
Hola necesito terminar una macro que borre un archivo con extensión .txt lo que hace mi macro es abrir el archivo extraer los datos los pega en un excel y sierra el archivo del que sustrajo lo datos pero me falta hacer que borre el archivo que abre...
Tengo una carpeta con varios archivos con extensión .txt que abre uno por uno pero para que brinque de el primero al segundo necesito que borrre el primero que abre.
Nota: la macro abre el archivo sin espeificarle el nombre y así también quiero que lo borre sin que sepa el nombre del archivo que borra.
Te dejo la macro para que la cheques. Gracias
Sub Macro4()
' Macro4 Macro
'
' Keyboard Shortcut: Ctrl+w
'
' Sub RepasarCarpeta()
Dim wb As Workbook
Dim strArchivoExcel As String
Dim strNombreCarpeta As String
Dim mivalor
'carpeta a repasar
strNombreCarpeta = "C:\Zeiss\Calypso\home\om\workarea\results\"
If VBA.Right(strNombreCarpeta, 1) <> Application.PathSeparator Then strNombreCarpeta = strNombreCarpeta & Application.PathSeparator
'determina si existe el archivo
On Error Resume Next
strArchivoExcel = Dir(strNombreCarpeta & "*.txt", vbArchive)
On Error GoTo 0
If strArchivoExcel <> "" Then
Set wb = Workbooks.Open(strNombreCarpeta & strArchivoExcel)
With wb
With .Sheets(1)
.Activate
Range("F2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("Produccion SIDI-RH Operacion 710-730 (MARZO 2011).xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
ActiveCell.Offset(0, -1).Range("A1").Select
ActiveCell.FormulaR1C1 = Time
ActiveCell.Offset(0, -4).Range("A1").Select
ActiveCell.FormulaR1C1 = Date
ActiveCell.Offset(0, -1).Range("A1").Select
ActiveWindow.ActivateNext
Range("B2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Produccion SIDI-RH Operacion 710-730 (MARZO 2011).xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveCell. Offset(1, 6).Range("A1"). Select
ActiveWindow.ActivateNext
ActiveWindow.Close
Windows("Produccion SIDI-RH Operacion 710-730 (MARZO 2011).xls").Activate
End With
' .Save
' .Close
End With
Else
MsgBox "No se pudo econtrar el archivo", vbCritical
End If
Set wb = Nothing
End Sub
Tengo una carpeta con varios archivos con extensión .txt que abre uno por uno pero para que brinque de el primero al segundo necesito que borrre el primero que abre.
Nota: la macro abre el archivo sin espeificarle el nombre y así también quiero que lo borre sin que sepa el nombre del archivo que borra.
Te dejo la macro para que la cheques. Gracias
Sub Macro4()
' Macro4 Macro
'
' Keyboard Shortcut: Ctrl+w
'
' Sub RepasarCarpeta()
Dim wb As Workbook
Dim strArchivoExcel As String
Dim strNombreCarpeta As String
Dim mivalor
'carpeta a repasar
strNombreCarpeta = "C:\Zeiss\Calypso\home\om\workarea\results\"
If VBA.Right(strNombreCarpeta, 1) <> Application.PathSeparator Then strNombreCarpeta = strNombreCarpeta & Application.PathSeparator
'determina si existe el archivo
On Error Resume Next
strArchivoExcel = Dir(strNombreCarpeta & "*.txt", vbArchive)
On Error GoTo 0
If strArchivoExcel <> "" Then
Set wb = Workbooks.Open(strNombreCarpeta & strArchivoExcel)
With wb
With .Sheets(1)
.Activate
Range("F2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("Produccion SIDI-RH Operacion 710-730 (MARZO 2011).xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
ActiveCell.Offset(0, -1).Range("A1").Select
ActiveCell.FormulaR1C1 = Time
ActiveCell.Offset(0, -4).Range("A1").Select
ActiveCell.FormulaR1C1 = Date
ActiveCell.Offset(0, -1).Range("A1").Select
ActiveWindow.ActivateNext
Range("B2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Produccion SIDI-RH Operacion 710-730 (MARZO 2011).xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveCell. Offset(1, 6).Range("A1"). Select
ActiveWindow.ActivateNext
ActiveWindow.Close
Windows("Produccion SIDI-RH Operacion 710-730 (MARZO 2011).xls").Activate
End With
' .Save
' .Close
End With
Else
MsgBox "No se pudo econtrar el archivo", vbCritical
End If
Set wb = Nothing
End Sub
1 respuesta
Respuesta de Roberto Alvarado
1