从多个文件复制单元格J1并粘贴到主文件的列中

泰勒

我目前有这段代码,它将从一个文件夹中获取文件,每个文件一个打开,将其名称打印到我的“主文件”的第一栏中,然后关闭它并以这种方式遍历整个文件夹。

在打开的每个文件中,单元格J1中有一些信息我想复制并粘贴到“主文件”的第3列中。代码部分当前返回错误(对象不支持此属性或方法,但我无法确定它所指的是哪一行),并导致仅打开一个文件后程序停止。

有任何想法吗?

完整代码:

Sub LoopThroughDirectory()

    Dim objFSO As Object
    Dim objFolder As Object
    Dim objFile As Object
    Dim MyFolder As String
    Dim Sht As Worksheet
    Dim i As Integer

    MyFolder = "C:\Users\trembos\Documents\TDS\progress\"

Set Sht = ActiveSheet

    'create an instance of the FileSystemObject
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    'get the folder object
    Set objFolder = objFSO.GetFolder(MyFolder)
    i = 1
    'loop through directory file and print names
    For Each objFile In objFolder.Files

        If LCase(Right(objFile.Name, 3)) <> "xls" And LCase(Left(Right(objFile.Name, 4), 3)) <> "xls" Then
        Else
            'print file name
            Sht.Cells(i + 1, 1) = objFile.Name
            i = i + 1
            Workbooks.Open Filename:=MyFolder & objFile.Name
        End If
        'Get TDS name of open file
        Range("J1").Select
        Selection.Copy
        Windows("masterfile.xlsm").Activate
        Range("C2").Select
        ActiveSheet.Paste
        objFile.Activate
        ActiveWorkbook.Close
    Next objFile


End Sub

弄乱程序的部分代码:

'Get TDS name of open file
Range("J1").Select
Selection.Copy
Windows("masterfile.xlsm").Activate
Range("C2").Select
ActiveSheet.Paste
objFile.Activate
自由人

objFile.Activate 是你的问题。

objFile不是工作簿变量,而是从中分配了路径\文件名objFolder.Files

使用以下内容:

Dim NewWorkbook as Workbook
set NewWorkbook = Workbooks.Open Filename:=MyFolder & objFile.Name
.
.
.
NewWorkbook.Activate
ActiveWorkbook.Close

现在,而不是最后两行,因为您有一个引用打开的工作簿的变量,所以您可以用以下一行替换这两行:

NewWorkbook.Close

阅读此链接,以获取有关其他消除Activate等方法的良好建议Select,以使您的代码更干净,更具可读性,并且由于将焦点集中在错误的地方并且易于维护,因此更不会出现错误。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从多个Excel文件复制单元格并将其粘贴到主文件中

来自分类Dev

复制单元格数据并粘贴到变量中(pasteSpecial)

来自分类Dev

Excel VBA宏复制单元格并粘贴到另一个

来自分类Dev

复制单元格背景色并将其粘贴到另一张纸的相应单元格中

来自分类Dev

双击复制单元格,然后自动粘贴到另一张纸上的其他单元格中

来自分类Dev

VBA-复制单元格并将其粘贴到另一张纸上的空白单元格中

来自分类Dev

复制单元格背景色并将其粘贴到另一张纸的相应单元格中

来自分类Dev

Excel将数据复制并粘贴到多个单元格中

来自分类Dev

复制范围 Sheet1 粘贴到活动单元格表 2 中

来自分类Dev

用Excel文件中的图像复制单元格范围

来自分类Dev

Excel-VBA循环-从单元格复制公式,粘贴到单元格中,然后复制特殊粘贴

来自分类Dev

如何使用输入框复制单元格范围并粘贴到新创建的工作表

来自分类Dev

VBA-将多个工作表中的一个单元格复制/粘贴到主表

来自分类Dev

在Excel中,如何将多个单元格复制/粘贴到另一个单元格的编辑中?

来自分类Dev

根据条件复制单元格并通过覆盖其他工作表中的单元格进行粘贴

来自分类Dev

复制列中的特定单元格并粘贴到另一个工作表中

来自分类Dev

将数据从不同的工作簿复制并粘贴到多个单元格

来自分类Dev

Excel-复制选定的单元格并粘贴到另一个工作表中列的末尾

来自分类Dev

如果列中的单元格有数据,则复制并粘贴到同一行中的其他单元格

来自分类Dev

复制并粘贴多个单元格

来自分类Dev

复制并粘贴多个单元格

来自分类Dev

将图表中的对数趋势线方程复制并粘贴到单元格中

来自分类Dev

从多张纸中复制彩色单元格并粘贴到一张纸中

来自分类Dev

Google表格复制一个单元格并粘贴到另一个单元格中

来自分类Dev

复制Excel单元格并粘贴到Word中作为图像

来自分类Dev

从Excell复制后无法将所有文本粘贴到LibreOffice Calc的单元格中

来自分类Dev

如何基于下拉菜单将表数据复制/粘贴到不同的单元格中?

来自分类Dev

VBA:将单元格复制并粘贴到电子邮件中,而不会丢失格式

来自分类Dev

复制特定单元格并粘贴到另一个工作表中

Related 相关文章

  1. 1

    从多个Excel文件复制单元格并将其粘贴到主文件中

  2. 2

    复制单元格数据并粘贴到变量中(pasteSpecial)

  3. 3

    Excel VBA宏复制单元格并粘贴到另一个

  4. 4

    复制单元格背景色并将其粘贴到另一张纸的相应单元格中

  5. 5

    双击复制单元格,然后自动粘贴到另一张纸上的其他单元格中

  6. 6

    VBA-复制单元格并将其粘贴到另一张纸上的空白单元格中

  7. 7

    复制单元格背景色并将其粘贴到另一张纸的相应单元格中

  8. 8

    Excel将数据复制并粘贴到多个单元格中

  9. 9

    复制范围 Sheet1 粘贴到活动单元格表 2 中

  10. 10

    用Excel文件中的图像复制单元格范围

  11. 11

    Excel-VBA循环-从单元格复制公式,粘贴到单元格中,然后复制特殊粘贴

  12. 12

    如何使用输入框复制单元格范围并粘贴到新创建的工作表

  13. 13

    VBA-将多个工作表中的一个单元格复制/粘贴到主表

  14. 14

    在Excel中,如何将多个单元格复制/粘贴到另一个单元格的编辑中?

  15. 15

    根据条件复制单元格并通过覆盖其他工作表中的单元格进行粘贴

  16. 16

    复制列中的特定单元格并粘贴到另一个工作表中

  17. 17

    将数据从不同的工作簿复制并粘贴到多个单元格

  18. 18

    Excel-复制选定的单元格并粘贴到另一个工作表中列的末尾

  19. 19

    如果列中的单元格有数据,则复制并粘贴到同一行中的其他单元格

  20. 20

    复制并粘贴多个单元格

  21. 21

    复制并粘贴多个单元格

  22. 22

    将图表中的对数趋势线方程复制并粘贴到单元格中

  23. 23

    从多张纸中复制彩色单元格并粘贴到一张纸中

  24. 24

    Google表格复制一个单元格并粘贴到另一个单元格中

  25. 25

    复制Excel单元格并粘贴到Word中作为图像

  26. 26

    从Excell复制后无法将所有文本粘贴到LibreOffice Calc的单元格中

  27. 27

    如何基于下拉菜单将表数据复制/粘贴到不同的单元格中?

  28. 28

    VBA:将单元格复制并粘贴到电子邮件中,而不会丢失格式

  29. 29

    复制特定单元格并粘贴到另一个工作表中

热门标签

归档