En C:BD/A están almacenados los archivos que se muestren en el tex1. En el
formulario, necesito un botón que lea el código del archivo del txt1, que lo
busque en C:BD/A, lo copie y lo pegue o descargue en el escritorio.
Agradezco su ayuda.
"sebastico" escribió:
He leído la ayuda de la función Dir y Apy CopyFile pero no encuentro como
hacer lo ahí indicado
El botón debe:
1. Inicio
2. Leer a la ruta indicada en el txt1
3. Buscar el archivo
4. Copiar el Archivo
5. Pegar el Archivo en el escritorio
6. Terminar
Este es un ejemplo de una ruta en el txt1 C:\BD\A\FR0021998RPT002.PDF
Me puedes orientar con el código que debe tener el botón.
Gracias de antemano
Gracias [por tu atenta respuesta.
He leído la ayuda pero no he podido incluir la función Dir y Apy CopyFile en
el código del botón (OnClick).
Según mi algoritmo el Botón debe:
1. Inicio
2. Leer el archivo desplegado en txt1 que tiene la Ruta
3, Ir a la Carpeta que tiene los archivos
4. Copiar al Archivo.
5. Pegar el archivo en el Escritorio
6. Salir.
Un ejemplo de la Ruta que muestra txt1 es:C:\BD\A\FR0021998RPT002.PDF
Me puedes orientar con el código.
Agradezco la ayuda
Private Declare Function CopyFile Lib "kernel32.dll" Alias "CopyFileA"
(ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal
bFailIfExists As Long) As Long
On Error GoTo error
Dim retval As Long, pru1 As String, pru2 As String
Dim Nfso As Object 'Nuevo sistema de archivos de objetos
Dim Cpta As Object 'Carpeta
Dim Arvos As Object 'Archivos
Dim Arvo As Object 'Archivo
Dim RutaArvos As String
RutaArvos = "C:\BD\A" 'ruta de la carpeta de archivos
Set Nfso = CreateObject("Scripting.FileSystemObject")
Set Cpta = Nfso.getFolder(RutaArvos)
Set Arvos = Cpta.Files 'listado de los archivos
For Each Arvo In Arvos
If Me.txtnombrecontrol = Left(Arvo.Name, InStr(Arvo.Name, ".") - 1) Then '
aqui trabajo con las funciones left y instr para quitar la extension del
archivo
Debug.Print Arvo.Name
pru1 = Arvo
pru2 = "C:\Users\kinito\Desktop\" & Arvo.Name 'esta es la ruta de mi
escritorio cambiar por la tuya
retval = CopyFile(pru1, pru2, 1)
End If
Next
Set Arvos = Nothing
Set Cpta = Nothing
Set Nfso = Nothing
Sal:
Exit Sub
error:
MsgBox Err.Description
Resume Sal
He tratado de copiar el código que envías en el evento OnClick de mi botón,
sin embargo, las primeras lineas del código (indicadas abajo) se colorean de
rojo y muestra:
Compile error: Expected: end of statement
Private Declare Function CopyFile Lib "kernel32.dll" Alias "CopyFileA"
(ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal
bFailIfExists As Long) As Long
¿Cómo puedo arreglar este error de Compilación?
Muchas gracias
Private Sub Comando2_Click()
el codigo (pero no la Apy)
End Sub
Option Compare Database
Option Explicit
Private Declare Function CopyFile Lib "kernel32.dll" Alias "CopyFileA"
(ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal
bFailIfExists As Long) As Long
Private Sub Comando5_Click()
End Sub
--
Joaquín Ruiz Garcia
"kinito11" escribió:
Finalmente he colocado el código, no da errores de compilación, sin embargo,
cuando doy click al botón se muestra un mensaje que dice: Path not Found.
Esto sin lugar a dudas es error de mi cosecha,
He copiado las dos rutas desde el explorador para evitar errores, pero, por
las dudas las incluyo en caso de que estén mal indicadas
RutaArvos = "C:\AB\A\Docs" 'ruta de la carpeta de archivos, en la Carpeta
Docs están los archivos
pru2 = "C:\Desktop\" & Arvo.Name 'esta es la ruta de mi escritorio
Por otra parten, revisando la Carpeta Docs, los archivos pdf no muestran la
extensión .pdf, he eliminado esta extensión de los archivos en la txtRuta
pero sigue mostrando Path not Found.
No se que he hecho mal. Me puedes orientar.
Salu2
Al no poder arreglar l problema de la Ruta, seguyi investigando y ahra
tenf=go este otro codigo que pero tambien me da error conla ruta.
Private Sub txtf_Click()
Dim strDeskTop As String
'get path location to desktop
strDeskTop = CreateObject("Shell.Application").Namespace(&H10&).self.Path
FileCopy "c:\AB\A\Docs\" & Me.Docs, strDeskTop & "\" & Me.Docs
End Sub
En este caso Docs es el txtbox que tiene el archivo con la extensión .pdf
A pesar de que he copiado la ruta con el explorador al dar click al botón
VBA muestra este mensaje:
Run Time Error 76 Path not found.
¿Hay alguna herramienta o programa para probar el código para verificar que
funciona? He visto un programa que se llama Raptor, pero, no veo como
adaptarle los códigos de vba.
Sal2
He hecho varias veces lo indicado:
1. Abro Access,
2. Abro el formulario
3. Pongo el formularo en Diseño
4. Doy click al boton
5.Abro las propiedades del boton
6. Abro el Código
7. Coloco puntero en primera linea de codigo
8. Doy click a F9 y linea se colorea de marrón y aparece un punto a la
izquierda de la linea de código, pero fuera de la pantalla de escribir.
9. Abro el formulario en View, doy click al botón descargar.
10. Por acción anterior la linea de código toma color amarillo.
11. Al presionar F5 se muestra de inmediato:Path not Found , que me impide
seguir probando el código.
Como estoy aprendiendo a programar no tengo idea de lo que pasa.
De nuevo muchas gracias pro tu amabilidad.