標題:
[發問]
快速切換到某Sheet頁面
[打印本頁]
作者:
chi830
時間:
2015-3-3 11:51
標題:
快速切換到某Sheet頁面
請教先進~
因excel含超過50個Sheet頁面,若想快速切換到某Sheet頁,是否有內建功能或另有方式可達成呢??
每個Sheet頁都有命名,有類似Ctrl+F,輸入關鍵字就能到達該頁的功能嗎?
以上~感謝賜教!!
作者:
lpk187
時間:
2015-3-3 12:36
回復
1#
chi830
可以做一個首頁,然後用超連結的方式去做,再在每個頁面也做一個可連回首頁的超連結
作者:
owen06
時間:
2015-3-3 12:54
本帖最後由 owen06 於 2015-3-3 12:56 編輯
回復
1#
chi830
在vba裡插入新模組,貼上下列內容
Sub test()
Dim MyBook As Workbook, sh As Worksheet
Set MyBook = ThisWorkbook
Ans = Application.InputBox("請輸入工作表名稱", "快速切換", "")
For Each sh In MyBook.Sheets
If sh.Name Like "*" & Ans & "*" Then sh.Select
Next
End Sub
複製代碼
然後再進去『巨集』裡的『選項』,把該巨集設定你自己想要的快速鍵,這樣就可以達成你想要的方式了。
作者:
chi830
時間:
2015-3-3 13:09
謝謝大家的回覆,owen06先進提供的方法,正是我所需的~謝謝喔^^
作者:
yianhung
時間:
2015-3-3 14:24
試過了owen06大大的建議挺快的,sheet如果是sheet1,sheet2....好想無法跳轉,請指教~~
作者:
owen06
時間:
2015-3-3 16:22
回復
5#
yianhung
剛測試了一下這個方法似乎是不夠周全,我再研究一下看看。
作者:
lpk187
時間:
2015-3-3 17:51
回復
5#
yianhung
利用owen06大大的程序我做了一些改變,因此要owen06大大程序
.
Private Sub Worksheet_Activate()
For Each sht In Sheets
If sht.Name <> "首頁" Then
ro = ro + 1
Sheets("首頁").Cells(ro, "A") = sht.Name
End If
Next
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = Cells(Target.Row, "A").Address Then
Ans = Cells(Target.Row, "A")
For Each Sh In Sheets
If Sh.Name Like "*" & Ans & "*" Then Sh.Select
Next
End If
End Sub
複製代碼
作者:
lpk187
時間:
2015-3-3 18:21
回復
5#
yianhung
再加上下面這個代碼,只要點選工作表列就是啟動回到首首,這個代碼是放在ThisWorkBook上,
而上面那2個代碼則是放在"首頁"工作表上的
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If Sh.Name = "首頁" Then End
Sheets("首頁").Select
End Sub
複製代碼
作者:
HUNGCHILIN
時間:
2015-3-3 21:06
本帖最後由 HUNGCHILIN 於 2015-3-3 21:39 編輯
使用EXCEL 內建功能
1.在這裡按右鍵
[attach]20363[/attach]
2.SHEET數量多時 會有啟動視窗
[attach]20364[/attach]
點選後即會切換到該SHEET上
用這行程式也可以
Sub 到sheet()
CommandBars("Workbook Tabs").ShowPopup
End Sub
作者:
HUNGCHILIN
時間:
2015-3-3 21:24
使用VBA 建議用這則
http://forum.twbts.com/viewthrea ... ighlight=%B3s%B5%B2
作者:
owen06
時間:
2015-3-3 22:41
回復
5#
yianhung
這樣子應該是可以了
Sub test()
Dim MyBook As Workbook, sh As Worksheet
Set MyBook = ThisWorkbook
Ans = Application.InputBox("請輸入工作表名稱", "快速切換", "")
For Each sh In MyBook.Sheets
If sh.Name Like "*" & Ans & "*" Then
sh.Select
Ans2 = MsgBox("這是你要的工作表嗎?", vbYesNo)
If Ans2 = 6 Then Exit Sub
End If
Next
End Sub
複製代碼
作者:
budinlong
時間:
2015-3-14 18:22
想得比較簡單,使用Ctrl+F,在進階_搜尋範圍選擇活頁簿,在每一個工作表某一個位置標註索引,也可以達到需求
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)