首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VBA不将值粘贴到新工作簿工作表中

VBA(Visual Basic for Applications)是一种用于自动化任务和宏编程的编程语言,广泛应用于Microsoft Office套件中的各种应用程序,如Excel、Word和PowerPoint等。它允许用户通过编写脚本来自动执行重复性任务,提高工作效率。

在VBA中,将值粘贴到新工作簿工作表中可以通过以下步骤实现:

  1. 创建一个新的工作簿: 使用Workbooks.Add方法创建一个新的工作簿对象。
  2. 选择要复制的源数据: 使用Range对象选择要复制的数据范围。例如,可以使用Range("A1:B10")选择A1到B10的单元格范围。
  3. 复制源数据: 使用Copy方法将选择的数据复制到剪贴板。例如,可以使用Selection.Copy将选择的数据复制到剪贴板。
  4. 在新工作簿中选择目标位置: 使用Range对象选择新工作簿中的目标位置。例如,可以使用Range("A1")选择新工作簿中的A1单元格。
  5. 将数据粘贴到目标位置: 使用PasteSpecial方法将剪贴板中的数据粘贴到目标位置。例如,可以使用Selection.PasteSpecial将剪贴板中的数据粘贴到选择的位置。

完整的VBA代码示例:

代码语言:txt
复制
Sub PasteValuesToNewWorkbook()
    Dim newWorkbook As Workbook
    Dim sourceRange As Range
    Dim targetRange As Range
    
    ' 创建新的工作簿
    Set newWorkbook = Workbooks.Add
    
    ' 选择要复制的源数据
    Set sourceRange = ThisWorkbook.Sheets("Sheet1").Range("A1:B10")
    
    ' 复制源数据到剪贴板
    sourceRange.Copy
    
    ' 在新工作簿中选择目标位置
    Set targetRange = newWorkbook.Sheets(1).Range("A1")
    
    ' 将数据粘贴到目标位置
    targetRange.PasteSpecial Paste:=xlPasteValues
    
    ' 清除剪贴板内容
    Application.CutCopyMode = False
    
    ' 保存新工作簿
    newWorkbook.SaveAs "C:\Path\To\NewWorkbook.xlsx"
    
    ' 关闭新工作簿
    newWorkbook.Close
End Sub

上述代码示例中,我们首先创建了一个新的工作簿对象newWorkbook,然后选择要复制的源数据范围sourceRange,并将其复制到剪贴板。接下来,我们选择新工作簿中的目标位置targetRange,并将剪贴板中的数据粘贴到目标位置。最后,我们清除剪贴板内容,保存并关闭新工作簿。

腾讯云提供了一系列云计算相关的产品和服务,其中包括云服务器、云数据库、云存储等。您可以通过访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于这些产品的详细信息和使用指南。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

VBA实例一、工作簿拆分成多个工作簿

大家好,本节主要介绍,通过VBA程序,将单个工作簿的多个工作,按拆分成多个独立工作簿。...效 果 演 示 一个工作簿中有多个工作,将每个工作拆分成独立的工作簿,生成的工作簿名称为原工作名称,保存至原文件路径下,演示效果如下: V B A 代 码 思路是通过for each循环,将该工作簿的每个表格对象赋值给...sht变量,在循环中复制sht变量,将其另存为工作簿文件。...保存至原工作簿的路径下,工作簿的名称为原工作的名称,另存完毕后关闭,最后msgbox弹窗提示完成。 为了提高代码效率,关闭屏幕更新。...代码如下: Sub 拆分工作() '定义变量并赋值 Dim Sht As Worksheet Dim MyBook As Workbook Set MyBook = ThisWorkbook '关闭屏幕更新

3.1K30

VBA代码:拆分工作簿示例——将工作簿的每个工作保存为单独的工作簿

标签:VBA 有时候,我们想将工作簿的每个工作都保存为一个单独的工作簿。 你可以使用下面的操作逐个保存工作: 1.在工作标签单击右键。 2.选取“移动或复制…”命令。...3.选择“(新工作簿)”。 4.保存该工作簿。 图1 这样,有多少工作,你就要操作上面的步骤多少次。 然而,如果存在很多个工作簿,这样的重复工作使用VBA是最合适的。...msoFileDialogFolderPicker) .InitialFileName =Application.DefaultFilePath & "\" .Title = "选择保存工作的位置...Next wks Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub 只需在要拆分的工作簿运行上述代码...,就可将该工作簿的所有工作全部保存为单独的工作簿

3.8K11

Excel-VBA复制工作到新工作簿方法

工作我们常常会在一个工作簿的一个工作输入数据,再另存为一个工作簿。 如:在文件“自动工具.xlsx”中有一个工作为“模板”。...我想在“模板”工作输入数据,再另存为一个的文件为“小龙女.xlsx” 【知识点】 下面是本个收藏的代码,三种方法,以备用 【代码】 '方法一:复制工作另存为工作簿 Sub copySaveAs...Filename:=ThisWorkbook.Path & "\小龙女.xlsx" ActiveWorkbook.Close SaveChanges:=True End Sub '方法二:复制工作工作...,写入数据,再移动工作另存为工作簿 Sub MoveSaveAs() wsh_num = Worksheets.Count Worksheets("模板").Copy After:...,再复制工作到新工作簿 Sub AddCopySaveAs() Path = ThisWorkbook.Path & "\" Set newwb = Workbooks.Add

9.9K40

VBA: 将多个工作簿的第一张工作合并到一个工作簿

文章背景: 在工作,有时需要将多个工作簿进行合并,比如将多份原始数据附在报告之后。...一般的操作方法是打开两个工作簿(目标工作簿和待转移的工作簿),然后选中需要移动的工作,右键单击以后选择“移动或复制”。接下来在的对话框里面进行设置。 这种方法适合在移动少量工作的时候使用。...如果有很多的工作簿,都需要进行移动的话,一个一个打开然后再操作比较费时费力。这时就可以使用VBA来批量进行操作。...在目标工作簿内,插入一个模块,然后导入如下的代码: Option Explicit Sub MergeWorkbook() '将多个工作簿的第一张工作合并到目标工作簿...转移前: 转移后: 参考资料: [1] 如何使用Excel VBA将多个工作簿的全部工作合并到一个工作簿(https://zhuanlan.zhihu.com/p/76786888)

5.4K11

自动合并工作簿工作数据

