Board logo

標題: [發問] 請問Excel下拉選單,選擇後自動轉到所需頁面的VBA該如何寫 [打印本頁]

作者: lky12345    時間: 2024-1-3 18:10     標題: 請問Excel下拉選單,選擇後自動轉到所需頁面的VBA該如何寫

本帖最後由 lky12345 於 2024-1-3 18:13 編輯

請問在Excel儲存格中,設定下拉選單,再該儲存格選擇後自動轉到所需頁面指定欄位的VBA該如何寫?
在(sheet1)A欄中的隨機欄位上,只要下拉點選"列印"後則轉至(sheet2)頁面指定欄位,
如(sheet1)A欄中有選擇2個列因時,則出現msg box提醒,
按下確定後.回到原資料格上
謝謝
[attach]37246[/attach]
[attach]37245[/attach]
作者: Andy2483    時間: 2024-1-4 08:47

回復 1# lky12345


    謝謝論壇,謝謝前輩發表此主題
後學藉此帖練習觸發與CountIf()函數,學習方案如下,請前輩參考

工作表模組:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim N%
With Target
   If .Column = 1 And .Rows.Count = 1 Then
      N = Application.CountIf([A:A], "列印")
      If N > 1 Then MsgBox "A欄有 " & N & " 個列印": Exit Sub
      If N = 1 Then
         Sheets(2).Activate
         '~~轉至(sheet2)頁面指定欄位
      End If
   End If
End With
End Sub
作者: lky12345    時間: 2024-1-4 18:24

回復 2# Andy2483
感謝大大的回覆,因為個人對VBA也不是很熟悉
所以還請大大協助幫忙,謝謝
現在的問題是我填入vba中卻出現以下訊息
請問是哪邊出錯,請再指導,謝謝
[attach]37250[/attach]
作者: Andy2483    時間: 2024-1-4 19:10

回復 3# lky12345


    這截圖畫面是在一般模組
這程式碼是觸發事件,所以要放入工作表模組,儲存格值改變時會自動執行
所以請在VBA裡將游標移到欲植入的工作表下快按兩下,將程式碼植入後就可以到表格測試一下
作者: lky12345    時間: 2024-1-4 19:58

回復 4# Andy2483
瞭解了,感謝大大的指導,謝謝
作者: lky12345    時間: 2024-1-5 18:23

回復 5# lky12345
大大你好
不好意思,使用後有個問題就是如果A欄中有顯示"列印"滑鼠只要點到A欄中任何位置,則會自動轉到sheet2
請問這有辦法改善嗎?
謝謝
作者: Andy2483    時間: 2024-1-5 20:57

回復 6# lky12345

Sheets(2).Activate
這是跳到第2工作表的意思
具體的要跳到第2工作表做什麼事?可再具體的說明或上傳範例檔
作者: lky12345    時間: 2024-1-6 09:50

回復 7# Andy2483
大大你好
是轉到sheet2後就由點選進行所需要的列印
謝謝
很感謝有您的協助,這樣的功能已經很好了,謝謝
作者: liaovba    時間: 2024-1-13 10:45

本帖最後由 liaovba 於 2024-1-13 10:46 編輯

回復 3# lky12345


      N = Application.CountIf([A:A], "列印")  这里的N是读取了整列,如果你想指定范围,可以改变这里的A:A的值,如何改为A1:A10
作者: lky12345    時間: 2024-1-14 18:09

回復 9# liaovba
好的,謝謝大大的指導




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)