我试图从另一个工作簿中获取信息,而不使用间接的,并且在地址中使用单元格作为变量,所以我可以这样做,而不必循环打开和关闭所有的工作簿。到目前为止,这就是我所做的。
第一步是使用连接的单元格中的值来创建指向另一个文件的链接。然后,我将这个连接的文本作为值进行复制/粘贴。然后,我再次复制它,并粘贴到其他地方,希望目标会出现。相反,我得到的是确切的文本。
现在,如果我将文本复制到记事本,再次复制并粘贴到一个单元格中,我从目标单元格中得到值,所以我认为它与如何粘贴有关?但我不知道它是什么。

第一行是从A6到A9连接的所有内容。然后我复制A6:A9并粘贴特殊的A16:A19。当我将它们中的任何一个从A16复制到A19到其他地方时,我会得到确切的文本而不是值。但是,就像我说的,当我将它复制到记事本,然后返回到另一个单元时,我会从我正在寻找的目标单元中获取数据。
这是另一个工作表上真正简单的代码,最终粘贴目标:
Private Sub CommandButton2_Click()
Worksheets("Data").Range("A6:A9").Copy
Worksheets("Data").Range("A16:A19").PasteSpecial Paste:=xlPasteValues
End Sub
Private Sub CommandButton3_Click()
Worksheets("Data").Range("A16").Copy Range("C2")
Worksheets("Data").Range("A17").Copy Range("D2")
Worksheets("Data").Range("A18").Copy Range("E2")
Worksheets("Data").Range("A19").Copy Range("F2")
End Sub任何帮助都将不胜感激。
发布于 2022-07-11 23:01:34
在复制操作中,如果源应用程序的作者选择支持源内容,则可以以多种格式将源内容插入剪贴板。Excel的情况也是如此。使用剪贴板查看器3.1 (或许多其他工具),您可以看到剪贴板上目前存在的所有数据格式。
当粘贴到记事本时,它会识别和粘贴它唯一支持的格式-纯文本。这样粘贴就可以将丰富的Excel信息转换为文本信息,而不是转换格式或其他Excel功能。然后,通过第二个复制操作(现在在记事本中)创建一个新的剪贴板内容,它只通过复制的文本填充剪贴板,没有其他任何内容。当将文本粘贴到Excel中时,它使用某些内置规则在单元格之间拆分文本,首先尝试将其解释为公式(而不是值),然后可能是其他操作。
您可以看到,在Excel中复制和粘贴可读取和写入完整的excel格式,并保留Excel信息。但是,通过使用纯文本格式给内容一次往返,使用完全不同的处理方式,这就是为什么当您这样做时会看到不同的结果。
对于大多数程序来说,这是正确的,而不仅仅是Excel。特别是对于Office应用程序。其他程序(例如音频编辑器)不将文本格式写入剪贴板,它们只编写音频。这就是为什么记事本不会将任何声音粘贴到编辑器中。反之亦然,在记事本中复制文本不会在录音编辑器中粘贴任何内容。
发布于 2022-07-11 23:43:29
伙计们,现在我觉得很蠢。我正在寻找一个PasteSpecial选项,它相当于右键单击并保留文本功能,因为这就是成功复制和粘贴记事本的方式,而我没有运气。相反,我发现藏在另一个网站的Value2选项。
在仅在A16中将filepath连接并粘贴为值后,我在相同的子部分中添加:
Range("C2").Value = Worksheets("Data").Range("A16").Value2这给了我目标细胞的价值,并把它放在我想要的地方。我不知道这是为什么,但只要它继续工作,我是一个快乐的露营者。
现在看来,它只适用于价值,而且我不必费心使用Value2。我还是完全糊涂了。多好的一天啊。
https://stackoverflow.com/questions/72945244
复制相似问题