首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从另一个工作表导入行及其公式

从另一个工作表导入行及其公式
EN

Stack Overflow用户
提问于 2015-09-01 19:19:38
回答 1查看 44关注 0票数 0

我想从包含公式的另一个工作表中导入一些列。我的代码分4步处理:*清除所有行*过滤行*复制这些行*然后将它们粘贴到另一个工作表中

谁能告诉我如何修改下面的代码来粘贴这些列和它们的公式:

代码语言:javascript
运行
复制
Public Sub refresh()
'
' refresh Macro
'
' Touche de raccourci du clavier: Ctrl+y
'
Dim ws1 As Worksheet, ws2 As Worksheet, lr1 As Long, lRow As Long

    Set ws1 = ThisWorkbook.Worksheets("Scénarios de menace")
    Set ws2 = ThisWorkbook.Worksheets("Analyse de risque")
    Application.Calculation = xlCalculationAutomatic

    ws2.Range("B6:AP" & ws2.Cells(ws2.Rows.Count, 2).End(xlUp).Row).Clear
    lr1 = ws1.Cells(ws1.Rows.Count, 2).End(xlUp).Row
    Sheets("Scénarios de menace").Select
    Range("B4:Z398").Select
    Selection.Copy
    Sheets("Analyse de risque").Select
    Range("B6:Z400").Select
    ActiveSheet.Paste


    ws1.Range("A1:A" & lr1).AutoFilter Field:=1, Criteria1:="X"
    ws1.Range("B3:AP" & lr1).SpecialCells(xlCellTypeVisible).Copy

    ws2.Range("B6").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
    ws1.Range("A6:A" & lr1).AutoFilter
    ws2.Activate: ws2.Cells(1, 1).Activate




End Sub
EN

回答 1

Stack Overflow用户

发布于 2015-09-01 19:31:30

您可以简单地使用.Formula属性:

代码语言:javascript
运行
复制
ws2.Range("B6:Z400").Formula = ws1.range("B4:Z398").Formula

通过不使用.Select.Copy .Paste,上面的代码也更整洁,而且您定义了自己的Worksheets,因此不要将其用于.Copy .Paste

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32330282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档