Tag: 复制

如何复制/粘贴表单数据不包括ActiveXButtons

问题: 我有一个包含值,公式和ActiveXbutton的工作表。 ActiveXbutton用于附加一些数据,并将活动工作表中的所有值/公式从另一个工作簿中复制/粘贴到另一个工作表中。 现在它工作正常,只有一个例外。 当它将复制的范围粘贴到新的工作簿/工作表中时,它也会粘贴ActiveXbutton及其各自的代码。 我想知道是否有一种方法来select所有的东西,less一些ActiveXbutton,将它添加到剪贴板,然后照常粘贴。 提前致谢。

从VBA复制范围中排除1行

我正在编写一些代码,将多个工作表(它们形成单个部件列表)合并为一个大型部件列表。 到目前为止,我有2个函数扫描每个工作表的最后一行和一列 Function LastRow(sh As Worksheet) On Error Resume Next LastRow = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row On Error GoTo 0 End Function 和 Function LastCol(sh As Worksheet) On Error Resume Next LastCol = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column […]

如何在Excel中获取显示值而不是实际值?

我有一个单元格包含date前。 “05/11/09”目前显示为“11-MAY-09”。 如何复制粘贴或使用VBA将string“11-MAY-09”放到旁边的单元格中(NOT“05/11/09”)? 除了自己拼凑date片段之外,我无法弄清楚。

通过.Copy()创build一个新的Excel工作表并将其移动到最后的位置

