从一行中select位置并使用macros放置在下一张纸上的相同位置

我在Excel中有两个电子表格。 Sheet1被称为Overview ,Sheet2被称为Comments 。 我想在第一张纸的第二张纸上find同一行,例如,如果我在Sheet1的第二行select了一个单元格,然后点击这个macros,那么我会把第二行放在Sheet2上。

我的代码到目前为止(我放置一个MsgBox只是为了看看是否获取单元格的位置):

 Sub Comment() Sheets("Overview").Select myRow = ActiveCell.Row myCol = ActiveCell.Column MsgBox myRow & "," & myCol Sheets("Comments").Select (Stuck) End Sub 

这跳转到第二张纸上的同一个单元格。

 Sub Comment() Sheets("Overview").Select myRow = ActiveCell.Row myCol = ActiveCell.Column Sheets("Comments").Select Sheets("Comments").Cells(myRow,myCol).Select End Sub 

这将做到这一点:

 Sub jumpsheet() Dim addr As String addr = Selection.Address Sheets("Comments").Activate Range(addr).Select End Sub 

虽然这已被回答(我给Excell的+1)下面是一个替代scheme适用于任何工作表位置(工作表x到工作表x +1),并处理非范围select,隐藏或不存在的工作表。 我使用了一个与工具栏上的button相连的简单插件,以及向后退一页的代码

 Sub UpOneSheet() On Error Resume Next Application.Goto Sheets(ActiveSheet.Index + 1).Range(ActiveCell.Address) If Err.Number <> 0 Then MsgBox "You either " & vbNewLine & "a) have a chart or object selected or," & vbNewLine & _ "b) are on the last sheet or, " & vbNewLine & "c) the sheet you are trying to access is hidden" End Sub