繁体   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