簡體   English   中英

Excel VBA:將兩列合並為一列

[英]Excel VBA: Combining two columns into one column

所以目前我正在使用這段代碼

    wsData.Range("b4:b" & lr).SpecialCells(xlCellTypeVisible).Copy wsDest.Range("M6")
    wsData.Range("H4:H" & lr).SpecialCells(xlCellTypeVisible).Copy wsDest.Range("N6")

(lr 是最后一行)

以及這個單元格公式 =CONCATENATE(M6," - ",N6)

將兩列合並為一列

我真的很想在不使用公式的情況下以相同的方式將這些值組合到一個列中,這樣最終用戶就不必粘貼特殊的內容,有沒有簡單的方法可以做到這一點?

像這樣?

wsDest.Range("O6:O" & lr+2).formula = "=CONCATENATE(M6,"" - "",N6)"

最終,您只想在手動輸入公式時使用宏記錄器記錄公式,並使用 R1C1 表示法獲得正確的公式!

更新:
錄制的腳本是:

Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
Application.CutCopyMode = False

適應您的腳本,可能的解決方案可能如下所示:

wsDest.Range("O6:O" & lr + 2).Formula = "=CONCATENATE(M6,"" - "",N6)"

wsDest.Range("O6:O" & lr + 2).Copy
wsDest.Range("O6").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
Application.CutCopyMode = False

在此處輸入圖像描述

暫無
暫無

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

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