我目前有一个公式,内容如下:
ADDRESS(MATCH(Schedule!A2,Wins!$A$1:$A$33,0),MATCH(Schedule!C2,Wins!$A$1:$AG$1,0))
我希望能够使用宏中返回的单元格引用进行其他计算。我是Macros的新手,对类似问题中的一些代码感到困惑。我想在计算中使用返回的引用,例如。
Worksheets("Record").Range("**").Value = Worksheets("Record").Range("**") - 1
在下面的链接中提到的类似问题似乎返回消息框中的值。我不会在帖子中列出错误,因为我将始终匹配整个单元格内容,它将始终与参考向量中的值匹配,永远不会为空。另一件事是我不明白xlValues, xlWhole
是为了什么。这是该帖子的代码。
Sub GetCell()
Dim ws As Worksheet
Dim rng1 As Range
Set ws = Sheets("submitted")
Set rng1 = ws.Columns("A").Find(Sheets("To_Approve").[d19], , xlValues, xlWhole)
If Not rng1 Is Nothing Then
MsgBox rng1.Address & " in sheet " & ws.Name
Else
MsgBox "not found", vbCritical
End If
End Sub
我也尝试过:
Worksheets("Wins").Cells(WorksheetFunction.Match(A1*,A1:A33,0),
WorksheetFunction.Match(C1*,A1:A33,0).Address
我遇到的问题是A1*
和C1*
需要来自工作表schedule
,而A1:A33
需要来自工作表Wins
。由于“:”
A1:A33
答案 0 :(得分:1)
一种方法:
make CFLAGS=-O0
关于xlValues,xlWhole的问题,请参阅:
https://msdn.microsoft.com/en-us/library/office/ff839746.aspx
特别注意:每次使用此方法时,都会保存LookIn,LookAt,SearchOrder和MatchByte的设置。如果在下次调用方法时未指定这些参数的值,则使用保存的值。设置这些参数会更改“查找”对话框中的设置,并且更改“查找”对话框中的设置会更改省略参数时使用的已保存值。为避免出现问题,请在每次使用此方法时明确设置这些参数。
答案 1 :(得分:0)
我也尝试过:
工作表( “胜”)细胞(WorksheetFunction.Match(A1 *,A1:A33,0), WorksheetFunction.Match(C1 *,A1:A33,0)。地址
但是...
你可以替换
A1 * Worksheets("schedule").range("A1")
C1 * Worksheets("schedule").range("C1")
A1:A33 Worksheets("Wins").range("A1:A33")