Nombre del archivo excel desde el VB del macro

Necesito saber el nombre del archivo excel desde el código de visual basic de la macro
creo que tiene algo que ver con el workbook pero no lo sé a ciencia cierta.
No me sirve poner active workbook porque necesito el nombre.

1 respuesta

Respuesta
1
No especificas en donde lo necesitas, o para que, un ejm seria así:
Msgbox ThisWorkBook.Name
Por ejemplo:
Si me dan un código en mi trabajo de una macro de VB, necesito saber en qué archivo lo está ejecutando, el Active tanto para el work como para el sheet sólo me vale si tengo un archivo sobre el que trabajo que es el que tengo abierto etc etc etc.
La cuestión sería pues, cómo, leyendo un código de una macro, saber sobre qué archivo actúa, no sé si me explico
Gracias
Pues si la macro no hace referencia a algún libro en particular, entonces se ejecutara en el libro que este activo. Para saber en que libro lo ejecutan no hay otro modo más que preguntando a quien te de ese código de macro.
¿Y si por ejemplo necesito que una macro se ejecute en 80 archivos excel cómo puedo hacer el código?
Cómo selecciono un libro entero
Yo normalmente para los sheet creaba otro procedimiento en el que seleccionaba cada sheet y ejecutaba otro procedimiento, pero no sé si con los libros se puede hacer parecido.
Por ejemplo, yo hacía
sheet("inactivos")
proc1()
sheet("activos")
proc1()
Etc, ¿entonces no hay ninguna manera de seleccionar el libro antes de moverse por sus hojas?
Gracias
Si se puede:
WorkBooks.Open "Ruta\nombre"
Por ejm:
Sub Libros()
Dim Path As String
Path = "C:\Documents and Settings\JerryEagle\Mis documentos\"
Application.ScreenUpdating = False
With CreateObject("Scripting.FileSystemObject")
    With .GetFolder(Path)
        For Each F In .Files
            If F.Name Like "*.xls*" Then
                WorkBooks.Open  F.Name
                'aqui pones la macro q quieras ejecutar en cada libro
            End If
        Next
    End With
End With
Application.ScreenUpdating = True
MsgBox "Terminado"
End Sub
Checalo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas