Option Explicit '声明公共变量 Dim Wb As Object, Sh As Object, SouceRng As Object, TarCell As Object '当控件获得焦点时运行 Private Sub ComboBox1_GotFocus() Dim i As Integer '设置Wb为内嵌的Excel工作薄,Sh为指定工作表,SouceRng和TarCell为指定单元格区域 Set Wb = Me.Shapes(1).OLEFormat.Object 'Me表示正在播放的Slide Set Sh = Wb.worksheets("sheet1") Set SouceRng = Sh.Range("B1:D1") Set TarCell = Sh.Range("F1") With ComboBox1 '先清除列表 If .ListCount > 0 Then .ListIndex = -1 For i = .ListCount - 1 To 0 Step -1 .RemoveItem i Next i End If '加入列表项 For i = 1 To SouceRng.Count .AddItem SouceRng.offset(0, i - 1).Range("A1") Next i '选择第一项 .ListIndex = 0 '修改TarCell单元格中的值 TarCell = .Value End With End Sub