簡體   English   中英

Excel VBA宏記錄跳過空白復制重復粘貼

[英]Excel VBA Macro Recording Skip Blank Copied repeated paste

暈大家,我想做的是在c6:d20中復制填充的單元格,並跳過空白單元格,但是當我粘貼時的結果是,我只得到d6:d20,也許是因為在C列中填充了公式

這是我的第一個記錄宏編輯

Sub RoundedRectangle1_Click()
'
' RoundedRectangle1_Click Macro
'

'
Sheets("Resume").Select
Range("C6:D20").Select
Selection.SpecialCells(xlCellTypeConstants).Copy
Sheets("Input").Select
Range("A" & Rows.Count).End(xlUp).Offset(1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
End Sub

任何幫助都很好謝謝

如果您只想復制粘貼值而不使用公式,則以下內容可能會有所幫助

Sub RoundedRectangle1_Click()
    Dim srcSht As Worksheet, destSht As Worksheet
    Dim srcRng As Range, destRng As Range

    Set srcSht = ThisWorkbook.Sheets("Resume")  'this is your input sheet
    Set destSht = ThisWorkbook.Sheets("Input")  'this is your output sheet

    Set srcRng = srcSht.Range("C6:D20")         'set range to be copied
    Set destRng = destSht.Range("A" & destSht.Rows.Count).End(xlUp).Offset(1).Resize(srcRng.Rows.Count, srcRng.Columns.Count) 'set range to paste
    destRng.Value = srcRng.Value                'copy only values
    destRng.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp   'delete blnk cells
End Sub

注意:您應該避免使用SELECT 請參閱了解詳情。

暫無
暫無

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

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