Hola gracias al que amablemente pueda ayudarme, tengo la macro COLEGA
necesito que en lugar de abrir el archivo NOTA.DBF en la unidad de
disquette( A:\)
busque la ubicacion de ese archivo sea en los discos duros o en algun medio
de almacenamiento externo (llave maya)
y lo abra.
es decir en lugar de abrirlo del disquette , que primero busque donde esta
antes de abrirlo, pues ese archivo puede estar en el disquette , en el disco
duro u en una llave maya.
gracias.
Private Sub COLEGA()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Workbooks.Open Filename:="A:\NOTA.DBF"
Range("A1:K5000").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
ThisWorkbook.Sheets("REGISTRO").Range("P165:V166"), CopyToRange:= _
Range("N1"), Unique:=False
ThisWorkbook.Activate
Sheets("CONCENTRADO").Select
Range("F11:F52").Select
Selection.Copy
Windows("NOTA.DBF").Activate
Range("R2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ThisWorkbook.Activate
Application.CutCopyMode = False
Range("A62").Select
Selection.Copy
Windows("NOTA.DBF").Activate
Range("Z1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ThisWorkbook.Activate
Application.CutCopyMode = False
Windows("NOTA.DBF").Activate
Range("M2").Select
With Worksheets("NOTA")
If .[R2] <> "" Then
For Each celda In .Range("R2:R" & .[r65536].End(xlUp).Row)
If celda <> "" Then
celda.Copy
ActiveCell.PasteSpecial xlPasteAll
ActiveCell.Offset(1, 0).Activate
End If
Next
End If
End With
Range("M2").Select
Application.CutCopyMode = False
Windows("NOTA.DBF").Activate
With Range("a1:k5000")
.AdvancedFilter _
Action:=xlFilterInPlace, _
CriteriaRange:=ThisWorkbook.Worksheets("registro").Range("p165:v166"),
_
Unique:=True
With .SpecialCells(xlCellTypeVisible)
On Error GoTo Ninguno
IIf(.Areas(1).Rows.Count > 1, _
.Areas(1).Cells(2, [Z1] + 2), .Areas(2).Cells(1, [Z1] + 2)).Select
End With
End With
ActiveSheet.ShowAllData
With Worksheets("nota")
.Range(.Range("M2"), .Range("M65536").End(xlUp)).Copy ActiveCell
End With
Ninguno:
Windows("NOTA.DBF").Activate
Range("O1:O38").Select
Selection.ClearContents
ActiveWorkbook.Save
ActiveWindow.Close
ThisWorkbook.Activate
Sheets("CONCENTRADO").Select
Range("D11").Select
Application.DisplayAlerts = True
MsgBox "LAS NOTAS HAN SIDO PASADAS AL DISQUETTE CON EXITO!"
End Sub
Leer las respuestas