簡體   English   中英

如何使用VBA代碼將帶有項目符號,粗體字符和換行符的文本粘貼到單個excel單元格中?

[英]How to paste text with bullets, bold characters and break lines into a single excel cell using VBA code?

我想做相當於在工作表中選擇一個單元格,按F2,然后按CTRL + V,這樣所有格式(例如項目符號,粗體字符和換行符)都將保留並粘貼到一個單元格中。 請注意,我不是從excel表格復制,而是使用Excel vba從Word文檔復制。

我試過了:

Sheets(1).Cells(1,1).Select
SendKeys "{F2}", True
SendKeys "v", True
Application.Wait(Now + TimeValue("0:00:5"))
Sheets(1).Cells(1,2).Select

但是上面的代碼粘貼在活動工作表的單元格(1,2)中,而不是(1,1)。 請為此建議另一種方法。

要復制並粘貼“保留格式”的單元格(即,粗體,下划線,文本列,換行符,特殊字符(如項目符號點)等),您可以使用record宏創建類似以下代碼的代碼,簡單地進行復制,粘貼。不需要按F2(因為這只會使您可以訪問原始值-而不是格式):

Range("C3").Select
Selection.Copy
Range("D6").Select
ActiveSheet.Paste

根據需要修改此示例:

With Sheets(1)
    .Cells(1, 1).Copy
    .Cells(1, 2).Select
    .Paste
end with 
SendKeys "^v", True

這將發送Ctrl + v。 您不需要Wait命令,因為{SendKeys}的{True}參數告訴Excel等待完成,然后再返回繼續執行宏。 我不確定是否有更好的方法可以執行此操作而不涉及SendKeys,除非您要粘貼到多個單元格中然后合並它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM