Tag: 复制粘贴

从Word复制粘贴表格到Excel

我有一个文件定期更新。 我可以进入该Word文档,select整个表格的内容并复制,然后进入Excel电子表格并粘贴。 搞砸了 但是,我修复如下: sht.Cells.UnMerge sht.Cells.ColumnWidth = 14 sht.Cells.RowHeight = 14 sht.Cells.Font.Size = 10 无论表是否具有合并字段,此手动复制粘贴都可以工作。 然后我可以开始手动操作:parsing,检查,计算等 我一次可以做一张桌子,但是这很麻烦,当然也很容易出错。 我想自动化这个。 我发现了一些代码: Sub read_word_document() Dim sht As Worksheet Dim WordDoc As Word.Document Dim WordApp As Word.Application Set WordApp = CreateObject("Word.Application") WordApp.Visible = False On Error GoTo ErrHandler Set WordDoc = WordApp.Documents.Open("Z:\mydir\myfile1.DOC", ReadOnly:=True) j = 0 For i = […]

在VBA复制粘贴过程中导致运行时错误1004的“Application.Calculation = xlCalculationManual”语句

我有VBA代码复制第一行,并将值粘贴到多行。 下面的代码运行良好,并按预期粘贴行: Sub Macro1() Dim i As Long Application.Calculation = xlCalculationManual Range("A1:M1").Select Selection.Copy For i = 1 To 50 Range("A" & i).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Next i End Sub 但是,如果我将Application.Calculation = xlCalculationManual下移两行,则代码将引发1004运行时错误: Sub Macro1() Dim i As Long Range("A1:M1").Select Selection.Copy Application.Calculation = xlCalculationManual For i = 1 To 50 Range("A" & […]

复制整个工作表并粘贴为值

我试图将活动工作表复制到一个新的工作簿,然后保存该新的工作簿并closures它。 这是通过单击活动工作表中的表单(button)触发的。 在保存之前,该button将在新的工作簿中被删除。 我正在使用活动工作表中的公式。 我试图复制只有值和任何其他格式。 新的工作簿不显示值,而只是空的单元格(不显示任何公式,这当然是好的)。 具体来说,复制具有间接公式的单元格时,问题似乎就会发生; 对原始工作簿中的其他工作表使用更简单的引用的单元格似乎没有问题。 代码如下: Sub CopyRemoveFormAndSave() Dim RelativePath As String Dim shp As Shape Dim testStr As String ' Copy and Paste Active Sheet ActiveSheet.Copy With ActiveSheet.UsedRange .Value = .Value End With ' Remove forms For Each shp In ActiveSheet.Shapes If shp.Type = 8 Then If shp.FormControlType = 0 Then […]

如何在Excel中只复制单元格的纯文本?

我正在devise一个Excel工作表,用户将在其中单击一个命令button来复制预定范围的单元格。 用户然后将内容粘贴到使用Firefox或IE的Web应用程序中。 Web应用程序的devise不在我的控制之下,目前用于数据input的文本框是富文本input。 这会导致文本看起来很奇怪,并且在用户粘贴到Excel中时会格式化为Excel。 有没有办法在Excel中使用VBA复制所选单元格的纯文本? 没有格式化,没有制表符或单元格边框,只是文本,没有别的。 我当前的解决方法macros是复制单元格,打开记事本,粘贴到记事本,然后从记事本复制,以获取纯文本。 这是非常不可取的,我希望有一种方法可以在Excel本身做到这一点。 请让我知道,谢谢!

将一张纸上的列转换为另一张纸上的行,并进行链接

我在工作表A中有A1:A10中的一列数据。在工作表BI中有一个来自A1:J1的数据范围。 我需要将工作表A中的列的数据转换为工作表B中的数据范围。我可以粘贴特殊值并粘贴到值中,但是我需要工作表A中的信息自动更新工作表B中的信息。 任何帮助或build议表示赞赏。

Excel VBA – select剪切粘贴错误

我正在创build一个macros,但是我被困在这个剪切粘贴语句中,从昨天开始无法继续。 这里是问题:我select列“D2到F2”中的所有行,并粘贴在“A1”。 这是它的代码: Range("D2:F2").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Range("A1").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select ActiveSheet.Paste 获取此错误: 以下是我所尝试的: 代码更改:使用PasteSpecial而不是简单的Paste 。 Range("D2:F2").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Range("A1").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select 'ActiveSheet.Paste ' insted of this using paste special. ActiveSheet.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 获取以下错误: 代码更改:将select的大小调整为3列。 Range("D2:F2").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Range("A1").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Resize(1, 3).Select 'ActiveSheet.Paste 得到这个错误: 尝试On Error Resume Next语句。 它将忽略错误消息,但不会粘贴数据。 […]

在C#vsto Excel中特别粘贴

我正在使用C#vsto Excel应用程序。 每当用户从另一个excel表单中粘贴excel模板中的东西时,它也会将单元格格式与excel模板中的单元格数据一起粘贴。 我想避免这一点。 所以我GOOGLE了,我遇到了术语贴特别。 特殊粘贴只会粘贴内容,不会改变当前表格的格式。 我想在我的vsto应用程序中引入粘贴特殊选项。 我在这里有代码, Application.OnKey("^v", "PasteSpecV"); 但它不工作…任何人可以帮助我呢?

VBA从特定工作表中几个不同工作簿中复制数据,然后将数据粘贴到当前工作簿中的特定工作表

我对VBA很新,需要一些帮助来复制和粘贴不同的工作簿和循环表名。 我需要编写一个macros来复制100个工作簿(具有完全相同的格式和表名)中的数据,需要将两个名为“摘要”和“数据库”的工作表复制到当前工作簿的不同工作表中。 我已经在当前工作簿中设置了一个Control_Panel工作表,其名称是复制源文件的名称,我需要将其清空(或者删除没有复制源文件的工作表,这样更好) Control_Panel工作表页面如下所示: 这是我的代码: Option Explicit Sub CopyData() Dim Address As String Dim CopyAddress As String Dim CopyRef1 As String Dim CopyRef2 As String Dim PasteSheet As String Dim Sheet1 As String Dim Sheet2 As String Dim A As Worksheet Dim i As Integer For i = 8 To 107 Step 1 If IsEmpty(Cells(i, […]

将dateselect器的VBA代码从原始工作表复制到已复制的工作簿

我希望你能帮上忙。 我有一段代码。 实质上,它打开一个对话框,允许用户select一个Excel工作表,然后出口到国家栏(11)对其进行过滤,然后将该国家复制并粘贴到一个新的工作簿中,命名新的工作簿之后国家又重复下一个国家的行动,然后保存并closures每个工作簿。 它还通过电子邮件发送工作簿 我的问题是这个; 我在原始工作簿的P列中有一个dateselect器,它可以很好地工作。 见图1。 但date选取器代码不在模块中,而是位于名为“模板”的工作表中的原始工作簿中。请参见图2。 我想要发生的情况是代码运行过滤和复制和粘贴的国家是date选取器可在复制的工作簿。 这可能吗? 目前它只是保留在原来的。 图1 图2 图3根据保存在不同位置的第11列的原始图像复制的工作簿表单 图4复制的工作簿没有dateselect器 与以往任何帮助将不胜感激我的代码如下 date选取器代码 Option Explicit Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'check cells for desired format to trigger the calendarfrm.show routine 'otherwise exit the sub Dim DateFormats, DF DateFormats = Array("m/d/yy;@", "mm/dd/yyyy") For Each DF In DateFormats If DF = Target.NumberFormat […]

Excel VBAmacros:粘贴前检查剪贴板的内容

从各种来源的数据粘贴到Excel中,我遇到了一些严重的问题。 Excel往往会试图变得聪明,并做各种愚蠢的格式化。 我们需要数据作为文本。 问题是我们有很多的用户,而且他们中的很多人对计算机不是很有经验,所以要求他们每次使用右键点击和“select性粘贴”不是一种select。 我find了一个解决scheme,录制一个使用“粘贴特殊”和“文本”的macros,并覆盖ctrl-v来使用这个函数。 它似乎工作完美,直到我标记一个单元格,复制它,并试图粘贴它。 macros坠毁。 所以我需要的是一个函数,可以检查我是否试图粘贴一些复制的文本,然后使用这一行: ActiveSheet.PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:= _ False 而如果我粘贴一个标记的单元格,我想运行这一行(只粘贴值): Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 我不是很擅长为Excel编写VBAmacros(我希望我永远不需要),所以如果有人有几个指针,我会非常感激。