tft每日頭條

 > 生活

 > excelvba錄入實例

excelvba錄入實例

生活 更新时间:2024-12-02 13:58:05

VBA中形狀(shape)有Rotation屬性及IncrementRotation方法。連續指定shape的Rotation值或連續讓shape執行IncrementRotation方法則會使shape的角度值持續改變,依此原理可讓shape轉動起來(如上方視頻展示)。

注:1. shape的旋轉中心一般為此shape外接矩形的對稱中心。2. 本例隻展示shapes的IncrementRotation方法。

Step0. 預備知識

Rotation表示對應shape當前角度值,比如shape("myShape").Rotation=90表示名為"myShape"的shape當前的角度值被設置為90°; Msgbox shape("myShape").Rotation則表示要用彈窗顯示名為"myShape"的shape當前的角度值。

IncrementRotation會讓對應的shape對象轉動某個角度值,比如shape("myShape").IncrementRotation 10則表示名為"myShape"的shape将會被順時針旋轉10°(負值則逆時針轉動)。

Step1. 圖形準備及激活方式确定

  • 圖形準備:如下圖,在“插入”選項卡中點選“形狀”,并在其中選擇自己喜歡的項目,本教程選擇“太陽形”

excelvba錄入實例(VBA實例教程-形狀轉動)1

将左上方名稱框中的默認“太陽形 1”更名為“shpSun”(如下圖紅色圈),并在形狀格式選項卡中調整形狀的填充及輪廓顔色(下圖紅色框),本例填充色選紅色,輪廓選黃色,最後拖動形狀的邊沿選框調整其尺寸大小至滿意狀态(注:按住shift拖動可等比放大)。

excelvba錄入實例(VBA實例教程-形狀轉動)2

最終形狀調整完畢後狀态如下(左側為原圖形,右側為調整後圖形):

excelvba錄入實例(VBA實例教程-形狀轉動)3

  • 程序激活方式:設定當點擊A1單元格時,形狀順時針旋轉;點擊B1單元格時,形狀逆時針旋轉;點擊A2單元格時,停止旋轉。并在此三個單元格分别輸入“正轉”、“反轉”及“停止”。字體及顔色依個人喜好調整。

excelvba錄入實例(VBA實例教程-形狀轉動)4

Step2. 代碼的添加

Alt F11調出VBE界面,①雙擊左側當前sheet,在代碼區點選②Worksheet及③SelectionChange,并在調出的過程n内外分别添加紅色框的聲明及代碼:

excelvba錄入實例(VBA實例教程-形狀轉動)5

代碼用boolean變量f_run來控制shape轉動的開啟和關閉。當點擊A1及B1單元格時,f_run被賦值為true,shape轉動;當點擊A2單元格時,f_run被賦值為false,shape轉動停止。

tFact為轉動因子,默認值設為1代表正轉,當B1被點擊時其值被設為-1轉動反向。轉動正反的具體實現,是在循環中shape角度增加時,以正負因子的方式與所增加角度值相乘(本例角度值為3,可依個人喜好改其他值,值越大轉動越快)。

Sleep為API函數,用來增強視覺效果,其後參數值越大,轉動越慢(兩次轉動間的停頓感越強)。

Step3. 代碼的執行

返回前台sheet界面,點擊三個單元格即可實現形狀的正轉、反轉、停止。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved