在Excel中粘贴值而不是公式

时间:2017-12-15 02:51:19

标签: excel-vba vba excel

我需要在Excel电子表格中粘贴一个值,而不是公式 我的代码是:

.Cells(lRow, 2).Formula = _
"=IF(A" & lRow & "<"" "",A" & lRow & "&TEXT(E" & lRow & ",""mmddyy""),"""")"

代码将两个单元格合并为一个单元格,并且每行都不同。

3 个答案:

答案 0 :(得分:1)

似乎你仍然需要公式的结果,所以只需添加另一行将公式更改为value。类似的东西:

    1   
    position    "ForwardLine1-RW"
    player  
    ID  "5605"
    LastName    "Rantanen"
    FirstName   "Mikko"
    JerseyNumber    "96"
    Position    "RW"
    2   
    position    "ForwardLine2-C"
    player  
    ID  "5564"
    LastName    "Compher"
    FirstName   "J.T."
    JerseyNumber    "37"
    Position    "LW"
    3   
    position    "ForwardLine4-C"
    player  null

答案 1 :(得分:1)

另一种可能的方法是:

Sub foo()
'Sheet1.Cells(lRow, 2).Formula = "=IF(A" & lRow & "<"" "",A" & lRow & "&TEXT(E" & lRow & ",""mmddyy""),"""")"
Dim NewValue As Variant
lRow = Sheet1.Cells(Sheet1.Rows.Count, "A").End(xlUp).Row
If Range("A" & lRow) <> "" Then
    NewValue = Range("A" & lRow).Value & Format(Range("E" & lRow).Value, "mmddyy")
    Sheet1.Cells(lRow, 2).Value = NewValue
End If
End Sub

警告提示E列中的日期值应正确格式化,以使其按预期工作。

答案 2 :(得分:0)

Sub test()
    lRow = 2 
    If Range("A" & lRow).Value <> "" Then
        Range("B" & lRow).Value = Range("A" & lRow).Value & Application.WorksheetFunction.Text(Range("D" & lRow), "mmddyy")
    Else
        Range("B" & lRow).Value = ""
    End If
End Sub
相关问题