Excel VBA DoubleClick

时间:2016-07-26 16:56:22

标签: excel vba excel-vba double-click

我在一个工作项目上工作,我有一张excel表,其值超出规格时变为红色。我想要做的是能够双击单元格并弹出工作簿中的工作表,其中包含趋势数据。我已经创建了带有图表的工作表。长话短说,我希望能够双击特定的单元格并让它显示相应的表格。

我已尝试过此代码,但无法使用。是否有人能够从头开始编写代码或更改代码以便我可以使用它?我试图点击的单元格是N9,我希望它打开的单页名为" Alpha Final Rinse"

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min.js"></script>

<script type="text/x-template" id="event-template">
  <div>
    <label class="event"></label>
    <input type="time" />
    <button type="button" class="remove">&times; Remove</button>
  </div>
</script>

<script type="text/x-template" id="count-template">
  <div>
    Event {{order}} occurs {{count}} times
  </div>
</script>

<div>
  <label for="begindate">Between </label>
  <input type="date" id="begindate" value="2016-07-26" />
  <input type="time" id="begintime" value="11:00" />
</div>
<div>
  <label for="enddate">and </label>
  <input type="date" id="enddate" value="2016-07-27" />
  <input type="time" id="endtime" value="14:00" />
</div>
<p id="message"></p>
<div id="events">
  <h3>Daily Events</h3>
  <div>
    <button type="button" id="add">Add a Daily Event</button>
  </div>
  <div>
    <label class="event"></label>
    <input type="time" value="10:00" />
    <button type="button" class="remove">&times; Remove</button>
  </div>
  <div>
    <label class="event"></label>
    <input type="time" value="12:00" />
    <button type="button" class="remove">&times; Remove</button>
  </div>
  <div>
    <label class="event"></label>
    <input type="time" value="15:00" />
    <button type="button" class="remove">&times; Remove</button>
  </div>
</div>

我在Excel 2013中这样做。谢谢!

2 个答案:

答案 0 :(得分:1)

如果希望N9能够将焦点切换到另一个工作表,请将目标Intersect method隔离。

在数据工作表的代码表中:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, cancel As Boolean)
    If Not Intersect(Target, Range("N9")) Is Nothing Then
        cancel = True
        Worksheets("Alpha Final Rinse").Activate
    End If
End Sub

请注意,cancel = True是必要的,以阻止用户进入单元格编辑模式(假设已在选项中启用)。

答案 1 :(得分:0)

如果符合以下条件,您的代码将有效:

  • 它安装在数据表的工作表代码区域中(双击其单元格的工作表)
  • 宏已启用
  • 文件类型为 .xlsm ,而不是 .xlsx