Ayuda de VBA: Error de objeto requerido

Ayuda de VBA: Error de objeto requerido

Estoy intentando tomar datos de un montón de documentos de Word y agregarlos a una hoja de cálculo de Excel usando el siguiente código que encontré en este sitio. Sin embargo, después de editar el código para seleccionar documentos específicos a través de la ruta, sigo recibiendo errores de "objeto requerido" cuando intento ejecutar el código. ¿Podría explicar dónde estoy fallando y cómo solucionarlo? Lo siento, soy bastante nuevo en VBA y, como resultado, estoy bastante perdido.

    Sub Macro1()
   Dim xl As Object
   Set xl = CreateObject("excel.application")

   xl.Workbooks.Add
   xl.Visible = True

   'Here put your path where you have your documents to read:
   myPath = "C:\Users\arahmani\Desktop\march\"  'End with '\'
   myFile = Dir(myPath & "*.docx")
    
   xlRow = 1
   Do While myFile <> ""
      Documents.Open Filename:=myPath & myFile, ConfirmConversions:=False, _
         ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
         PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
         WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:=""

      xlCol = 0
      Dim t As ListObject
      For Each t In ActiveDocument.Tables
         For Each Row In t.Rows
            For Each c In r.Range.Cells
               myText = c
               myText = Replace(myText, Chr(13), "")
               myText = Replace(myText, Chr(7), "")
               xlCol = xlCol + 1
               xl.ActiveWorkbook.ActiveSheet.Cells(xlRow, xlCol) = myText

            Next c
            xlRow = xlRow + 1
            xlCol = 0
         Next Row
      Next t
      ActiveWindow.Close False
  

      myFile = Dir
   Loop

   xl.Visible = True
End Sub

Respuesta1

Es difícil estar seguro, pero como punto de partida

Dim t As ListObject

Debiera ser

Dim t As Table

Si se trata de Mac Office, es posible que tenga problemas incluso cuando intente realizar el CreateObject inicial.

Respuesta2

Objeto requerido (Error 424)ocurre porque:

Las referencias a propiedades y métodos a menudo requieren un calificador de objeto explícito.

Está intentando utilizar un documento de MS Word sin declararlo. Primero debe crear el objeto de aplicación de Word.

Set wrd = CreateObject("word.Application")

Luego úselo para abrir el documento.

wrd.Documents.Open Filename:=myPath & myFile

información relacionada