0
2个问题,我已经将程序复制并将表格从另一个工作表粘贴到您选择的单元格。我想要做的是用变量命名这个选定的表格,我该怎么做?换句话说,我已经倒底了(Selection.Name = Ans),但是这不会命名选中的变量Ans是使用一个变量来命名VBA中的选定范围
由于某种原因,Vlookup也不能正常工作,我认为它有一些如何设置范围“MyRange”。
“VLOOKUP
Dim Ans As Variant
Dim myVal As String
Dim MyRange As Range
Set MyRange = Sheets("Program (H)").Range("A1:B50")
myVal = Sheets("Program (H)").Range("D2")
Ans = Application.VLookup(myVal, MyRange, 2, False)
If IsError(Ans) Then
Ans = "Not Found!"
Else
'do nothing
End If
Selection.Name = Ans
如果它有助于整个代码为:
Sub New_Table()
' New_Table Macro
'Reveals the Worksheet "Program (H)"
With Worksheets("Program (H)")
.Visible = True
End With
'Add 1 to the counter
Sheets("Program (H)").Select
Range("D2").Value = Range("D2").Value + 1
'Paste the sheet
Sheets("Caclulator (H)").Select
Range("B3:P17").Select
Selection.Copy
Sheets("SOR Data").Select
ActiveSheet.Paste
'VLOOKUP
Dim Ans As Variant
Dim myVal As String
Dim MyRange As Range
Set MyRange = Sheets("Program (H)").Range("A1:B50")
myVal = Sheets("Program (H)").Range("D2")
Ans = Application.VLookup(myVal, MyRange, 2, False)
If IsError(Ans) Then
Ans = "Not Found!"
Else
'do nothing
End If
Selection.Name = Ans
'Hide the sheet again
With Worksheets("Program (H)")
.Visible = False
End With
End Sub
该vlookup适合我。检查你的数据。 Regd你的第一个查询,你可以重述吗? –
只是改变了它,谢谢。我的数据是两列,左列(A)是数字1 - 50,右列B是名字表1 - 表50 –
我明白你想要什么名字?这是vlookup的结果吗? –