【问题标题】:Setting the name of each cell to its content/value将每个单元格的名称设置为其内容/值
【发布时间】:2012-07-18 22:27:42
【问题描述】:

我想创建一个宏来选择矩形范围的单元格并将每个单元格的名称设置为单元格的值/内容。

就我目前的想法而言,虽然 cell.Name 行出现了错误。

Public Sub NameCell()
Dim rng As Range
Dim cell As Range
Set rng = Range("A1:D1")
For Each cell In rng
    cell.Name = CStr(cell.Value)
Next
End Sub

【问题讨论】:

标签: excel vba loops range


【解决方案1】:

这是你的意思吗?

Sub setVal()
    Range("A1:C6").Select
    Selection = "value"
End Sub

【讨论】:

  • 这和assigning names to ranges有什么关系?
  • 啊,我误解了这个问题。
  • 是的,这不是我想要的。还是谢谢
【解决方案2】:

我相信这可能对你有用,除非我也误解了这个问题。

Dim r As Range
Dim cell As Range

Set r = Sheet1.UsedRange

For Each cell In r
    Sheet1.Names.Add Name:=cell.Value, RefersTo:=cell
Next

但请记住,您需要检查 cell.Value 对于命名范围是否有效(无空格等)。

【讨论】:

    【解决方案3】:

    要用它们的值替换一系列单元格(从该范围内删除任何公式),您可以使用类似这样的方法。

    Public Sub NameCell()
        Dim rng As Range
        Set rng = Range("A1:D1")
        rng.Value = rng.Value
    End Sub
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-13
    • 2018-03-21
    • 2017-02-02
    相关资源
    最近更新 更多