Copiar Carpeta con Botón

Gustavo: sé que el titulo parece fácil (y repetitiva), pero el tema es éste: armé una sub carpeta-tipo (por el tema del peso de los libros), con libros de datos, historias clínicas, etc.
Lo que quiero es: en el UserForm de Ingreso de Pacientes (¿te acordás..?), con el botón de VALIDAR (el que copia los datos al Registro), o con otro (decime dónde y cómo), me haga una COPIA de la Sub Carpeta Tipo (todo está en la Gran Carpeta Pacientes), poniéndole el APELLIDO y NOMBRES del paciente ingresado como nombre de Sub-Carpeta. ¿Se entiende?
Gracias, Master, un abrazo.
Oscar

1 respuesta

Respuesta
1
No llego a entender/recordar todas las cosas que hay dando vueltas; lo que te digo es que deberías usar MkDir (para crear el directorio) y la función MoveFile del objeto Scripting. FileSystemObject
Correcto: encontré los dos Objetos (en el examinador de)... ¡¿Yyy..?! ¿Cómo los llamo para ver cómo trabajan..?
ej/ para ver como trabaja el move...
Function MoverArchivo(strOrigen As String, strDestino As String) As Long
'Salida: 0 todo bien o número de error
Dim fs As New Scripting.FileSystemObject
Err.Clear
On Error GoTo errorInesperado
With Application.ActiveWorkbook
fs.MoveFile .Path & "\" & strOrigen & ".JPG", .Path & "\" & strDestino & ".JPG"
End With
errorInesperado:
MoverArchivo = Err.Number
Set fs = Nothing
End Function
el MkDir es directo y no necesitas ningun objeto; simplemente
MkDir "nuevo"
Te generará un directorio llamado "nuevo" en el directorio que te encuentres...; en tu caso sería algo tipo
MkDir Apellido & "-" & Nombre
O algo parecido
Saludos y continúa a ver hasta donde llegamos
Gustavo
Gustavo: todo precioso, pero lo que necesito es que COPIE una Carpeta YA HECHA (sino, habría que hacerla por cada tipo), dándole el nombre que diste vos. Si no es posible (o muy complicado), agruparía todo en un Libro, y esa más o menos la sé (abro el master, le doy un nuevo nombre -ActiveWorkbook.Name-, y la guardo en una Carpeta diferente... ¡NO, porque pierdo el Master...!
¡¿Cómo hago?!
Deberías reemplazar el
Fs. FileMove
Por
Fs. Copy
De esta forma te copiaría el archivo en lugar de moverlo; la única salvedad es que deberían cambiar los "Path" del origen y el destino pero se seguirían llamando iguales
Saludos y confirma para que lado la seguimos
Gustavo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas