将每个单元格的名称设置为其内容/值
Posted
技术标签:
【中文标题】将每个单元格的名称设置为其内容/值【英文标题】: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
【问题讨论】:
并非每一段文字都是valid name。 【参考方案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
【讨论】:
这和assigning names to ranges有什么关系?以上是关于将每个单元格的名称设置为其内容/值的主要内容,如果未能解决你的问题,请参考以下文章