我已经有一段时间了, 我想通过复制另一个来创build一个新的工作表。 这将新工作表放置在复印工作表之前。 然后我想把它移到所有表单的最后。 目标是按照该顺序将工作表称为> summary1> summary2> summary3 ..等等 这是我所拥有的(原谅简洁) $ex = New-Object -ComObject Excel.Application $ex.Visible = $true $wb = $ex.Workbooks.Add() for ($i = 1; $i -le 3; $i++) { $wb.Worksheets.Item(2).Copy($wb.Worksheets.Item(2)) $newSheet = $wb.Worksheets.Item(2) $newSheet.Activate() $name = "Summary$i" $newSheet.Name = $name $wb.Worksheets.Item($name).Move($wb.Worksheets.Item($i + 1)) } 它适用于第一个工作表,它重命名工作表,然后将其移动到最后,但每次达到.Move方法后,它都不会执行任何操作,只能激活()原始“摘要”工作表。 我不知道如何解释这种行为。提前谢谢你。 编辑:改变$ wb.Worksheets.Item(“摘要”)。移动到$ wb.Worksheets.Item($名称)。移动 编辑: 这是解决scheme: for ($i = […]

复制选定的行两次

我已经写了一个非常基本的Excelmacros来复制选中的行两次,然后将光标向下移动3行,以便可以重复该过程。 所以如果我有一个文件,前10行都需要重复两次,我运行macros10次。 这已经为我节省了一堆击键,但我相信它可以写得更好,所以我只需select前10行,然后运行一次macros。 以下是我到目前为止: Sub Copy_Twice() ' Copies current row twice ActiveCell.EntireRow.Select Selection.Copy Selection.Insert Shift:=xlDown ActiveCell.EntireRow.Select Selection.Copy Selection.Insert Shift:=xlDown ActiveCell.Offset(rowOffset:=3).Select End Sub 对于运行此macros的每个文件,它可能不是要复制的前10行。 实际上,如果J列中的单元格为空白,则更好的macros将是每行复制两次。 更新:文件具有包含列A到X的值的标题行。要复制的行将是J列为空的标题之后的前x行。 所以在一个例子中,第2-11行需要被复制两次。 但在另一个文件中,可能是第2-21行。

在Excel中使用VBA将保存格式的单元格值从一个单元格复制到另一个单元格

在Excel中,我试图将文本从一个单元格复制到另一个单元格中的另一个单元格。 源单元格包含格式化的文本(粗体,下划线,不同的颜色) 。 但是,当我使用VBA将文本复制到其他单元格时,格式将丢失。 我知道这是因为excel只复制文本值。 有没有一种方法可以从单元格中读取HTML文本 (而不是纯文本) ? 我GOOGLE了这一点,并没有得到任何答案。 我知道,如果我们使用复制和粘贴方法,我们可以复制格式。 例如 Range("F10").Select Selection.Copy Range("I10").Select ActiveSheet.Paste 但我想这样做没有复制和粘贴,因为我的目的地是一个合并单元格,而不是我的源单元格大小相同。 在Excel VBA中有没有这样的选项? 编辑:我能够解决它与下面的代码。 Range("I11").Value = Range("I10").Value For i = 1 To Range("I10").Characters.Count Range("I11").Characters(i, 1).Font.Bold = Range("I10").Characters(i, 1).Font.Bold Range("I11").Characters(i, 1).Font.Color = Range("I10").Characters(i, 1).Font.Color Range("I11").Characters(i, 1).Font.Italic = Range("I10").Characters(i, 1).Font.Italic Range("I11").Characters(i, 1).Font.Underline = Range("I10").Characters(i, 1).Font.Underline Range("I11").Characters(i, 1).Font.FontStyle = Range("I10").Characters(i, 1).Font.FontStyle Next i

复制图像 – Excel VBA

概要- 我需要将一个Excel图片对象中embedded的图像(.png格式)复制到另一个现有图片(覆盖其图像数据),同时保留目标形状的身份和字段(位置,可视性,大小,标题等)。 这是与简单的图片,而不是ActiveX OLEObjects。 情况: 我在Windows 7,Excel 2010中。 我有一个在UI中有多个图片对象的工作表。 根据用户的设置,显示的图片需要经常更改。 我已经触发了所有的设置。 有时,一个形状将需要显示几个不同的图片之一。 我只想从“库”图片(embedded另一个形状,隐藏的用户)的图片数据复制到目的地,但我可以解决这个问题,只需换入和退出图片对象。 不过,即使在保留其独特数据(名称,ID,大小,可视性,标题等)的情况下,UI中的多个形状也需要显示相同的图像。 这个“交换”技巧是令人望而却步的 – 我必须创build50个每个“库”对象的副本,每个实例在UI中可能需要采取这种外观。 迫切要求: 所以我想要做的只是将这些图片的一个库副本,并能够将该图像复制到集成到UI中的图片对象。 问题: 我找不到如何做到这一点。 我找不到对应于图片对象的“图片”部分的VBA数据结构中的任何字段。 只有当Paste()的目的地是一个地址(例如Range(“A1”))时,CopyPicture()然后Paste()才会起作用,然后创build一个新的图片对象。 但是我不想要一个新的对象,我不想粘贴到一个单元格中。 我想用另一个图像对象的图像数据覆盖现有图像对象的图像数据。 重复()和类似的例程是上面的变化 – 它们创build一个新的图片对象。 我有特定的事件等绑定到现有的对象,目标对象,其图像数据我试图改变,所以我不得不改变它的形象,而不是每次更换一些新创build的对象。 LoadPicture() – 通过硬盘驱动器而不是剪贴板(较慢,因此不太理想)似乎不适用于形状对象,只有OLEObjects。 我是否必须将所有这些图片对象转换为ActiveX图像? 这是静态图片的一大堆开销! 而且我希望所有的磁盘读写都能让你明白地看到这个表格。 ActiveX – 我可以将这些图片对象改变成activeX图片对象,然后更改“图书馆”对象,然后使用指定(Shapes(“Name”))DrawingObject.Object.Picture = Shape(“Library”)。DrawingObject.Object 。图片)。 [这种方法是沿着这里的方法 – Excel VBA:从图像控件复制图片到activeX对象 ]我不知道我可以为我的情况做出这项工作。 我不但已经devise了很多UI,以利用Shape / Pictures所具有的特性和function,而且OLEObjects不具备这些特性和function(比如3D格式化和“填充”的特定方式在图片对象上工作),而且操作OLEObjects 明显比操纵简单的图片要慢,在我的实现中,足以使用户感到沮丧。 (这是我在开发的早期阶段转换使用OLEObjects的主要原因之一。] 从本质上讲,我想要做的是当右键单击一个图片对象时得到的“更改图片”命令(除了从另一个图片对象获取图像数据,或者如果需要的话,剪贴板,而不是从磁盘上的文件) 。 但是当我logging这个动作的macros时,它会出现空白 – […]

将R data.frame复制到Excel电子表格

我有一个和这个问题完全类似的问题 。 作为我工作的一部分,我必须将R Studio控制台的输出复制到Excel工作表中,才能生成Excel图表。 但是,R Studio控制台使用格式化的文本,这个文本不太好。 为了弥补,我总是从R Studio控制台复制,粘贴到记事本中,然后复制到Excel中。 这样,当我粘贴一个表格时,我可以告诉excel,它实际上是固定宽度分隔的数据,而不仅仅是一堆文本。 如何从R Studio控制台复制输出,以便将其作为未格式化的文本进入剪贴板,以便将其直接粘贴到Excel中,从而将数字组织到不同的单元格中? 这将是非常有帮助的,因为我不喜欢复制/粘贴表格到记事本,然后擅长制作图表。

将一个HTML表格粘贴到Excel中,如何保持单元格中的换行符

我有一个简单的html表,例如,只有一个单元格,但是当我复制DOM节点,并将其粘贴到Excel中,它将被识别为两行,如何让Excel获取正确的粘贴数据。 <table><tr><td>1<br>2</td><tr></table> 我试图添加CSS样式 br {mso-data-placement:same-cell;}, 但它只适用于IE。 注意,复制纯文本不行,我需要在单元格中添加颜色,字体信息。