VBA - Recuperar datos de un libro cerrado

andrea -  
 andrea -
Hola a todos,

Estoy comenzando en VBA y tengo el siguiente problema:

Tengo un archivo A y un archivo fuente. Quiero extraer datos del archivo fuente para mostrarlos en el archivo A. Así que he establecido un enlace entre los dos archivos. Sin embargo, era necesario abrir el archivo fuente para que el archivo A se actualizara.

Así que escribí el siguiente código, que logré obtener con la ayuda de un usuario:

Sub ImportarDatosSinAbrir()

'Declaración de variable de ruta y nombre como texto
Dim RutaFuente As String
Dim ArchivoFuente As String

'Definición del contenido de la variable
RutaFuente = "I:\G_AMEC\ETAT AMEC2\Estado AMEC 2 \" '
ArchivoFuente = "Estado AMEC 2 (versión 2).xlsm"

'Creación de un rango de recuperación de datos a partir del archivo fuente cerrado, de la hoja de cálculos y del rango de celdas deseado
ThisWorkbook.Names.Add "rango", _
RefersTo:="='" & RutaFuente & "[" & ArchivoFuente & "]calculs'!H9"

Con Worksheets("RECAP") ' hoja del archivo A

Worksheets("RECAP").Range("F49").Value = "=rango"
End With

End Sub

Pero este código muestra 0 y no el valor deseado... ¿Tienen alguna idea?

Gracias de antemano

2 respuestas

  1. andrea
     
    Patrice33740, ¡genial, funciona! ¡Muchas gracias!

    Sin embargo, cuando ejecuto el programa, me vuelve a pedir que actualice los valores: se abre un cuadro de diálogo y tengo que seleccionar el archivo fuente. ¿Sabes cómo evitar ese cuadro de diálogo?

    ¡Gracias de nuevo!
    5
    1. Patrice33740 Mensajes publicados 8400 Fecha de registro   Estado Miembro Última intervención   1 784
       
      Re,

      Si el cuadro de diálogo aparece es porque o bien la Ruta de origen o el Archivo de origen no son correctos o porque no hay una hoja "cálculos" en el archivo de origen.
      0
    2. andrea
       
      ¡Está bien, gracias por tu respuesta! Voy a intentar ver qué está mal.
      0