单击按钮将多个范围复制到新工作簿

问题描述 投票:0回答:2

找不到与我的情况足够接近的vba。操作是:用户点击一个“导出”按钮,将两个预定义的范围复制并粘贴到一个新的工作簿中。

目前这段代码运行良好,但我已经尝试了从定义多个范围到使用 Union 的所有方法。该站点上的所有解释立即变得如此复杂,以至于我无法理解如何应用它。我相信从我读过的内容来看,我将不得不单独复制每个范围。

我有范围 A1:F54 我也想复制范围 G12:T54 他们粘贴的方式与原始纸张的位置相同。

我的代码在一个范围内完美地(格式和所有)复制,但如果有一种方法可以复制格式、间距等......但排除公式,那会很棒,但我找不到任何关于如何粘贴值(搞砸了格式)。

子按钮2_Click() Sheets("Sheet1").Range("A1:F54").Copy

Workbooks.Add

ActiveSheet.Paste Destination:=Range("A1")

Application.DisplayAlerts = False

Application.DisplayAlerts = True

结束子

excel vba union
2个回答
1
投票

试试

Sub CopyValuesFormats()
    Dim wbSource As Workbook
    Dim wbDest As Workbook
    Dim wsSource As Worksheet
    Dim wsDest As Worksheet
    
    Set wbSource = ThisWorkbook
    Set wsSource = wbSource.Sheets("Sheet1")
    
    Set wbDest = Workbooks.Add
    Set wsDest = wbDest.Sheets("Sheet1")
    
    'Copy values and formats of range A1:F54
    wsSource.Range("A1:F54").Copy
    wsDest.Range("A1").PasteSpecial xlPasteValuesAndNumberFormats
    wsDest.Range("A1").PasteSpecial xlPasteFormats
    Application.CutCopyMode = False
    
    'Copy values and formats of range G12:T54
    wsSource.Range("G12:T54").Copy
    wsDest.Range("G12").PasteSpecial xlPasteValuesAndNumberFormats
    wsDest.Range("G12").PasteSpecial xlPasteFormats
    Application.CutCopyMode = False
End Sub

0
投票

子导出按钮() 将 wbSource 调暗为工作簿 将 wbDest 调暗为工作簿 将 wsSource 调暗为工作表 将 wsDest 调暗为工作表

Set wbSource = ThisWorkbook
Set wsSource = wbSource.Sheets("RFQ FORM INT")

Set wbDest = Workbooks.Add
Set wsDest = wbDest.Sheets("Sheet1")

'Copy values and formats of range A1:F54
wsSource.Range("A1:F54").Copy
wsDest.Range("A1").PasteSpecial xlPasteValuesAndNumberFormats
wsDest.Range("A1").PasteSpecial xlPasteFormats
wsDest.Range("A1").PasteSpecial xlPasteColumnWidths
Application.CutCopyMode = False

'Copy values and formats of range G12:T54
wsSource.Range("G12:T54").Copy
wsDest.Range("G12").PasteSpecial xlPasteValuesAndNumberFormats
wsDest.Range("G12").PasteSpecial xlPasteFormats
wsDest.Range("G12").PasteSpecial xlPasteColumnWidths
Application.CutCopyMode = False

结束子

© www.soinside.com 2019 - 2024. All rights reserved.