2013-10-04 112 views
0

隨機工作我目前有5張1個Excel文件打開,命名爲Sheet1Sheet2Sheet3Sheet4Sheet5。因爲我想要一個Sheet1上的按鈕,當我按下該按鈕時,只需說出Show Me即可。該按鈕將隨機顯示我剩餘的4張文件(Sheet2Sheet5)之一。(VBA)顯示在EXCEL

我該如何實現這個任務?我在Google上做了一些研究,但找不到解決方案。

+3

'我在Google上做了一些研究,找不到解決方案。「您在Google中使用哪些關鍵字進行搜索? –

回答

2

分配此宏您的按鈕:

Sub PickRandomSheet() 
    Dim wf As WorksheetFunction 
    Set wf = Application.WorksheetFunction 
    Sheets("Sheet" & wf.RandBetween(2, 5)).Activate 
End Sub 
2

我沒上發佈一個答案,但由於規劃,已經有張貼解答。這是我的版本。

邏輯

  1. 創建返回2號
  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