none
Abrie un archivo excel con una macro RRS feed

  • Pregunta

  • Señores

    Estoy empezando a usar V.B.
    Necesito hacer una macro para abrir archivos desde excel, que está en cierta carpeta.
    La dificultad es que este archivo va cambiando de nombre, p.e, archivo1, arvhivo 2, ...., según yo lo desee.
    Nose como hacerlo, intento ocupar workbooks.Open ("C:\archivo1.xls"), pero quiero que el argumento (archivo1.xls) cambie según lo necesite.

    Agradeceré sus respuestas.

    Muchas gracias
    sábado, 23 de mayo de 2009 20:06

Todas las respuestas

  • Yo ando en las mismas. Mientras encuentro la forma de hacer, en mi macro puse un objeto "Cuadro de texto" donde se puede escribir el nombre del archivo con todo el Path y luego lo uso.
    jueves, 26 de agosto de 2010 22:11
  • LO ENCONTRÉ !!!! Usar la función FileDialog. Transcribo a continuación el ejemplo que aparece en la ayuda de Excel respecto a este comando.

    Sub Main()
    
      'Declare a variable as a FileDialog object.
      Dim fd As FileDialog
    
      'Create a FileDialog object as a File Picker dialog box.
      Set fd = Application.FileDialog(msoFileDialogFilePicker)
    
      'Declare a variable to contain the path
      'of each selected item. Even though the path is aString,
      'the variable must be a Variant because For Each...Next
      'routines only work with Variants and Objects.
      Dim vrtSelectedItem As Variant
    
      'Use a With...End With block to reference the FileDialog object.
      With fd
    
        'Use the Show method to display the File Picker dialog box and return the user's action.
        'The user pressed the button.
        If .Show = -1 Then
    
          'Step through each string in the FileDialogSelectedItems collection.
          For Each vrtSelectedItem In .SelectedItems
    
            'vrtSelectedItem is aString that contains the path of each selected item.
            'You can use any file I/O functions that you want to work with this path.
            'This example displays the path in a message box.
            MsgBox "The path is: " & vrtSelectedItem
    
          Next vrtSelectedItem
        'The user pressed Cancel.
        Else
        End If
      End With
    
      'Set the object variable to Nothing.
      Set fd = Nothing
    
    End Sub
    • Propuesto como respuesta m_Danni martes, 30 de octubre de 2012 15:36
    jueves, 26 de agosto de 2010 23:04
  • Hola

    En vez de pasar una cadena de texto como argumento al método Open, utiliza una variable de tipo string al cual le pases el nombre y ruta de acceso del fichero.

    Para configurar el valor de dicha variable, tienes varios modos: usar un cuadro de diálogo, tomar el valor de un cuadro de texto, etc...depende de como lo quieras hacer.

    Salu2,


    José Mª Fueyo [MS MVP Access]
    viernes, 3 de septiembre de 2010 10:12
  • Mejor usar String y no cadenas de texto
    martes, 30 de octubre de 2012 15:37