我有一个表格,其中第1列的模型名称和第2列的数量。 每次表格的长度都会改变。此外,可以列出一些没有数量的模型(Col2中的对应单元格为空)。 我想创建一个VARIABLE数量的范围,具体取决于我的第2列中有多少非零值。 然后,我想使用模型上对应于此范围+“Qty”的名称来命名这些范围(例如,如果第一个非零值是对应于model1的值,我想命名范围Model1Qty。如果找到的非零值为2,则需要创建2个Dim范围,每个范围基于相应模型的名称等。 如果我的表的图片通过,在我的例子中应该创建2个范围:Model1Qty(范围(“B2”))和Model3Qty(范围(“B4”))。
这是我的代码的开头:
Sub CreatingRng()
Dim N1 As Integer
Dim R As Range
Set R = Range("A1").CurrentRegion
For N1 = (1 + R.Row) To (R.Rows.Count + R.Row)
Cells(N1, R.Columns(2).Column).Select
If IsNumeric(Cells(N1, R.Columns(2).Column)) And _
Cells(N1, R.Columns(2).Column) > 0 Then
‘create a range with Cells(N1, R.Columns(2).Column), named after the corresponding model name
End If
Next N1
End Sub
一个例子:
答案 0 :(得分:0)
尝试一下:
Sub CreatingRng()
Dim N1 As Integer
Dim R As Range
Set R = Range("A1").CurrentRegion
For N1 = (1 + R.Row) To (R.Rows.Count + R.Row)
Cells(N1, R.Columns(2).Column).Select
If IsNumeric(Cells(N1, R.Columns(2).Column)) And Cells(N1, R.Columns(2).Column) > 0 Then
ActiveWorkbook.Names.Add Name:=Selection.Offset(0, -1).Value & "Qty", RefersToR1C1:=Selection
End If
Next N1
End Sub