0

我目前在 1 个名为Sheet1, Sheet2, Sheet3, Sheet4,的 excel 文件上打开了 5 张工作表Sheet5。因为我想要一个按钮Sheet1,当我按下那个按钮时,只需说 as Show Me。该按钮将随机显示我文件剩余的 4 张中的一张(Sheet2Sheet5)。

我怎样才能完成这项任务?我在谷歌上做了一些研究,但找不到解决方案。

4

2 回答 2

3

我不打算发布答案,但因为已经发布了答案。这是我的版本。

逻辑

  1. 创建一个返回两个数字之间的随机数的函数
  2. 使用该数字设置您的工作表,然后激活它

代码

Private Sub CommandButton1_Click()
    Dim ws As Worksheet

    On Error GoTo Whoa

    Set ws = ThisWorkbook.Sheets(RandomNumber(5, 2))
    ws.Activate

LetsContinue:
    Exit Sub
Whoa:
    MsgBox Err.Description
    Resume LetsContinue
End Sub

Public Function RandomNumber(ByVal MaxValue As Long, _
ByVal MinValue As Long) As Long
    On Error Resume Next
    Randomize Timer
    RandomNumber = Int((MaxValue - MinValue + 1) * Rnd) + MinValue
End Function
于 2013-10-04T14:19:15.937 回答
2

将此宏分配给您的按钮:

Sub PickRandomSheet()
    Dim wf As WorksheetFunction
    Set wf = Application.WorksheetFunction
    Sheets("Sheet" & wf.RandBetween(2, 5)).Activate
End Sub
于 2013-10-04T14:18:55.283 回答