发布
社区首页 >问答首页 >将公式应用于单元格区域,然后粘贴值

将公式应用于单元格区域,然后粘贴值
EN

Stack Overflow用户
提问于 2019-05-29 01:45:39
回答 1查看 89关注 0票数 0

我需要将一个公式/函数(美元函数)应用到一个单元格区域,然后只剪切和粘贴值。

我有一个标题行,并使用Find找到我需要的列。然后,对于下面的所有单元格,我想应用美元公式。但是,宏末尾的结果需要是,应用公式后,这些单元格现在只包含值,而不是公式本身(这是因为我将使用工作表运行邮件合并,因此它不能包含公式)。

我尝试过运行Do While和其他剪切/粘贴方法。我只是不具备完成这件事的技能:

代码语言:javascript
代码运行次数:0
复制
Sub ProjectSummaryAdjustment()

   Workbooks("Project Summary").Activate

   Range("A1",Range("A1").End(xlToRight)).Find("TD Budget Effort").Select

这就是我对代码的理解。现在,对于下面的所有单元格,我想应用美元公式,然后将值粘贴到那里。我不介意它是否必须剪切并粘贴到第一个空列,然后再剪切并粘贴回原始列。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-29 02:57:54

首先,请确保您应该避免选择并激活。然后,您可以简单地使用evaluate进行转换。您需要先将该字段设置为文本:

代码语言:javascript
代码运行次数:0
复制
With Workbooks("Project Summary").Worksheets("Sheet1") 'Change to your sheet name
    Dim rng As Range
    Set rng = .Range("A1", .Range("A1").End(xlToRight)).Find("TD Budget Effort")
    'Test to make sure the header was found
    If Not rng Is Nothing Then
        With .Range(.Cells(2, rng.Column), .Cells(.Rows.Count, rng.Column).End(xlUp))
            .NumberFormat = "@"
            .Value = .Parent.Evaluate("index(DOLLAR(" & .Address & "),)")
        End With
    End If
End With
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56347565

复制
相关文章

相似问题

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