sliang28 发表于 2012-1-12 08:35

C09 sliang28 作业如下:第3课的作业如下:
            1、请找出下面Sub程序中的3个错误之处。

                         Sub筛选                   ‘没有括号‘“筛选”不可以作为程序名
                           运行的语句(这里没错)
                         End                         ‘End后没有Sub
            2、请编写一个名子为“B”的Sub程序,调用下面带参数的“A”程序,第一个参数值为100,第二个参数值为500
            Sub A(g1 As Integer, g2 As Integer)
                  Range("a1") = g1 + g2
               End Sub       答案:Sub B()A 100,500End Sub
            3、请编写一个名子为“mysub”的Sub程序,调用下面的函数程序,把函数返回的结果放在A1(VBA中表示为Range("A1"))里。调用时参数的值设置为4(A1的结果显示为24答案为正确)

            Function Myfun(A As Integer)
                Dim x As Integer
               Myfun = 1
               For x = A To 1 Step -1
                     Myfun = Myfun * x
                  Next x
             End Function 答案:Sub mysub()Range(“a1”)=myfun(4)End sub
         4、我想在sheet1工作表中添加一个SelectionChange事件,请说出添加步骤(只添加开始和结束语句即可)1、打开VBE编辑器2、对象选择Worksheet3、事件过程选择SelectionChange4、代码如下Private Sub Worksheet_SelectionChange(ByVal Target As Range)End Sub

helingping 发表于 2012-1-12 08:39

1、请找出下面Sub程序中的3个错误之处。

                         Sub筛选
                           运行的语句(这里没错)
                         End
sub 筛选( )没加括号
            2、请编写一个名子为“B”的Sub程序,调用下面带参数的“A”程序,第一个参数值为100,第二个参数值为500
            Sub A(g1 As Integer, g2 As Integer)
                  Range("a1") = g1 + g2
               End Sub
      sub b( )
         a(100,500)
       end sub

            3、请编写一个名子为“mysub”的Sub程序,调用下面的函数程序,把函数返回的结果放在A1(VBA中表示为Range("A1"))里。调用时参数的值设置为4(A1的结果显示为24答案为正确)

            Function Myfun(A As Integer)
                Dim x As Integer
               Myfun = 1
               For x = A To 1 Step -1
                     Myfun = Myfun * x
                  Next x
             End Function
      sub mysub()

    range("a1")=myfun(4)
    end sub
         4、我想在sheet1工作表中添加一个SelectionChange事件,请说出添加步骤(只添加开始和结束语句即可)
(private) sub selectionchange()
end sub

helingping 发表于 2012-1-12 08:41

1、请找出下面Sub程序中的3个错误之处。

                         Sub筛选
                           运行的语句(这里没错)
                         End
第一个错误,sub跟筛选没有空一格。第二个错误,筛选后面少了括号。第三个错误,结束语少了sub
            2、请编写一个名子为“B”的Sub程序,调用下面带参数的“A”程序,第一个参数值为100,第二个参数值为500
            Sub A(g1 As Integer, g2 As Integer)
                  Range("a1") = g1 + g2
               End Sub
      sub b( )
         a(100,500)
       end sub

            3、请编写一个名子为“mysub”的Sub程序,调用下面的函数程序,把函数返回的结果放在A1(VBA中表示为Range("A1"))里。调用时参数的值设置为4(A1的结果显示为24答案为正确)

            Function Myfun(A As Integer)
                Dim x As Integer
               Myfun = 1
               For x = A To 1 Step -1
                     Myfun = Myfun * x
                  Next x
             End Function
      sub mysub()

    range("a1")=myfun(4)
    end sub
         4、我想在sheet1工作表中添加一个SelectionChange事件,请说出添加步骤(只添加开始和结束语句即可)
(private) sub selectionchange()
end sub

amy_yw 发表于 2012-1-12 10:53

1、请找出下面Sub程序中的3个错误之处。
Sub筛选          '子程序结构错误 sub 过程名() 少了空格和括号
    运行的语句(这里没错)
End                  '子程序结构错误 end sub 少了sub

2、请编写一个名子为“B”的Sub程序,调用下面带参数的“A”程序,第一个参数值为100,第二个参数值为500
Sub A(g1 As Integer, g2 As Integer)
      Range("a1") = g1 + g2
