vba窗體操作代碼?
首先,添加模塊
1.添加一個名為"我的模塊和
(vbext_ct_StdModule)。名稱#34我的模塊#34
系統常數vbext_ct_StdModule1
2.添加一個名為"我的班級
(vbext_ct_ClassModule)。我的班級
vbext_ct_ClassModule2
3.添加一個名為"我的表格和
(vbext_ct_MSForm)。姓名#34我的表格#34
vbext_ct_MSForm3
第二,刪除模塊
1.刪除"模塊1"
thishworkbook.VBproject.VBcomponents(#34模塊1#34)
2.刪除表單"用戶表單"
此工作簿。VBproject.VBcomponents(#34userform1#34)
3.刪除類模塊"1級"
thishworkbook.VBproject.VBcomponents(#34class1#34)
4.刪除所有表單
子RmvForms()
將vbCmp作為VBComponent變暗
對于此工作簿中的每個vbCmp。VBProject.VBComponents
如果vbCmp。鍵入vbext_ct_MSForm,然后鍵入vbCmp
下一個vbCmp
末端接頭
相關:
工作表和ThisWorkbook的模塊類型是vbext_ct_document100。
第三,增加代碼
1.在中插入代碼模塊1"
如果你需要在"第一張和第二張,"這個工作簿"or"用戶表單",只需更改以下"模塊1"到相應的名稱。
方法1:
在模塊的開頭添加代碼,將添加的代碼放在公共聲明選項、全局變量等之后。
子添加代碼1()
thishworkbook.VBproject.VBcomponents(#34模塊1#34)_
#34subaTest()#34安培Chr(10)安培_
#34msgbox#34#34Hello#34#34#34安培Chr(10)amp_
#34末端接頭#34
末端接頭
方法二:
在模塊的指定行添加代碼,原代碼將被移回。添加代碼以忽略和判斷在插入點斷開代碼內容。當指定的行號大于最后一行時,在最后一行后插入。
子添加代碼2()
使用此工作簿。vbproject.vbcomponents(#34模塊1#34)。代碼模塊
。插入行1,#34subaTest()#34
。插入第2行,#34msgbox#34#34hello#34#34#34#34
。插入第3行,34號和34號末端接頭
以…結尾
末端接頭
相關聲明:
(1)模塊1中代碼行的總數:
thishworkbook.VBproject.VBcomponents(#34模塊1#34)
(2)模塊1中代碼的公共聲明部分的行數:
thishworkbook.VBproject.VBcomponents(#34模塊1#34)
(3)顯示從第一行開始的三行代碼模塊1":
子顯示代碼()
Dims$美元
thisworkbook.VBproject.VBcomponents(#34模塊1#34)(1,3)
s
末端接頭
(4)過程測試的初始行數:
thishworkbook.VBproject.VBcomponents(#34模塊1#34)(#34測試#34,vbext_PK_proc)
thishworkbook.VBproject.VBcomponents(#34模塊1#34)(#34測試#34,0)
系統常數vbext_pk_Proc0
兩者的區別在于,ProcBodyLine返回subatete或函數aTest的行號,如果sub前面有空行,ProcStartLine返回空行的行號。
(5)流程測試的銀行總數:
thishworkbook.VBproject.VBcomponents(#34模塊1#34)(#34測試#34,vbext_PK_proc)
2.建立事件流程
除了上面的代碼,比如下面的AddEventsCode1,還可以使用CreateEventProc方法,如AddEventsCode2所示。
一般方法:
SubAddEventsCode1()
此工作簿。VBProject.VBComponents(#34本工作手冊#34)_
#34私有子工作簿_Open()#34ampChr(13)amp_
#34MsgBox#34#34Hello#34#34#34安培Chr(13)amp_
#34末端接頭#34
末端接頭
#39CreateEventProc方法:
SubAddEventsCode2()
維度i%
使用此工作簿。VBproject.VBcomponents(#34sheet1#34)。代碼模塊
一、CreateEventProc(#34selectionchange#34、#34Worksheet#34)1
。插入線路I,#34msgbox#34#34hello#34#34#34#34
以…結尾
末端接頭
CreateEventProc的上述兩個參數建立的事件流程是Worksheet_SelectionChange,也就是下劃線兩邊的內容。
相關:
測試是否有SelectionChange事件。
以下函數測試模塊modulname是否有過程subname。如果是,則返回起始行號;否則,它返回0。
hassub(#34worksheet_selectionchange#34、#34Sheet1#34)
函數的長度為Sub(ByValsubname為字符串,ByValmodulname為字符串)
出錯時繼續下一步
昏暗的燈
我看了這本練習冊。VBproject.VBcomponents(modulename)(subname,0)
如果是35歲
HasSub0
其他
哈蘇布島
如果…就會結束
結束功能
如果存在,則返回起始行號,否則返回0。
第四,刪除代碼
1.刪除Sheet1中第二行的三行代碼:
如果只刪除了一行代碼,那么可以省略第二個參數。
子代碼()
此工作簿。VBproject.VBcomponents(#34sheet1#34)2,3
末端接頭
2.刪除amp的所有代碼模塊1":
子代碼s()
使用此工作簿。vbproject.vbcompon:。
子代碼()
使用此工作簿。vbproject.vbcomponents(#34模塊1#34)。代碼模塊
。刪除行。ProcStartLine(#34aTest#34,0)。ProcCountLines(#34aTest#34,0)
以…結尾
末端接頭
4.替換amp的第五行代碼模塊1"與"x3"
此工作簿。vbproject.vbcompon:windowssystem32asctrls.ocx#34
2.取消參考
(#34as控件#34)
這里ASControls是引用的名稱,即下面的。
3.顯示所有當前引用。
子顯示引用()
變暗射頻組件
對于每個射頻輸入
,rf。完整路徑
然后
末端接頭
不及物動詞信任和密碼
所有上述操作都基于以下前提:
(1)EXCEL已經設置:
工具(T)-宏(M)-安全(M)-可靠的出版商(T)-"信任訪問VB項目(五)"已檢查。
(2)項目沒有設置密碼。
如果你能如果不能滿足其中任何一個,代碼就會出錯。因為微軟沒有。;不要我們操作VBProject,我們不要。;我不知道這個操作的直接方法藏在哪里。好在在關閉正門的同時,微軟還是給我們留了一扇門:SendKeys。借助這個后門和"錯誤陷阱",我們還是可以完成自己想做的事情。
下面是繞過這兩扇門的示意圖代碼。如果你想運行它們,請記得切換回EXCEL的主界面,而不是直接在VBE中運行。
1.信任對VB項目的訪問
SubSetAllowableVbe()
出錯時繼續下一步
DimChgset為布爾值
#39陷阱測試在這里沒有實際意義。
如果1004那么#34%TMS%T%V{ENTER}#34
ChgsetTrue
多項活動
如果…就會結束
#39要執行的操作....
#39.....
#39操作完成后,恢復操作前的狀態
如果Chgset,則#34%TMS%T%V{ENTER}#34
末端接頭
2.操作密碼項目
SubAllowPass()
Dimpw$
密碼34
如果vbext_pp_locked,則
(1).控制(#34工具(T)#34)。控件(#34v項目屬性(ampE)...#34)執行。
{ENTER}{ENTER}#34
多項活動
如果…就會結束
#39要執行的操作...
#39.....
末端接頭
Protection屬性返回項目的受保護狀態,vbext_pp_lock
Project文件中的橫道圖怎么添加文字?
1.雙擊任務名稱以打開對話框,并選擇“注釋”選項卡以輸入注釋。
2.雙擊該任務對應的右交叉圖,彈出框對齊,選擇條形圖文本頁簽。
3.選擇左側或右側或其他位置,單擊右側的下拉框,選擇注釋,然后確認。