Board logo

標題: [發問] 如何製作一個會動的功能區塊? (已解決) [打印本頁]

作者: av8d    時間: 2011-11-11 10:47     標題: 如何製作一個會動的功能區塊? (已解決)

本帖最後由 av8d 於 2011-11-14 09:44 編輯

如何製作一個會動的功能區塊?
當資料多筆時,我們會運用到滑鼠去拉動右方的棒子,當向下拉動時,所製作的功能需要用到的時候
,必須向上拉方可使用,若是可以製作一個會動的功能區塊緊貼著這個棒子,就可以方便使用者使用,
這個部分好像只有在網頁看到,不知道Excel是否有這個功能呢?
作者: luhpro    時間: 2011-11-12 07:56

回復 1# av8d
據我所知應該沒有,
因為拉動捲動棒這個動作在 Excel 似乎並沒有提供預設的觸發動作函式.

不過若你可以改用先點任一儲存格,
後再按上下方向鍵來移動的話,
Excel 倒是有提供一個 Selection Change 函式可以觸發.

至於移動儲存格焦點時同步移動控制項則不是問題.
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.   cbBtn.Top = Selection.Top
  3. End Sub
複製代碼
[attach]8508[/attach]

所以想要達到你的需求,
關鍵在於如何達到拉動捲動棒時可以觸發某個程序,
這個我不會.
作者: oobird    時間: 2011-11-12 08:07

若能明白說出"所製作的功能",問題就好處理
這樣的提問沒人能猜透什麼是"所製作的功能",連個方向都沒有。
作者: av8d    時間: 2011-11-14 09:40

本帖最後由 av8d 於 2011-11-14 09:43 編輯

回復 2# luhpro


    感謝大大所提供的方法,真的是很棒很實用。

想詢問一下大大,如果有兩排以上的功能的話,我則把它同步增加即可,此做法是否正確呢?
作者: luhpro    時間: 2011-11-14 19:46

回復  luhpro
如果有兩排以上的功能的話,我則把它同步增加即可,此做法是否正確呢? ...
av8d 發表於 2011-11-14 09:40

如果要同步移動兩個以上的物件位置,
建議採用 增減量 的方式,
也就是先算出第一個(即位移基準)物件位置需偏移多少, (移動後位置的Top - 原先位置的Top)
然後 "每個物件" 都做同樣的增減量. (依序將需移動的物件的 Top = 原先位置的 Top + 上面計算出來的增減量)
位移效果可等同 powerPoint 的群組物件位移.
作者: oobird    時間: 2011-11-14 20:41

若"功能區塊"指的是按鈕
最好的辦法是拉出一個自訂工具列
不管幾個按鈕都放在裡面
只要不是用滑鼠去拖動,不管視窗怎麼移動永遠停在視窗固定位置。
按鈕放在userform中也有相同效果。
作者: av8d    時間: 2011-11-25 13:06

回復 6# oobird

userform內也可以? 請問寫法是否相同呢?
作者: oobird    時間: 2011-11-25 19:19

userform的StarUpPosition屬性預設值就是在視窗中央
跟本不用寫任何程式碼它都會在視窗中央,不隨欄列的捲軸移動


[attach]8628[/attach]




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