End Sub
Sub B()
Call a(100, 500)
End Sub
3、请编写一个名子为“mysub”的Sub程序,调用下面的函数程序,把函数返回的结果放在A1(VBA中表示为Range("A1"))里。调用时参数的值设置为4(A1的结果显示为24答案为正确)
Function Myfun(A As Integer)
      Dim x As Integer
       Myfun = 1
       For x = A To 1 Step -1
            Myfun = Myfun * x
      Next x
End Function
Sub mysub()
Range("a1").Value = Myfun(4)
End Sub
4、我想在sheet1工作表中添加一个SelectionChange事件,请说出添加步骤(只添加开始和结束语句即可)
1.ALT+F11组合键打开VBE,在工程窗口中选取sheet1对象,双击打开工作表代码窗口;
2.在代码窗口中的对象列表中选取workbook;选取事件为SelectionChange;
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

Tristone 发表于 2012-1-12 12:45

第一题:
第一行后面少了();最后一行少了sub。修改后应为:
Sub 筛选()
   运行的语句(这里没错)
End sub

第二题:
Sub B()
    Call A(100, 500)
End Sub

第三题:
Sub mysub()
    Range("A1") = Myfun(4)
End Sub

Tristone 发表于 2012-1-12 12:53

不好意思漏了一题,马上补上

第四题:
在VBAProject——Microsoft Excel对象——Sheet1——代码框左边下拉列表中选——代码框右边下拉列表中选SelectionChange——代码窗里会出现:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

@wsm 发表于 2012-1-12 13:00

第一题 A,程序名与SUB没有空格分开。B,程序名后没有带括号。C,程序结束时没有END SUB语句
'第二题
Sub TESTB()
Call A(100, 500)
End Sub

'第三题
Sub mysub()
Range("a1") = Myfun(4)
End Sub
'第四题 双击VBE打开SHEET1编辑窗口,打开下拉对像窗口点击WOOKSHEET就可以添加SelectionChange事件了

nnzpark 发表于 2012-1-12 13:19

第一次提交时格式不对,重新提交……
答案:
1.①Sub与筛选中间无空格。
②筛选后无()。
③End后缺少Sub

2.Sub B()
        CallA(100,500)
End sub

3.Sub mysub()
    Range("a1") = Myfun(4)
End Sub

4.①在工程窗口中双击sheet1工作表标签。
②在sheet1代码窗口中,点击对象列表框选择Worksheet,过程列表框选择SelectionChange。

LIYEHUAOK 发表于 2012-1-12 13:48

'Sub筛选*******,错误说明少了空格,和参数括号,两个错误
'运行的语句 (这里没错)
'End******少了end sub 结束语句一个错误正确答案如下
Sub 筛选()
    运行的语句 (这里没错)
End Sub
                           
Sub b()
    Call a(100, 500) '在这里 call 可以省略的
End Sub
'Sub A(g1 As Integer, g2 As Integer)
'    Range("a1") = g1 + g2
'End Sub

'Function Myfun(A As Integer)
'Dim x As Integer
'    Myfun = 1
'    For x = A To 1 Step -1
'      Myfun = Myfun * x
'    Next x
'End Function
Sub mysub()
    Range("a1") = Myfun(4)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'    选择工作表sheet1 , 右击查看代码
'    在代码窗口上面通用中选择 worksheet,正常就会弹出 selectionchange 工作表事件
'    如果没有弹出可以再声明中找到 selectionchange 工作表事件
End Sub

tesser 发表于 2012-1-12 14:58

1、Sub和筛选之间没有空格;筛选后面没有加括号;End后面没有Sub。
2、Sub B()
         A 100, 500
   End Sub
3、Sub mysub()
         Range("A1") = Myfun(4)
   End Sub
4、在工作表代码窗口点击Sheet1,在跳出的窗口中第一项选择Wooksheet,第二项选择SelectionChange,即会出来事件程序的开始和结束语句。
页: 1 2 3 4 5 [6] 7 8 9 10 11 12
查看完整版本: 统计VBA学习小组正式组第三讲的积分帖之作业上交贴