1
我正在嘗試創建一個帶有按鈕的插入行和ActiveX組合框的按鈕的Excel電子表格。該按鈕被選定大小並與單元一起移動。由於按鈕隨着每次點擊而移動(如上面一行所插入的),並且用戶可以在工作表上突出顯示任何單元格,所以我需要創建一個相對於按鈕單元格而不是活動單元格的宏。我通過命名包含按鈕的單元格並記錄我自己的宏(使用「選擇使用相對引用」)在包含按鈕的單元格上方插入一行來完成前半部分。然後,我編輯了包含ActiveCell.Select到宏的宏(「NamedCell」)。選擇這樣,無論用戶突出顯示哪個單元格,都會在按鈕上方插入一行。插入ActiveX控件相對於單元格時遇到的問題
我遇到的問題是如何插入ActiveX組合框。生成的代碼包含左,頂部,寬度和高度以定位ActiveX組合框。由於高度隨着每次連續點擊和插入的行而改變,所有組合框相互重疊。如果這不會發生或需要大量的VBA代碼,請不要擔心。通過閱讀你對別人的迴應,我已經學會了一大堆。這裏是我目前使用的宏,但是它每次都將ActiveX組合框插入到相同的位置,而不是像按我想要的那樣放置在按鈕上方的單元格中。再次感謝。
Sub AddFitting()
'
' AddFitting Macro
'
'
Range("FittingRow").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("FittingCell").Select
ActiveCell.Offset(-1, 0).Range("A1").Select
ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=0, Top:=346.5, Width:=120, Height:=15.75) _
.Select
With Selection
.Placement = xlMoveAndSize
.PrintObject = True
End With
ActiveCell.Offset(0, 2).Range("A1").Select
ActiveCell.FormulaR1C1 = "'= K value"
ActiveCell.Offset(0, -1).Range("A1").Select
End Sub
是的,這是完美的。我試圖找出如何定位它相對於一個單元格。非常感謝您花時間幫助我!不幸的是,我無法對你的評論贊不絕口,因爲我沒有15點聲望點,但我會一旦我做到了。 –
很高興爲你效勞。順便說一句[有趣的閱讀](http://stackoverflow.com/questions/10714251/excel-macro-avoiding-using-select) –
謝謝,這是非常有益的。當你不確定你在找什麼時,有時候很難找到答案,但這肯定是有幫助的。再次感謝。 –