tft每日頭條

 > 科技

 > vba編程如何運行

vba編程如何運行

科技 更新时间:2024-09-06 00:22:34
No.1

VBA函數是應用内置的一些功能代碼塊,是一些常用的功能編輯為一個程度段,共直接調用來實現某種結果。

本節開始,介紹一些函數,學以緻用,提高vba編程技巧為目的。

vba編程如何運行(如何用代碼執行對象的方法)1

CallByName是一個對象功能塊。

它的作用是對某一個對象進行屬性設置、返回和方法執行的功能。

似乎并不好理解。

再解釋一下,它是針對某一個對象的函數,如一個按鈕對象或一個文本框對象。

做什麼呢?

使用這個函數,可以設置文本框對象的屬性,也可以返回對象的屬性。

當然了,還可以執行文本框對象的方法。

函數參數如下圖所示:

vba編程如何運行(如何用代碼執行對象的方法)2

No.2

嚴格來說,這個函數比較難操作。

對于初學者來說就更加困難,因為它需要使用者掌握對象以及對象的屬性和方法。

所以,并不十分掌握。

但是有一點還是很可以期待的。

這個函數的使用方法,相對簡單,重點在于參數,要特别記憶。

語法:

CallByName(object、 procname、 calltype、[args ()] ))

參數:

object:對象變量名稱

procname:屬性或方法名稱

calltype:過程類型,常量。

[args ()]:屬性數組

如上語法和參數了解一下,用一個實例來說明一下,如何使用。

vba編程如何運行(如何用代碼執行對象的方法)3

No.3

本例以一個文本框對象做一個提示,并不完全表現本函數的所有功能,而且本想做的某些屬性和方法,也沒有調試通過,不知道哪裡存在問題。

似乎使用本函數并不能獲取有些屬性值。

如有興趣不妨一試探究。

vba編程如何運行(如何用代碼執行對象的方法)4

按鈕代碼:

Private Sub CommandButton1_Click() Dim Xobj As Object, Xvalue As String Set Xobj = Me.TextBox1 Xvalue = "複制一個文本框" Dim Robj As Range Set Robj = Range("A3") setTextValue Xobj, Xvalue, Robj End Sub

過程代碼:

Private Sub setTextValue(Xobj As Object, Xvalue As String, Robj As Range) CallByName Xobj, "Borderstyle", VbLet, 1'設置邊框 CallByName Xobj, "Value", VbLet, Xvalue'設置文本值 x = CallByName(Robj, "value", VbGet)'獲取文本值 CallByName Xobj, "copy", VbMethod'調用Copy方法 End Sub

vba編程如何運行(如何用代碼執行對象的方法)5

文本框屬性設置

Private Sub CommandButton3_Click() Dim TR As Range, x As Variant Set TR = Range("H4") Dim Tobj As Object For Each Tobj In Me.OLEObjects If VBA.Left(Tobj.Name, 7) = "TextBox" Then CallByName Tobj, "Height", VbLet, TR '設置高度 CallByName Tobj, "Width", VbLet, TR.Offset(0, 1) '設置寬度 CallByName Tobj, "left", VbLet, TR.Offset(0, 2)'左邊距 CallByName Tobj, "Top", VbLet, TR.Offset(0, 3)'上邊距 End If Next Tobj End Sub

有vba編程基礎,看注解基本明白函數某些功能。

看到這裡,說明也不是初學者,希望這樣的例子可以幫助你在vba路上越走越好。

歡迎關注、收藏、轉發。,

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

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

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