合并多表数据是工作中常见的情形。本文介绍一种在Excel及Power BI不使用任何公式,快速合并一个工作簿多个工作的方法。...下图是我们的数据源,某工作簿中有三张工作,分别是不同店铺的产品数量。我们需要做的是对这三张进行合并,并且后期数据更新,合并结果可以自动更新。...为了避免错误,我们可以将 变更第一列名称这一步骤代码 Table.RenameColumns(提升的标题,{{"店铺甲", "店铺"}}) 的“店铺甲”变更为通用的Table.ColumnNames(...在Power BI操作思路雷同,只是路径略微不同: 以后工作内数据变更,甚至工作增加,所有数据都可以自动合并进来。...其他相关文章: 合并多个txt文件 https://zhuanlan.zhihu.com/p/58162155 合并多个工作簿文件 https://zhuanlan.zhihu.com/p/33242802

1.5K40

yhd-VBA从一个工作簿的某工作查找符合条件的数据插入到另一个工作簿的某工作

今天把学习的源文件共享了出来,供大家学习使用 上次想到要学习这个 结合网友也提出意见,做一个,如果有用,请下载或复制代码使用 【问题】我们在工作中有时要在某个文件(工作簿查找一些数据,提取出来...想要做好了以后同样的工作就方便了 【想法】 在一个程序主控文件 设定:数据源文件(要在那里查找的工作簿) 设定:目标文件(要保存起来的那个文件) 输入你要查找的数据:如:含有:杨过,郭靖的数据。...要复制整行出来 主控文件设定如图 数据源文件有两个工作 查找到"郭靖"的数据保存到目标文件的【射雕英雄传】工作 查找到"杨过"的数据保存到目标文件的【第一个】工作 【代码】 Sub...从一个工作簿的某工作查找符合条件的数据插入到另一个工作簿的某工作() Dim outFile As String, inFile As String Dim outWb As...则没有找到匹配的 MsgBox ("一个也没找到") End If '==end=工作内部

5.1K22

隐藏工作簿中所有工作的行列标题,VBA一次搞定

标签:VBA 有时候,我们不需要看到工作的行列标题,如下图1所示。 图1 此时,可以修改Excel设置来实现。...单击“文件——选项”,在“Excel选项”对话框,单击左侧的“高级”选项卡,在“此工作的显示选项”取消选取“显示行和列标题”前的勾选,如下图2所示。...图2 可以看出,这个设置只对指定的工作有效,如果要隐藏工作簿中所有工作的行列标题,则要逐个选择工作,并取消该选项的选择。 如果工作簿中有很多工作,这样的重复操作就有点浪费时间了。...下面的代码隐藏工作簿除指定工作外的所有工作的行列标题: Sub HideHeadings() Dim wks As Worksheet Application.ScreenUpdating...= False '遍历工作簿工作 For Each wks In ThisWorkbook.Worksheets '名为"示例"的工作除外 '你可以修改为自己的工作

1.8K20

VBA技巧:在不保护工作簿的情况下防止删除工作

标签:VBA 下面介绍一个使用少量VBA代码实现的简单实用的小技巧。 通常情况下,我们执行“保护工作簿”命令后,此时删除工作的命令变成灰色,用户就不能轻易地删除工作了。...然而,这样也不能进行插入、移动或复制工作的操作了。 如果想要在不保护工作簿的情况下防止用户删除工作,而且允许用户插入工作并对其进行重命名,也允许用户移动或复制工作,有没有什么好的方法实现?...在工作簿的ThisWorkbook模块粘贴或输入下面的代码: Option Explicit Private Sub Workbook_SheetDeactivate(ByVal Sh As Object..." End Sub Sub RemoveProtection() '撤销保护工作簿 ThisWorkbook.Unprotect End Sub 此时,用户再要删除该工作簿工作,就会弹出...的警告信息(如下图1所示),但用户仍可以在该工作簿中进行添加工作、移动或复制工作、对工作重命名等操作。 图1

1.8K30

快速汇总多个工作簿工作的数据(Excel工具推荐)

有时候我们会遇到这种问题: 很多数据散落在很多工作或者工作簿,由于某项工作我们需要将这些数据做个汇总。...可以看到 1.所有工作簿的所有工作都显示在了左侧的列表里。这个时候我们可以选择部分工作簿/工作进行汇总,也可以全选,看需求而定。此处我们全选。...2.右侧列出了涉及工作的所有字段,你可以只选你需要的字段进行显示。...3.可以看到有“插入工作簿名”,“插入工作名”按钮,这两个按钮的意思是是否需要将工作簿/工作的名称作为数据透视的字段,此处我们假设想看各月的汇总情况,因此需要点击“插入工作簿名”。...三、命令文本的粘贴 打开工具的数据透视。点击更改数据源-链接属性,弹出以下对话框 将刚才复制的代码粘贴到“命令文本“,点“确定“。

10.7K10

Excel应用实践21:实现工作簿所有工作的多值替换

学习Excel技术,关注微信公众号: excelperfect 有两个工作簿,一个工作簿存放着要查找并替换成的文本,如下图1所示,列A是要查找的文本,将列A查找到的文本替换成列B相应的文本,例如...图1 另一个工作簿是我们要替换其文本的工作簿,我们要在该工作簿所有工作查找上图1列A并将找到的文本替成列B的文本,如图2所示。 ? 图2 要实现的结果如下图3所示。 ?...图3 使用下面的VBA代码来完成上述任务。...Set ReplaceList = ReplaceListWB.Worksheets(1). _ Cells(1,1).CurrentRegion '遍历要替换文本的工作簿中所有工作...选择工作簿文件后,将根据上图1工作的文本自动对该工作簿的文本进行查找和替换操作。 ? 图4 代码的图片版如下: ?

2.9K10

VBA实用小程序61: 在文件夹内所有文件运行宏在工作簿所有工作运行宏

学习Excel技术,关注微信公众号: excelperfect 在文件夹中所有文件上运行宏,或者在Excel工作簿中所有工作上运行宏,这可能是一种非常好的Excel自动化方案。...例如处理类似的数据工作簿文件并想要提取数据或转换该工作簿。下面给出了适用这种情况的一些VBA程序,这些程序代码整理自analystcave.com,供有兴趣的朋友参考。..." End Sub 这段代码完成下列操作: 1.在当前工作簿路径打开“选择文件”对话框,要求选择一个用于存储所有文件的文件夹。..." End Sub 在工作簿所有工作运行宏 代码如下: '本程序来自于analystcave.com Sub RunOnAllWorksheets() Dim folderName As String..." End Sub 代码: 1.打开ActiveWorkbook的每个工作而不是ActiveSheet,可以根据需要删除If语句。

4.6K11

VBA实用小程序49: 列出所有打开工作簿VBA模块和过程

学习Excel技术,关注微信公众号: excelperfect 有时,我们可能需要知道工作簿中有哪些模块和相应的过程。...Jon Peltier改编了VBA过程,可以列出当前所有已经打开的工作簿中所含有的VBA模块和过程清单。在输出工作,前两行为模块所在工作簿名称和工程名称。...并且,代码会绕过受保护的VBA工程,同时如果工作簿没有代码,也会在输出工作说明。...Dim wsOutput As Excel.Worksheet Dim sOutput() As String Dim sFileName As String '声明访问工作簿宏的变量...图2 从图2可以看出,我当前打开了3个工作簿,其中两个没有保存也没有代码,另外的工作簿就是GetVBAProcedures过程代码所在的工作簿,有2个模块3个过程。

4K20
领券