首页 文章

从一个工作簿复制并粘贴到文件夹中的多个CSV工作簿

提问于
浏览
0

我正在尝试从空白工作簿创建一个宏,另一个已打开的工作簿 Headers 为“数据进程提取工作簿”,它将打开指定文件夹中的所有.csv文件并运行宏 . 我遇到的问题是宏的一部分是从“数据进程提取工作簿”中复制大量数据并将其粘贴到宏将运行的.csv文件中 . 我遇到的问题是从将数据复制回宏运行的文件中 . 它似乎与“Windows(Mypath和MyFile).Activate”部分有关 . 我已经尝试了几种不同的方法来引用当前打开的.CSV文件,但似乎无法弄明白 . 任何帮助,将不胜感激 .

Sub OpenFiles()
    Dim wbk As Workbook
    Dim MyPath As String
    Dim MyFile As String

    'Open Files

    MyPath = "C:generic folder"
    MyFile = Dir(MyPath & "*.csv")
    Do While MyFile <> ""
        Set wkb = Workbooks.Open(MyPath & MyFile)
        'Run Macro on CSV files
        'Copy data from template workbook
        Windows("Data process-extract workbook.xlsb").Activate
        Application.Goto Reference:="R1C1:R4000C1"
        Selection.Copy

        'need to figure out how to paste into whatever .csv workbook is currently having the macro run in'
        Windows("=wkb").Activate
        Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
            , SkipBlanks:=False, Transpose:=False
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False

        ActiveWorkbook.Close True

        MyFile = Dir

    Loop
End Sub

谢谢

1 回答

  • 0

    最简单的解决方案是使用您指定的工作簿对象作为CSV文件的引用,即更改

    Windows("=wkb").Activate
    

    wkb.Activate
    

相关问题