Alterar ruta en macro

3 envíos / 0 nuevos
Último envío
JoaoM
Imagen de JoaoM
Offline
última acción: Hace 2 horas 25 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntos
alta: 15/12/2011 - 23:46
Puntos: 2995
Alterar ruta en macro

Hola, felis dia del padre a todo aquel q lo sea.

Tengo una macro donde la ruta es esta

Direc = CreateObject("wscript.shell").specialfolders("desktop") & "\BACKUP\" Quiero esta ruta

Direc = CreateObject("wscript.shell").specialfolders("D:\Fundicion del Centro") & "\BACKUP\"

Fundicion del Centro ya existe en D:, lo que no existe es la BACKUP en Fundicion del Centro

Tal como está la ruta, en Fundicion del Centro, si no existe la sub BACKUP la crea, pero es que no doy con el objectivo y no veo que cree la Backup en Fundicion del Centro

Etiquetas: 

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 6 horas 13 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 10940
En España el día del padre se

En España el día del padre se celebra el 19 de Marzo, San José, pero en cualquier caso felicidades. (el día que me enteré que cada país celebra los días del padre y la madre en días diferentes sentí que se derrumbaba una pared en mi cerebro a través de la que se veía una nueva perspectiva) 

Sobre tu directorio.

eso de SpecialFolders es para carpetas especiales tipo "mis documentos" "descargas", "imágenes", etc

pero en tu caso ya conoces la ruta real D:\Fundicion del Centro\BACKUP\

así que puedes utilizar directamente tu ruta sin más historias

Direc ="D:\Fundicion del Centro\BACKUP\"

Sobre si existe o no la carpeta, yo he utilizado en alguna ocasión una función que es una joya. le puedes poner una ruta muy larga y si no existe va creando todos los directorios que falten. Aquí te la dejo como regalo del día del padre:

Function MyMkDir(sPath As String) As Boolean

' http://www.devhut.net/2011/09/15/vba-create-directory-structurecreate-multiple-directories/

' crea estructura de directorios de una vez

' sPath es la ruta completa, por ejemplo "C:\uno\dos\tres\cuatro"

On Error GoTo TrataError

    Dim iStart          As Integer

    Dim aDirs           As Variant

    Dim sCurDir         As String

    Dim i               As Integer

     If sPath <> "" Then

        aDirs = Split(sPath, "\")

        If Left(sPath, 2) = "\\" Then

            iStart = 3

        Else

            iStart = 1

        End If

        sCurDir = Left(sPath, InStr(iStart, sPath, "\"))

        For i = iStart To UBound(aDirs)

            sCurDir = sCurDir & aDirs(i) & "\"

            If Dir(sCurDir, vbDirectory) = vbNullString Then

               'si el directorio no existe, lo crea

                MkDir sCurDir

            End If

        Next i

    End If

    MyMkDir = True

Exit Function

TrataError:

   MyMkDir = False

   MensajeError Err, "Al crear directorio " & sPath

End Function




 

------
Ya sé Excel, pero necesito más.

JoaoM
Imagen de JoaoM
Offline
última acción: Hace 2 horas 25 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntos
alta: 15/12/2011 - 23:46
Puntos: 2995
En España el día del padre se

En España el día del padre se celebra el 19 de Marzo, San José,

Si Paco, eso es y siempre pregunto; ¿es que el dia del padre no es en marzo? 19/3/, soy europeu tambien (Português)

Pues aqui en Venezuela y creo que en otros paises es la 3 semana del mes Junio.

Cuanto a tu opcion voy a probar y luego digo algo