当前位置: 首页 > 知识库问答 >
问题:

将数据从txt文件复制/粘贴到新工作簿的宏正在粘贴到个人工作簿中

侯兴为
2023-03-14

标题或多或少概括了它。我试图使一个简单的宏打开,然后复制/粘贴数据从txt文件到一个新打开的工作簿。我有什么工作,但它粘贴到个人工作簿,在打开一个新的“book1”之前。我可以让它粘贴到Book1,但我只想让它粘贴到打开的第一个工作簿中,以防以后我想在同一个文件中添加更多数据。我对此相当陌生,所以任何帮助都将不胜感激!!

Public Sub ImportFile()
    Dim TextFile As Workbook
    Dim OpenFiles() As Variant
    Dim x As Integer
    
    OpenFiles = Application.GetOpenFilename(Title:="Select File(s) to Import", MultiSelect:=True)
    
    For x = 1 To Application.CountA(OpenFiles)
    
    Set TextFile = Workbooks.Open(OpenFiles(x))
    
    TextFile.Sheets(1).Range("A1").CurrentRegion.Copy
    Workbooks(1).Activate
    Workbooks(1).Worksheets.Add
    ActiveSheet.Paste
    
    TextFile.Close
    
    Next x
End Sub

共有1个答案

韦飞尘
2023-03-14

它将创建一个新的工作簿。它将创建名为“new1,New2”等的附加工作表,希望它能帮助您的需求

Public Sub ImportFile()
    Dim TextFile As Workbook
    Dim OpenFiles() As Variant
    Dim x As Integer
    Dim wb As Workbook
    Dim ws As Worksheet
    
    Set wb = Workbooks.Add
    
     OpenFiles = Application.GetOpenFilename(Title:="Select File(s) to Import", MultiSelect:=True)
    
    For x = 1 To Application.CountA(OpenFiles)
    
    i = 1
    
    Set ws = wb.Sheets.Add
 
    Set TextFile = Workbooks.Open(OpenFiles(x))
    
    TextFile.Sheets(1).Range("A1").CurrentRegion.Copy
    
    ws.Paste
    
    Application.CutCopyMode = False
    Application.CutCopyMode = True
    
    ws.Name = "New" & i
    i = i + 1
    TextFile.Close       
    
    Next x
End Sub
 类似资料:
  • 我写了下面的代码,并不断地看到。我试图克服这个问题,但似乎没有任何效果。我正试图从一个工作簿复制整个工作表,并将其粘贴到另一个工作簿中:

  • 我需要从一个工作簿复制棕褐色单元格并粘贴到另一个工作簿中。并且只需要在Excel中获取特定的单元格值。我实现了这一点,但只能粘贴到同一工作簿中的另一个工作表中。你能帮助我在粘贴数据到另一个工作簿上的一个特定的工作表,也应该粘贴的值在第二行,(即从第二行开始),因为第一行有标题在它。 源表标题: 项目阶段状态st Dt结束Dt预资源备注备注 Dest表标题: 现有代码:

  • 这应该真的很简单,但我一直在拖网论坛和答案数小时来寻找答案,但没有运气,所以我(不情愿地)创造了一个我自己的问题。 我要做的只是简单地创建一个新工作簿,并将另一个工作簿的范围粘贴到该工作簿中。听起来很简单..? 我原来的工作簿,让我们叫Book1。我试图创建一个新的工作簿,Book2,我将把单元格A1:B10的值复制到其中。 以下是我代码的一个版本(从第一册打开开始): 这会给出一个“Range类

  • 我有一段巧妙的代码,它根据指定单元格中的特定文本输入隐藏/隐藏表。在Book1中的Sheet1中(比方说),如果我改变单元格A1中的文本(比方说文本是苹果、橘子等),我会在同一本书中的sheet2上得到某些表格(让我们称之为答题卡)。 现在,在另一本书中,我有一个表,其中包含所有可能的文本值(Apple,oranges,等等)。我想写一个代码,首先通过这个表,使值在book1.sheet1(“sh

  • 我和几个同事每两周从导出的数据中格式化报告。我想创建一个宏,我可以分发给每个人,他们所做的就是在他们导出到本地机器的数据上尽可能少的步骤运行宏。我创建了一个宏,但我无法让它工作,因为目标工作簿(thisworkbook.activeSheet)是我的“personal.xlsb”(位于“xlstart”文件夹中并承载宏),而不是它需要的工作簿(每个人每周都会更改)。主要问题是,每当我运行宏时,来自

  • 作为预先警告,我是使用VBA的新手。 我已经拼凑了以下代码来执行以下操作:1。找到工作表“intrastat”2。复制此工作表3的使用范围。作为值粘贴到新工作簿4中。重新格式化B5栏中的日期。将工作簿保存在原始工作簿的位置。 然而,只有当我将宏保存在原始工作簿中时,这才起作用。我需要的是能够有宏保存在一个不同的工作簿和运行宏,我需要能够选择“原始”工作簿从一个文件位置在我的硬盘。 有什么想法吗?