首页 > 解决方案 > 复制一个单元格中的所有内容并将其粘贴到 vba 中的一个范围内(类似于 ctrl + a 然后 ctrl + c,同时单击公式栏)

问题描述

我有一个电子表格,其中包含一堆由字符串除以空格填充的单元格。当我单击单元格时,按 ctrl+a 然后将其粘贴到相同大小的范围内,它工作得很好,我想在 VBA 中模拟这个过程。

我尝试创建自己的函数来取出这些空格,问题是我试图粘贴的一些条目实际上有空格。

我也尝试记录一个宏,但是当我尝试将其应用于大型数据集时,它吐出的内容毫无用处。这就是发生的事情:

Sub Macro4()
'
' Macro4 Macro
'

'
    ActiveCell.FormulaR1C1 = _
        "ProjId ProjDesc    ScenId  ScenDesc    CellId  ValDate UserId  ProjTyp ProjMode    etc etc etc etc etc....    Value240    " & _
        ""
    Sheets("sheet1").Select
    Range("F1").Select
    Range(Selection, Selection.End(xlToRight)).Select
    ActiveSheet.Paste
End Sub

完全没用,因为下一个单元格将有完全不同的条目。

提前致谢。

编辑:样本数据:这是我想要实现的简单图像。A 列包含单元格中的每个条目,我希望它看起来像 F:J 中的内容。希望这可以解决问题 样本数据的图像

标签: vbaexcel

解决方案


在房子的前面,您是否尝试过使用修剪来解决您的空白问题?

=trim("      Your    String     here")

变成

="Your String Here"

这会在您的字符串开始之前删除所有空格,这可能会导致您的复制/粘贴问题,请参阅此处的文档:文档

编辑:看到您的屏幕截图后,我认为您应该根据 x 将文本运行到列,然后根据下划线 _ 再次运行它


推荐阅读