激凹みから立ち直る方法

VBAで任意の数分Comboboxを作ります。
そのComboboxすべてのプロパティにListFillRangeを追加したいのですがうまくいきません。
お教え下さい。

コード
X=0
Y=100
'-------
for i=1 to mmm '<-mmmは変動
'-------
'//コンボボックス作成
Worksheets("Sheet1").OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=X, Top:=Y, Width:=53.25, HEIGHT _
:=9.75).Select
Selection.ShapeRange.ScaleHeight 1.15, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 1.07, msoFalse, msoScaleFromBottomRight
X=X+10
'-------
next i
'-------
'//ここから下がエラーになる。
dim cmd as object
For i = 1 To Worksheets("Sheet1").Shapes.Count
cmb = ActiveSheet.Shapes(i).Name
With Worksheets("Sheet1").cmb
.ListFillRange = "AAA"
End With
Next i
環境Windows XP,Office 2003

A 回答 (1件)

>ListFillRangeを追加したいのですがうまくいきません。


シートに1個、ComboBoxを設けてListFillRangeを設定しました。
参考に
Sub Test()
  With Worksheets("Sheet1").OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, DisplayAsIcon:=False)
    .Left = 0
    .Top = 100
    .Width = 53.25
    .Height = 20
    .ListFillRange = "AAA"
  End With
End Sub

  "AAA"はリストデータが書かれたセルの範囲名ですね
    • good
    • 0
この回答へのお礼

ありがとうございました。
私がオバカでした。

お礼日時:2010/01/26 13:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報