11月13/14日 零基础学Excel VBA 300集Office 2010微视频教程
10月18/19日 7天Excel脱白 高效办公必会的Office实战技巧
10月23/24日 财务会计玩转Excel 网易云课堂-Excel数据透视表应用大全
Excel数据处理与分析实战技巧第1季
查看: 741|回复: 75

零基础VBA 第十期 第三课时作业贴

[复制链接]
发表于 2017-5-9 08:47:24 | 显示全部楼层 |阅读模式
本帖最后由 芬子 于 2017-5-13 22:34 编辑

交作业的要求:

1、不需要附件,只需贴代码,说明你做的是哪道题
2、贴上的代码都需要缩进,并且关键语句要有注释
3、请在添加代码文字,那里添加代码,这样代码要楼层中显得赏心悦目。不知道怎样操作的小伙伴,可以参照看动画。

193058ne9eevg37o8kk15o.gif
回复

使用道具 举报

发表于 2017-5-9 09:24:15 | 显示全部楼层
  1. Sub 判断闰年()
  2.     Dim yr As Date, b As Boolean
  3.     yr = InputBox("请输入一个年份")
  4.     b = yr Mod 400 = 0 Or (yr Mod 4 = 0 And yr Mod 100 <> 0)
  5.     MsgBox b

  6. End Sub
复制代码
  1. Sub 作业2()
  2.     Dim 生日 As Date
  3.     Dim d As Long
  4.     生日 = CDate(InputBox("请输入你的生日"))
  5.     d = Date - 生日
  6.     MsgBox "自从您出世以来已经过了" & d & "天了。"
  7. End Sub
复制代码


点评

不好意思,第三讲IF还没讲  发表于 2017-5-13 22:34
正确,第一题的msgbox可以提示再详细点,比如 if b then msgbox yr & "是闰年。" else...  发表于 2017-5-13 21:38
回复 支持 反对

使用道具 举报

发表于 2017-5-9 09:48:03 | 显示全部楼层
  1. '作业1
  2. '输入一个年份,算出这个年份是否是闰年, 用inputbox 输入,不考虑错误输入
  3. '闰年的定义:a.年份能够被4整除并且不能被100整除; b. 年份能够被400整除
  4. Sub 作业1runian()
  5.     Dim years As Long, b As Boolean '定义变量years(年份)为长整型,b为布尔类型
  6.     InputBox ("请输出一个年份") '输入一个年份,不考虑错误输入
  7.     b = (years Mod 4 = 0 And years Mod 100 <> 0) Or (years Mod 400 = 0) '判断输入的年份是否是闰年
  8.     MsgBox b '输出判断结果
  9. End Sub

  10. '作业2 定义一个日期型变量为你的生日,用inputbox 语句输入生日
  11. '已经提示了做法,要求输出你出生之后已经生活了多少天了
  12. '要下面的结果,在作业2 后面完成
  13. ' "自从您出世以来已经过了 xxx 天了。"
  14. Sub 作业2a()
  15.     Dim 生日 As Date
  16.     生日 = CDate(InputBox("请输入你的生日"))
  17.     MsgBox "自从您出世以来已经生活了" & #5/9/2017# - 生日 & "天了" '当前日期与出生日期的时间差即为所求结果
  18. End Sub

  19. Sub 作业2b()
  20.     Dim sr As Date, dqrq As Date '定义当前日期为date类型变量
  21.     sr = CDate(InputBox("请输入你的生日"))
  22.     dqrq = Date '把当前的日期赋值给dqrq
  23.     MsgBox "自从您出世以来已经过了" & dqrq - sr & "天了" '当前日期与出生日期的时间差即为所求结果
  24. End Sub
复制代码

复制代码


点评

正确,第一题的msgbox可以提示再详细点,比如 if b then msgbox years & "是闰年。" else...  发表于 2017-5-13 21:40
回复 支持 反对

使用道具 举报

发表于 2017-5-9 10:48:11 | 显示全部楼层
  1. '判断闰年
  2. Sub islYear()
  3.     Dim year As Long, res As Boolean
  4.     year = InputBox("请输入需要判断的年份")
  5.     res = year Mod 4 = 0 And year Mod 100 <> 0 Or year Mod 400 = 0
  6.     MsgBox res
  7.    
  8. End Sub


  9. '已生存时间

  10. Sub Dnum()
  11.     Dim 生日 As Date
  12.     生日 = InputBox("请输入你的生日")
  13.     MsgBox "自您出世以来已经过了" & Date - 生日 & "天了!"
  14. End Sub
复制代码

点评

正确,变量year跟函数重名,不要使用函数名称。第一题的msgbox可以提示再详细点,比如 if res then msgbox year & "是闰年。" else...  发表于 2017-5-13 21:44
回复 支持 反对

使用道具 举报

发表于 2017-5-9 11:42:06 | 显示全部楼层
'作业1
'输入一个年份,算出这个年份是否是闰年, 用inputbox 输入,不考虑错误输入

'闰年的定义:a.年份能够被4整除并且不能被100整除
'           b. 年份能够被400整除

Sub 闰年()
    Dim years As Integer, b As Boolean
    years = InputBox("请输入一个年份")
    b = ((years Mod 4 = 0 And years Mod 100 <> 0) Or (years Mod 400 = 0))

    MsgBox b
   
End Sub

'作业2 定义一个日期型变量为你的生日,用inputbox 语句输入生日
'已经提示了做法,要求输出你出生之后已经生活了多少天了
'要下面的结果,在作业2 后面完成
' "自从您出世以来已经过了 xxx 天了。"

