2016-11-21 101 views
0

我希望能够双击单元格并将单元格值/文本返回到另一个单元格中。双击单元格将单元格内容返回到另一个单元格(VBA)

到目前为止我的代码是:

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
If Intersect(Target, Range("E:P")) Is Nothing Then 
Else 
    ActiveCell.Copy Destination:=Sheets("Sheet1").Range("S13") 
End If 
End Sub 

这段代码的问题是,我想实际的单元格内容,不一定是数值。

例如,在单元格E12中,我有文本“已完成”,但是当我双击E12时,单元格S13中返回“0”而不是文本“已完成”。

+1

似乎您的原始单元格包含一个公式,并且您想要复制它的值而不是公式。是对的吗? –

回答

3

我同意A.S.H“你原来的细胞含有一个公式”。

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
    If Not Intersect(Target, Range("E:P")) Is Nothing Then 
     If Target.Cells.Count = 1 then 
      Cancel = True 
      Sheets("Sheet1").Range("S13") = Target.Value 
     End If 
    End If 
End Sub 
+0

这完美的作品。谢谢! – Darren

+0

感谢您接受我的回答。干杯! – 2016-11-22 16:17:35

1

这是行不通的吗?

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
    If Not Intersect(Target, Range("E:P")) Is Nothing Then 
     Cancel = True 
     Target.Copy Destination:=Sheets("Sheet1").Range("S13") 
    End If 
End Sub 
+1

我不会考虑使用'Cancel = True'。 + 1Kudos – 2016-11-22 00:03:22

相关问题