2024年11月8日 星期五

vba:自動調整按鈕位置跟大小 靠,物件迴圈

一個一個排列按鈕太累了,透過vba程式八


vba:




解說:

先定義了一個名為 PositionButtons 的sub程序,接受兩個參數 left 和 top,用來指定按鈕的初始位置。

Sub PositionButtons(left, top) '按鈕位置

這幾行聲明了四個變數:

    Dim ws As Worksheet

    Dim oleObj As OLEObject

    Dim topPosition As Double

    Dim leftPosition As Double

ws 代表工作表。

Set ws = ActiveSheet

oleObj 代表工作表上的每一個 OLEObject(嵌入的控制項)。

topPosition 和 leftPosition 分別表示按鈕的上邊距和左邊距。

這兩行將傳入的參數 top 和 left 賦值給 topPosition 和 leftPosition,設置按鈕的初始位置:

    topPosition = top

    leftPosition = left

這行調整下一個按鈕的位置,將 topPosition 增加當前按鈕的高度和5個單位的間距。

     topPosition = topPosition + oleObj.Height + 5 ' 調整為所需間距

這兩行分別結束 If 條件和 For Each 迴圈:

        End If

    Next oleObj





沒有留言:

張貼留言

職場毒癌:你憑什麼以為你十年寒窗,抵得我三代從商

你憑什麼以為你十年寒窗,抵得我三代從商——這句話已經記不得是從哪裡看到的,可能是某部劇,也可能是某篇 FB 文章標題。 但最近,特別有感。 為什麼會有這種感觸? 職場上有個同事,一路慢慢升到課長,好歹也是管理職,雖說不上鐵飯碗,但在多數人眼裡也算穩定。 結果呢?輾轉換了兩個製造課...