Sub 出生天数()

    Dim 当前 As Date, 生日 As Date, 天数 As Integer
    当前 = Date
    生日 = InputBox("请输入你的生日格式如1990/1/1,xxxx/xx/xx")
    天数 = 当前 - 生日
   
    MsgBox "自从您出世以来已经过了" & 天数 & "天了"


End Sub

点评

正确,第一题的msgbox可以提示再详细点,比如 if b then msgbox yr & "是闰年。" else... 下次作业请按要求贴代码  发表于 2017-5-13 21:46
回复 支持 反对

使用道具 举报

发表于 2017-5-9 12:40:38 | 显示全部楼层
Sub 闰年()
Dim  a as Integer, b as String
a = InputBox("请输入年份:“)
b = (a Mod 400 = 0) or (a Mod 4 = 0 And a Mod 100<> 0)
    If b = true then
    b = "是"
    Elseif b = false then
    b = "不是"
    End if
MsgBox a & b & "闰年"
End Sub

Sub 作业2()
Dim 生日 as Date
生日 = CDDate(InputBox("请数日您的生日"))
Dim a as Integer
a = now - 生日
msgbox "自从您出世以来已经过了"& a &"天了"
End Sub

点评

变量名称定义的时候多注意,语句缩进也要注意下,第一题很不错,第二题CDATE,打错了哦。  发表于 2017-5-13 21:50
回复 支持 反对

使用道具 举报

发表于 2017-5-9 14:20:37 | 显示全部楼层


  1. '作业1
  2. '输入一个年份,算出这个年份是否是闰年, 用inputbox 输入,不考虑错误输入
  3. '闰年的定义:a.年份能够被4整除并且不能被100整除
  4. '           b. 年份能够被400整除

  5. Sub 判断闰年()
  6.     Dim year As Long, r As Boolean
  7.     year = InputBox("请输入年份")
  8.     r = (year Mod 4 = 0 And year Mod 100 <> 0) Or year Mod 400 = 0
  9.     MsgBox r
  10. End Sub
复制代码
  1. '作业2 定义一个日期型变量为你的生日,用inputbox 语句输入生日
  2. '已经提示了做法,要求输出你出生之后已经生活了多少天了
  3. '要下面的结果,在作业2 后面完成
  4. ' "自从您出世以来已经过了 xxx 天了。"

  5. Sub 作业2()
  6.     Dim 生日 As Date
  7.     生日 = CDate(InputBox("请输入你的生日"))
  8.     Dim 今天 As Date
  9.     今天 = Date
  10.     Dim 天数 As Long
  11.     天数 = 今天 - 生日
  12.     MsgBox "自从您出生以来已经过了" & 天数 & "天了。"
  13. End Sub
复制代码
谢谢老师!!

点评

year与函数重名了,定义变量时不要用存在的函数名称,第一题的msgbox可以提示再详细点,比如 if r then msgbox year & "是闰年。" else...  发表于 2017-5-13 21:52
回复 支持 反对

使用道具 举报

发表于 2017-5-9 19:01:04 | 显示全部楼层
  1. Sub 该年是否是闰年()
  2.     Dim years As Long, B As Boolean
  3.    
  4.     years = InputBox("请输入年份")
  5.    
  6.     B = years(years Mod 400 = 0) Or (years Mod 4 = 0 And years Mod 100 <> 0)
  7.     MsgBox B
  8.    
  9. End Sub
复制代码
  1. Sub 活了多少天()
  2.     Dim 生日 As Date, B As Date, Time  As Date
  3.    
  4.     生日 = CDate(InputBox("请输入你的生日"))
  5.     B = Date
  6.     Time = B - 生日
  7.     MsgBox Time
  8.    
  9. End Sub
复制代码


点评

第一题前面多了一个years(哦,做题的时候没有调试的嘛?可以用if 判断是否为TRUE之后输出years是否为闰年哦。如if b then msgbox years &"是闰年"。第二题输出结果没有按照老师要求输出  发表于 2017-5-13 21:56
回复 支持 反对

使用道具 举报

发表于 2017-5-9 19:20:49 | 显示全部楼层
  1. '作业1
  2. '输入一个年份,算出这个年份是否是闰年, 用inputbox 输入,不考虑错误输入
  3. '闰年的定义:a.年份能够被4整除并且不能被100整除
  4. '           b. 年份能够被400整除


  5. Sub 闰年()

  6.     Dim years As Long
  7.     years = InputBox("请输入一个年份")
  8.     MsgBox (years Mod 4 = 0 And years Mod 100 <> 0) Or (years Mod 400 = 0)
  9.    
  10. End Sub
复制代码

点评

msgbox可以提示再详细点,比如 if ... then msgbox years & "是闰年。" else...  发表于 2017-5-13 21:57
回复 支持 反对

使用道具 举报

发表于 2017-5-9 19:21:43 | 显示全部楼层
  1. '作业2 定义一个日期型变量为你的生日,用inputbox 语句输入生日
  2. '已经提示了做法,要求输出你出生之后已经生活了多少天了
  3. '要下面的结果,在作业2 后面完成
  4. ' "自从您出世以来已经过了 xxx 天了。"
  5. Sub 生日()
  6.     Dim 生日 As Date, today As Date, num As Long
  7.     生日 = CDate(InputBox("请输入你的生日"))
  8.     today = Date
  9.     num = today - 生日
  10.     MsgBox "自从您出世以来已经过了" & num & "天了。"
  11.    
  12. End Sub
复制代码

点评

正确  发表于 2017-5-13 21:58
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 入学

本版积分规则

关闭

站长推荐上一条 /2 下一条

快速回复 返回顶部 返回列表